'Ifconfig' और 'ip' कमांड के बीच अंतर


19

मैंने 'ifconfig' कमांड पर कुछ लेख / ट्यूटोरियल पढ़े, उनमें से अधिकांश में एक सामान्य विवरण शामिल था -

"ifconfig को ip कमांड द्वारा दर्शाया गया है"

और आईपी कमांड सीखने का सुझाव दिया। लेकिन उनमें से किसी ने भी यह नहीं बताया कि 'ifconfig' की तुलना में 'ip' कमांड कैसे अधिक शक्तिशाली है।

दोनों में क्या अंतर है?



जवाबों:


21

ifconfigसे है net-tools, जो लिनक्स नेटवर्क स्टैक के साथ लंबे समय तक पूरी तरह से रखने में सक्षम नहीं है। यह अभी भी ioctlनेटवर्क कॉन्फ़िगरेशन के लिए उपयोग करता है, जो कर्नेल के साथ बातचीत करने का एक बदसूरत और कम शक्तिशाली तरीका है।

लिनक्स नेटवर्किंग कोड में बहुत सारे बदलाव, और net-toolsमल्टीप्ल राउटिंग, पॉलिसी रूटिंग (आरपीडीबी देखें) का उपयोग करके बहुत सी नई सुविधाएँ सुलभ नहीं हैं । routeआपको एक ही मैट्रिक के साथ एक ही गंतव्य के लिए कई मार्गों को जोड़ने जैसी बेवकूफ चीजें करने की अनुमति देता है।

इसके अतिरिक्त:

  • ifconfig कुछ उपकरणों के लिए उचित हार्डवेयर पते की रिपोर्ट नहीं करता है।
  • आप कॉन्फ़िगर नहीं कर सकता ipip, sit, gre, l2tp, आदि में गिरी स्थिर सुरंगों।
  • आप उपकरण tunया tapउपकरण नहीं बना सकते ।
  • किसी दिए गए इंटरफ़ेस में कई पते जोड़ने का तरीका भी खराब शब्दार्थ है।
  • आप net-toolsया तो उपयोग कर लिनक्स ट्रैफिक कंट्रोल सिस्टम को कॉन्फ़िगर नहीं कर सकते ।

यह भी देखें ifconfigबेकार है

संपादित करें : net-toolsविकास को रोकने के बारे में जोर देकर कहा कि अब तक मैं भूल गया था कि मुझे इस पद के लिए कहां मिला है। रिलीज net-toolsहोने के बाद से इस पर काम iproute2किया जा रहा है, हालांकि यह ज्यादातर बग फिक्सिंग और अंतर्राष्ट्रीयकरण की तरह मामूली वृद्धि और विशेषताएं है।


NET-3 नेट-टूल्स ही नहीं है ifconfig। उदाहरण के लिए, GNU इनट्यूटिल्स में एक अलग है। और वह सब कुछ नहीं है। unix.stackexchange.com/a/504084/5132
JdeBP

7

ifconfigनेटवर्क इंटरफेस के बारे में जानकारी प्रदर्शित करने और कुछ सेटिंग्स को बदलने के लिए एक पारंपरिक कमांड है। विशेष रूप से, यह इंटरफेस को ऊपर और नीचे ला सकता है। यह अधिकांश यूनिक्स वेरिएंट पर मौजूद है।

लिनक्स पर, ifconfigकमांड लंबे समय में विकसित नहीं हुई है। यह अभी भी पूरी तरह से ठीक है कि यह क्या करता है। यदि आप ifconfigकिसी चीज़ के लिए उपयोग कर रहे हैं , तो रोकने का कोई कारण नहीं है।

लिनक्स iproute2 टूल सूट ipसे कमांड भी प्रदान करता है । आदेश कई शास्त्रीय आदेश और अधिक सहित, को जोड़ती है , और । से बहुत अधिक कर सकते हैं । दूसरी ओर, हमेशा मौजूद नहीं होता है, विशेष रूप से एम्बेडेड सिस्टम पर (और लिनक्स के अलावा यूनिक्स संस्करण पर कभी नहीं)।ipifconfigroutearpipifconfigip

पार्सिंग ifconfigका आउटपुट थोसा बेकार है। पार्सिंग ipका आउटपुट थोसा बेकार है। वहां कोई विजेता नहीं।


मैंने हमेशा सोचा है कि पार्सिंग ipका आउटपुट काफी सरल होना चाहिए, और निश्चित रूप से एक बहुत सरल की एक बिल्ली की तुलना में ifconfig। मुझे यह भी पसंद है कि कई मामलों में एक ipकमांड के आउटपुट का उपयोग किसी अन्य ipकमांड के इनपुट के रूप में कम या बिना किसी संशोधन के किया ip route showजा सकता है (उदाहरण के लिए, हर लाइन का उपयोग तर्कों के रूप में किया जा सकता है ip route add)।
पैट्रिक

1
@ पैट्रिक पार्सिंग ip route, और ip ruleआउटपुट बहुत स्पष्ट है और पार्स करने के लिए बहुत आसान है। लेकिन ip link, या ip addrएक दर्द है। मैं वास्तव में चाहता हूं कि कोई व्यक्ति एक ऐसे पैच या किसी चीज़ को ip addrप्रिंट आउट स्टेटमेंट बनाने के लिए प्रस्तुत करे , शायद एक स्विच के साथ, कि आप वर्तमान कॉन्फ़िगरेशन को सेटअप करें, जैसे आप प्राप्त करते हैं ip route show
Zoredache

5

बस पाइलोना द्वारा उत्तर में कुछ बिट्स जोड़ने के लिए। 2005 के आसपास नेटवर्क स्टैक को नियंत्रित करने के लिए एक नया तंत्र पेश किया गया था - नेटलिंक सॉकेट्स

नेटवर्क इंटरफ़ेस को कॉन्फ़िगर iproute2करने के लिए उस पूर्ण-द्वैध नेटलिंक सॉकेट तंत्र का उपयोग ifconfigकरता है , जबकि एक ioctlसिस्टम कॉल पर निर्भर करता है । नेटलिंक के पीछे प्रेरणा और rtnetlink के उपयोग पर 2 मुख्य पेपर हैं ।

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