एलएफसीए: बुनियादी नेटवर्क समस्या निवारण युक्तियाँ सीखें - भाग 12


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

नेटवर्क समस्या निवारण की मौलिक समझ

ज्यादातर मामलों में, नेटवर्क व्यवस्थापक और sysadmins के बीच एक व्यापक अंतर है। नेटवर्क दृश्यता की कमी वाले Sysadmins आमतौर पर आउटेज और डाउनटाइम के लिए नेटवर्क व्यवस्थापकों को दोषी ठहराते हैं, जबकि नेटवर्क व्यवस्थापक अपर्याप्त सर्वर ज्ञान अक्सर एंडपॉइंट डिवाइस विफलता के लिए sysadmins के दोष को बदल देंगे। हालाँकि, दोष का खेल समस्याओं को हल करने में मदद नहीं करता है और काम के माहौल में, यह सहकर्मियों के बीच संबंधों को विरोध कर सकता है।

एक sysadmin के रूप में, नेटवर्क समस्या निवारण की मूलभूत समझ होने से समस्याओं को तेज़ी से हल करने में मदद मिलेगी और एक सामंजस्यपूर्ण कार्य वातावरण को बढ़ावा देने में मदद मिलेगी। यही कारण है कि हमने कुछ बुनियादी नेटवर्क समस्या निवारण युक्तियों को उजागर करने के लिए इस अनुभाग को एक साथ रखा है जो नेटवर्क से संबंधित समस्याओं का निदान करते समय काम आएगा।

टीसीपी/आईपी वैचारिक मॉडल के हमारे पिछले विषय में, जो कंप्यूटर में डेटा के संचरण और प्रत्येक परत में पाए जाने वाले प्रोटोकॉल को दर्शाता है।

एक और समान रूप से महत्वपूर्ण वैचारिक मॉडल ओएसआई मॉडल (ओपन सिस्टम इंटरकनेक्शन) मॉडल है। यह एक 7 परत टीसीपी/आईपी ढांचा है जो एक नेटवर्किंग सिस्टम को तोड़ता है, और कंप्यूटिंग हर परत के रूप में कार्य करता है।

ओएसआई मॉडल में, इन कार्यों को नीचे से शुरू करके निम्नलिखित परतों में विभाजित किया जाता है। भौतिक परत, डेटा लिंक परत, नेटवर्क परत, परिवहन परत, सत्र परत। प्रेजेंटेशन लेयर, और अंत में सबसे ऊपर एप्लीकेशन लेयर।

OSI मॉडल का संदर्भ दिए बिना नेटवर्क समस्या निवारण के बारे में बात करना असंभव है। इस कारण से, हम आपको प्रत्येक परत के माध्यम से चलेंगे और विभिन्न नेटवर्क प्रोटोकॉल का उपयोग करेंगे और प्रत्येक परत से जुड़े दोषों का निवारण कैसे करेंगे।

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

  • अनप्लग्ड नेटवर्क/ईथरनेट केबल
  • क्षतिग्रस्त नेटवर्क/ईथरनेट केबल
  • गायब या क्षतिग्रस्त नेटवर्क कार्ड

इस परत में, मन में आने वाले प्रश्न हैं:

  • “क्या नेटवर्क केबल प्लग इन है?”
  • “क्या भौतिक नेटवर्क लिंक अप है?”
  • “क्या आपके पास IP पता है?”
  • “क्या आप अपना डिफ़ॉल्ट गेटवे IP पिंग कर सकते हैं?”
  • “क्या आप अपने DNS सर्वर को पिंग कर सकते हैं?”

अपने नेटवर्क इंटरफेस की स्थिति की जांच करने के लिए, आईपी कमांड चलाएँ:

$ ip link show

उपरोक्त आउटपुट से, हमारे पास 2 इंटरफेस हैं। पहला इंटरफ़ेस - lo - लूपबैक पता है और आमतौर पर इसका उपयोग नहीं किया जाता है। सक्रिय नेटवर्क इंटरफ़ेस जो नेटवर्क और इंटरनेट को कनेक्टिविटी प्रदान करता है वह enp0s3 इंटरफ़ेस है। हम आउटपुट से देख सकते हैं कि इंटरफ़ेस की स्थिति यूपी है।

यदि कोई नेटवर्क इंटरफ़ेस डाउन है, तो आपको स्थिति DOWN आउटपुट दिखाई देगी।

यदि ऐसा है, तो आप कमांड का उपयोग करके इंटरफ़ेस को ऊपर ला सकते हैं:

$ sudo ip link set enp0s3 up

वैकल्पिक रूप से, आप नीचे दिखाए गए ifconfig कमांड को चला सकते हैं।

$ sudo ifconfig enp0s3 up
$ ip link show

बस यह पुष्टि करने के लिए कि आपके पीसी ने राउटर या डीएचसीपी सर्वर से एक आईपी पता चुना है, ifconfig कमांड चलाएँ।

$ ifconfig

जैसा कि दिखाया गया है, IPv4 पता inet पैरामीटर द्वारा प्रीफ़िक्स किया गया है। उदाहरण के लिए, 255.255.255.0 के सबनेट या नेटमास्क के साथ इस सिस्टम का IP पता 192.168.2.104 है।

$ ifconfig

वैकल्पिक रूप से, आप अपने सिस्टम के आईपी पते की जांच के लिए आईपी एड्रेस कमांड को निम्नानुसार चला सकते हैं।

$ ip address

डिफ़ॉल्ट गेटवे के IP पते की जाँच करने के लिए, कमांड चलाएँ:

$ ip route | grep default

डिफ़ॉल्ट गेटवे का आईपी पता, जो ज्यादातर मामलों में डीएचसीपी सर्वर या राउटर होता है, जैसा कि नीचे दिखाया गया है। एक आईपी नेटवर्क में, आपको डिफ़ॉल्ट गेटवे को पिंग करने में सक्षम होना चाहिए।

आपके द्वारा उपयोग किए जा रहे DNS सर्वरों की जाँच करने के लिए, systemd सिस्टम पर निम्न कमांड चलाएँ।

$ systemd-resolve --status

उपयोग में आने वाले DNS सर्वरों की जांच करने का एक बेहतर तरीका दिखाया गया nmcli कमांड चलाना है

$ ( nmcli dev list || nmcli dev show ) 2>/dev/null | grep DNS

जैसा कि आपने देखा है, नेटवर्क समस्या निवारण का काफी बड़ा हिस्सा यहां होता है।

अनिवार्य रूप से, डेटा लिंक परत नेटवर्क पर डेटा स्वरूप निर्धारित करती है। यह वह जगह है जहां मेजबानों के बीच डेटा फ्रेम का संचार होता है। इस परत में प्रमुख प्रोटोकॉल एआरपी (पता समाधान प्रोटोकॉल) है।

ARP लिंक-लेयर एड्रेस की खोज के लिए जिम्मेदार है और लेयर 3 से MAC एड्रेस पर IPv4 एड्रेस की मैपिंग करता है। आमतौर पर, जब कोई होस्ट डिफ़ॉल्ट गेटवे से संपर्क करता है, तो संभावना है कि उसके पास पहले से ही होस्ट का आईपी है, लेकिन मैक पते नहीं हैं।

एआरपी प्रोटोकॉल परत 3 और परत 2 के बीच की खाई को पाटता है 32-बिट आईपीवी 4 पतों को परत 3 पर 48-बिट मैक पते पर परत 2 और इसके विपरीत अनुवाद करके।

जब कोई पीसी लैन नेटवर्क से जुड़ता है, तो राउटर (डिफ़ॉल्ट गेटवे) इसे पहचान के लिए एक आईपी पता प्रदान करता है। जब कोई अन्य होस्ट पीसी के लिए नियत डेटा पैकेट को डिफ़ॉल्ट गेटवे पर भेजता है, तो राउटर एआरपी से आईपी पते के साथ जाने वाले मैक पते की तलाश करने का अनुरोध करता है।

प्रत्येक प्रणाली की अपनी एआरपी तालिका होती है। अपनी ARP तालिका की जाँच करने के लिए, कमांड चलाएँ:

$ ip neighbor show

जैसा कि आप देख सकते हैं, राउटर का मैक पता भर गया है। यदि कोई समाधान समस्या है, तो आदेश कोई आउटपुट नहीं देता है।

यह वह परत है जिस पर आप विशेष रूप से IPv4 पतों के साथ काम करते हैं जो सिस्टम प्रशासकों से परिचित हैं। यह ICMP और ARP जैसे कई प्रोटोकॉल प्रदान करता है जिन्हें हमने कवर किया है और अन्य जैसे RIP (रूटिंग इंफॉर्मेशन प्रोटोकॉल)।

कुछ सामान्य समस्याओं में डिवाइस गलत कॉन्फ़िगरेशन या राउटर और स्विच जैसे नेटवर्क डिवाइस के साथ समस्याएं शामिल हैं। समस्या निवारण शुरू करने के लिए एक अच्छी जगह यह जांचना है कि क्या आपके सिस्टम ने निम्न प्रकार से एक आईपी पता चुना है:

$ ifconfig

इसके अलावा, आप Google के DNS को ICMP इको पैकेट भेजकर इंटरनेट कनेक्टिविटी की जांच के लिए पिंग कमांड का उपयोग कर सकते हैं। -c ध्वज भेजे जा रहे पैकेटों की संख्या को दर्शाता है।

$ ping 8.8.8.8 -c 4

आउटपुट शून्य पैकेट हानि के साथ Google के DNS से सकारात्मक उत्तर दिखाता है। यदि आपके पास एक आंतरायिक कनेक्शन है, तो आप निम्नानुसार जांच सकते हैं कि ट्रेसरआउट कमांड का उपयोग करके पैकेट किस बिंदु पर गिराए जा रहे हैं।

$ traceroute google.com

तारांकन उस बिंदु को इंगित करते हैं जिस पर पैकेट गिराए जा रहे हैं या खो गए हैं।

nslookup कमांड डोमेन या होस्टनाम से जुड़े आईपी एड्रेस को प्राप्त करने के लिए डीएनएस से पूछताछ करता है। इसे फॉरवर्ड डीएनएस लुकअप कहा जाता है।

उदाहरण के लिए।

$ nslookup google.com

आदेश google.com डोमेन से जुड़े आईपी पते को प्रकट करता है।

Server:		127.0.0.53
Address:	127.0.0.53#53

Non-authoritative answer:
Name:	google.com
Address: 142.250.192.14
Name:	google.com
Address: 2404:6800:4009:828::200e

डिग कमांड एक अन्य कमांड है जिसका उपयोग डोमेन नाम से जुड़े डीएनएस सर्वर को क्वेरी करने के लिए किया जाता है। उदाहरण के लिए, DNS नेमसर्वर चलाने के लिए क्वेरी करने के लिए:

$ dig google.com

ट्रांसपोर्ट लेयर TCP और UDP प्रोटोकॉल का उपयोग करके डेटा ट्रांसमिशन को हैंडल करता है। संक्षेप में, टीसीपी एक कनेक्शन-उन्मुख प्रोटोकॉल है जबकि यूडीपी कनेक्शन रहित है। रनिंग एप्लिकेशन सॉकेट्स पर सुनता है जिसमें पोर्ट और आईपी एड्रेस शामिल होते हैं।

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

$ sudo netstat -pnltu | grep 80
OR
$ ss -pnltu | grep 80

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

यदि आपको अभी भी समस्या हो रही है, तो फ़ायरवॉल की जाँच करें और सत्यापित करें कि जिस पोर्ट में आप रुचि रखते हैं वह अवरुद्ध है या नहीं।

अधिकांश समस्या निवारण इन 4 परतों में होगा। सत्र, प्रस्तुतिकरण और अनुप्रयोग परतों में बहुत कम समस्या निवारण किया जाता है। ऐसा इसलिए है क्योंकि वे एक नेटवर्क के कामकाज में कम सक्रिय भूमिका निभाते हैं। हालाँकि, आइए जल्दी से उन परतों में क्या होता है, इसका अवलोकन करें।

सत्र परत संचार चैनलों को सत्र के रूप में संदर्भित करती है और यह सुनिश्चित करती है कि वे डेटा संचरण के दौरान खुले रहें। संचार समाप्त होने के बाद यह भी बंद हो जाता है।

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

अंत में, हमारे पास एप्लिकेशन लेयर है जो एंड-यूजर्स के सबसे करीब है और उन्हें एप्लिकेशन सॉफ्टवेयर के साथ इंटरैक्ट करने की अनुमति देता है। एप्लिकेशन परत HTTP, HTTPS, POP3, IMAP, DNS, RDP, SSH, SNMP और NTP जैसे प्रोटोकॉल से समृद्ध है।

लिनक्स सिस्टम का समस्या निवारण करते समय, OSI मॉडल का उपयोग करने वाले स्तरित दृष्टिकोण की अत्यधिक अनुशंसा की जाती है, जो नीचे की परत से शुरू होता है। यह आपको इस बात की जानकारी देता है कि क्या गलत हो रहा है और आपको समस्या को कम करने में मदद करता है।