Iptables में mangle टेबल क्या है?


28

मैं अपने Ubuntu सर्वर में पैकेट को फ़िल्टर और हेरफेर करने के लिए iptable नियमों का उपयोग कर रहा हूं। लेकिन मैं mangle टेबल को नहीं समझ सकता।

इस iptables ट्यूटोरियल से उद्धरण :

यह तालिका हमें पहले से ही मेनटेनिंग पैकेट के लिए मुख्य रूप से उपयोग में लाई जानी चाहिए। दूसरे शब्दों में, आप स्वतंत्र रूप से मैंग्ल मैचों आदि का उपयोग कर सकते हैं जिनका उपयोग टीओएस (सेवा का प्रकार) फ़ील्ड को बदलने के लिए किया जा सकता है और इसी तरह।

आपको दृढ़ता से सलाह दी जाती है कि किसी भी फ़िल्टरिंग के लिए इस तालिका का उपयोग न करें; न ही इस तालिका में कोई डीएनएटी, एसएनएटी या मास्केरडिंग काम करेगा।

क्या कोई भी मेरे लिए टेबल का वर्णन कर सकता है, और यह समझने के लिए कुछ उदाहरण प्रदान कर सकता है कि मुझे इसका उपयोग कब करना चाहिए?


6
iptables(8)आदमी पृष्ठ जानकारी आप चाहते हैं, वध करना तालिका उपयोग के कई अच्छा उदाहरण सहित के सभी है।
माइकल हैम्पटन

जवाबों:


23

अन्य अच्छे उत्तरों के अलावा, मुझे हाल ही में PPPoE, PPP और ATM के माध्यम से लाए जा रहे ट्रैफ़िक के कारण MTU (अधिकतम संचरण इकाई) विसंगतियों के लिए समायोजित करने के लिए मैंग टेबल का उपयोग करना पड़ा, जिनमें से प्रत्येक ओवरहेड को जोड़ता है जो आईपी के लिए उपलब्ध पेलोड को कम करता है एक ईथरनेट फ्रेम के सामान्य 1500 बाइट्स से।

पाइप के प्रत्येक छोर पर सिस्टम, जैसा कि सामान्य है, 1500 के नियमित डिफ़ॉल्ट पर उनका MTU होगा और इसलिए वे IP फ़्रेम को भेजने की कोशिश करेंगे। चूंकि उपलब्ध वास्तविक पेलोड का आकार छोटा था, इसलिए इससे पैकेट विखंडन का कारण होता, सिवाय इसके कि अक्सर प्रेषक अनुरोध करेगा कि पैकेट खंडित न हों, और जैसे वे अंत में पूरी तरह से गिर जाते हैं।

एक आदर्श दुनिया में, पथ एमटीयू की खोज ने एंडपॉइंट को अपने एमटीयू को आवश्यकतानुसार समायोजित करने की अनुमति दी होगी, लेकिन यह खोज आईसीएमपी पर निर्भर करती है, और सुरक्षा कारणों से आईसीएमपी को छोड़ने के लिए मेरे नियंत्रण के बाहर नेटवर्क अक्सर कॉन्फ़िगर किए गए थे।

ट्रांसपोर्ट लेयर पर अधिकतम सेगमेंट साइज़ को कम करने के लिए TCP SYN पैकेट्स को संशोधित करने के लिए मेरे राउटर में पैकेट मैनबलिंग का उपयोग करना एकमात्र विकल्प था:

iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1452

इस तरह की बात गड़बड़ है और आदर्श रूप से बचा जाना चाहिए, लेकिन मेरे पास कोई अन्य विकल्प नहीं था और इससे समस्या हल हो गई।

आशा है कि ये उदाहरण मदद करते हैं, साथ ही मैन पेज भी।


23

मुझे हाल ही में यहां एक अच्छी व्याख्या मिली । यह मूल रूप से आईपी पैकेट के लिए विशिष्ट हेडर सेट करने के लिए उपयोग किया जाता है ताकि आगे के रूटिंग निर्णय को प्रभावित किया जा सके। यदि कोई हो, टीटीएल विकल्प शायद सबसे दिलचस्प है:

TTL लक्ष्य का उपयोग पैकेट के TTL (Time To Live) क्षेत्र को बदलने के लिए किया जाता है। हम पैकेट को केवल एक विशिष्ट टीटीएल वगैरह बता सकते हैं। इसका एक अच्छा कारण यह हो सकता है कि हम अपने आप को इंटरनेट सर्विस प्रोवाइडर्स को ख़त्म नहीं करना चाहते। कुछ इंटरनेट सेवा प्रदाता एक एकल कनेक्शन पर कई कंप्यूटर चलाने वाले उपयोगकर्ताओं को पसंद नहीं करते हैं, और कुछ इंटरनेट सेवा प्रदाता ऐसे हैं जो एक एकल होस्ट के लिए अलग-अलग टीटीएल मान उत्पन्न करने के लिए जाने जाते हैं, और इसे एक से जुड़े कई कंप्यूटरों के कई संकेतों में से एक के रूप में लेते हैं। कनेक्शन।

अन्य लक्ष्य हैं TOS, MARK, SECMARK, CONNSECMARK


4
विभिन्न मार्गों को पैकेट वितरित करने के लिए पैकेट के अंकन या डेटा लोड वितरण में संभाल के लिए Mangle का उपयोग QOS में भी किया जाता है।
टॉमटॉम

8

एक iptables noob के रूप में, मैं कहूंगा: mangle टेबल पैकेट के हेडर में कुछ विशेष प्रविष्टियों को संशोधित करने की अनुमति देता है। (जैसे: सेवा का प्रकार, टाइम टू लाइव) (यह विशेष अंक और सुरक्षा संदर्भ चिह्न सेट करने की भी अनुमति देता है)


2

एक अच्छा गहरा गोता है लेकिन यहाँ iptables पर ट्यूटोरियल समझना बहुत मुश्किल नहीं है

मैनले टेबल का उपयोग पैकेट के आईपी हेडर को विभिन्न तरीकों से बदलने के लिए किया जाता है। उदाहरण के लिए, आप एक पैकेट के टीटीएल (टाइम टू लाइव) मूल्य को समायोजित कर सकते हैं, या तो पैकेट को बनाए रखने वाले मान्य नेटवर्क हॉप्स की संख्या को छोटा या छोटा कर सकते हैं। अन्य आईपी हेडर को इसी तरह से बदला जा सकता है।

यह तालिका पैकेट पर एक आंतरिक कर्नेल "निशान" को अन्य तालिकाओं में और अन्य नेटवर्किंग उपकरणों द्वारा आगे की प्रक्रिया के लिए भी रख सकती है। यह चिह्न वास्तविक पैकेट को नहीं छूता है, लेकिन पैकेट के कर्नेल के प्रतिनिधित्व के निशान को जोड़ता है।

मेरी बहुत मदद की, क्योंकि यह भी स्पष्ट रूप से बताता है कि कैसे सभी भाग एक साथ फिट होते हैं और एक दूसरे के साथ हस्तक्षेप करते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.