सवाल Iptables, -एम राज्य और -m conntrack के बीच क्या अंतर है?


के बीच व्यावहारिक अंतर क्या है:

iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

तथा

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

कौन सा सबसे अच्छा उपयोग करने के लिए है?

धन्यवाद।


48
2018-02-10 22:56


मूल


ध्यान दें कि लिनक्स कर्नेल 3.7 और बाद में, राज्य को हटा दिया गया है। केवल conntrack उपलब्ध है। - Mr. X
मैं 3.10.0 चला रहा हूं और राज्य अभी भी समर्थित है ...
राज्य को कॉनट्रैक के पक्ष में बहिष्कृत किया जाता है, और यह आपके कर्नेल के निर्माण के तरीके के आधार पर संकलित या नहीं किया जा सकता है। - Michael Hampton♦


जवाब:


दोनों नीचे कर्नेल आंतरिक का उपयोग करते हैं (कनेक्शन ट्रैकिंग उपप्रणाली)।

Xt_conntrack.c का शीर्षलेख:

xt_conntrack - Netfilter module to match connection tracking
information. (Superset of Rusty's minimalistic state match.)

तो मैं कहूंगा - राज्य मॉड्यूल सरल है (और शायद कम त्रुटि प्रवण)। यह कर्नेल में भी लंबा है। दूसरी तरफ कनकट्रैक में अधिक विकल्प और विशेषताएं हैं [1]।

मेरी कॉल को कॉनट्रैक का उपयोग करना है यदि आपको इसकी विशेषताओं की आवश्यकता है, अन्यथा राज्य मॉड्यूल के साथ चिपके रहें।

नेटफिल्टर माइलिस्ट पर भी इसी तरह का सवाल।

[1] काफी उपयोगी "-एम conntrack --ctstate DNAT -j MASQUERADE" रूटिंग / डीएनएटी फिक्सअप ;-)


26
2018-02-11 00:29





उन दो नियमों के नतीजे में कोई अंतर नहीं है। कनेक्शन मिलान स्थिति से मेल खाने के लिए दोनों मिलान एक्सटेंशन समान डेटा का उपयोग करते हैं। राज्य "पुराना" मैच एक्सटेंशन है और कनट्रैक नया है और कनेक्शन ट्रैकिंग स्थिति से मेल खाने से कहीं अधिक विकल्प हैं।


8
2018-02-11 00:21





Iptables डॉक्टर

जैसा कि दस्तावेज कहता है:

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


1
2017-09-28 10:10



संदर्भ अब और काम नहीं कर रहा है - prosti