एक अन्य लेख में, हमने कंप्यूटर पोर्ट और उनके उपयोग की व्याख्या की। इसके अलावा, हम पोर्ट जानकारी के साथ क्या कर सकते हैं? चूंकि कंप्यूटर में आने और जाने वाला सभी ट्रैफिक पोर्ट के माध्यम से जाता है, हम यह देखने के लिए उन पर जांच कर सकते हैं कि वे क्या कर रहे हैं। शायद पोर्ट ट्रैफिक के लिए लिसन नहीं कर रहा है? शायद कोई ऐसी चीज पोर्ट का उपयोग कर रही है जो नहीं होनी चाहिए?
हम अपने लिसनिंग पोर्ट और PID (प्रोसेस ID) देखने के लिए विंडोज कमांड netstat का उपयोग करने जा रहे हैं। हम यह भी देखेंगे कि हम उस जानकारी के साथ क्या कर सकते हैं।
नेटस्टैट क्या है?
नेटस्टैट कमांड 'नेटवर्क' और 'स्टैटिस्टिक्स' शब्दों का संयोजन है। नेटस्टैट कमांड Windows XP से लेकर Windows 10 तक विंडोज के सभी संस्करणों में काम करता है। इसका उपयोग यूनिक्स और लिनक्स जैसे अन्य ऑपरेटिंग सिस्टम (OS) में भी किया जाता है, लेकिन हम यहां विंडोज पर ही ध्यान केंद्रित करेंगे।
नेटस्टैट हमें प्रदान कर सकता है:
- प्रोटोकॉल का नाम जो पोर्ट उपयोग कर रहा है (TCP या UDP)।
- लोकल IP एड्रेस और कंप्यूटर का नाम और उपयोग किया जा रहा पोर्ट नंबर।
- वह IP एड्रेस और पोर्ट नंबर जिससे हम कनेक्ट हो रहे हैं।
- TCP कनेक्शन की स्थिति। इन स्थितियों के विवरण के लिए, RFC 793 के इवेंट प्रोसेसिंग अनुभाग को पढ़ें।
लिसनिंग पोर्ट और PID देखने के लिए नेटस्टैट का उपयोग करना
- कुंजी संयोजन विन की + X का उपयोग करें। खुलने वाले मेनू में, कमांड प्रॉम्प्ट चुनें।
- कमांड
netstat -a -n -o
दर्ज करें। नेटस्टैट के पैरामीटर हाइफ़न से पहले होते हैं, न कि कई अन्य कमांड की तरह फॉरवर्ड स्लैश से। -a इसे सभी सक्रिय कनेक्शन और वे पोर्ट दिखाने के लिए कहता है जिन पर कंप्यूटर लिसन कर रहा है।
-n नेटस्टैट को IP एड्रेस और पोर्ट केवल संख्याओं के रूप में दिखाने के लिए कहता है। हम इसे नामों को हल करने की कोशिश नहीं करने के लिए कह रहे हैं। यह एक तेज और साफ प्रदर्शन बनाता है। -o नेटस्टैट को PID शामिल करने के लिए कहता है। हम बाद में PID का उपयोग यह पता लगाने के लिए करेंगे कि कौन सी प्रक्रिया एक विशिष्ट पोर्ट का उपयोग कर रही है।
- परिणाम देखें और एड्रेस, पोर्ट नंबर, स्थिति, और PID पर ध्यान दें। मान लीजिए हम जानना चाहते हैं कि पोर्ट 63240 का उपयोग क्या कर रहा है। ध्यान दें कि इसका PID 8552 है और यह IP एड्रेस 172.217.12.138 पर पोर्ट 443 से कनेक्ट हो रहा है।
उस पोर्ट का उपयोग क्या कर रहा है?
- टास्क मैनेजर खोलें। यह सबसे आसानी से कुंजी संयोजन Ctrl + Shift + Esc का उपयोग करके किया जाता है।
- विवरण टैब पर क्लिक करें। इसे ढूंढना आसान बनाने के लिए, PID कॉलम हेडर पर क्लिक करके PIDs को संख्यात्मक रूप से सॉर्ट करें।
- PID 8552 तक नीचे स्क्रॉल करें और देखें कि यह कौन सी प्रक्रिया है। इस मामले में, यह googledrivesync.exe है। लेकिन क्या यह वास्तव में है? कभी-कभी वायरस खुद को वैध प्रक्रियाओं जैसा दिखा सकते हैं।
- वेब ब्राउज़र में, ipinfo.io पर जाएं। IP एड्रेस 172.217.12.138 दर्ज करें। जैसा कि हम देख सकते हैं, IP एड्रेस गूगल के नाम पर पंजीकृत है। तो यह googledrivesync.exe एक वैध है।
पावरशेल में पोर्ट, PID, और प्रोसेस नाम कैसे प्राप्त करें
पावरशेल विंडोज के साथ कमांड-लाइन इंटरफेस का उपयोग करने का माइक्रोसॉफ्ट का नया तरीका है। हम कहते हैं नया, लेकिन यह कई संस्करणों से मौजूद है। आपको पावरशेल सीखना चाहिए भले ही आप एक घरेलू उपयोगकर्ता हों।
अधिकांश विंडोज कमांड पावरशेल में भी काम करते हैं, साथ ही हम उन्हें पावरशेल के cmdlets के साथ जोड़ सकते हैं - उच्चारित कमांड-लेट्स। Winteltools.com पर जोए इस विधि के लिए स्क्रिप्ट प्रदान करता है।
- नोटपैड खोलें और निम्न कोड दर्ज करें:
$netstat = netstat -aon | Select-String -pattern "(TCP|UDP)" $processList = Get-Process foreach ($result in $netstat) { $splitArray = $result -split " " $procID = $splitArray[$splitArray.length – 1] $processName = $processList | Where-Object {$_.id -eq $procID} | select processname $splitArray[$splitArray.length – 1] = $procID + " " + $processName.processname $splitArray -join " " }
- फ़ाइल को get-NetstatProcessName.ps1 के रूप में सहेजें। ध्यान दें कि यह कहां सहेजा जा रहा है। इस प्रकार सहेजें: को सभी फ़ाइलें (*.*) में बदलना महत्वपूर्ण है अन्यथा यह get-NetstatProcessName.ps1.txt के रूप में सहेजा जाएगा और हमारे लिए काम नहीं करेगा।
- पावरशेल खोलें और उस स्थान पर नेविगेट करें जहां स्क्रिप्ट सहेजी गई थी। इस मामले में, यह
cd C:\Scripts
है। कमांड चलाने के लिए Enter दबाएं।
- स्क्रिप्ट को डॉट-सोर्सिंग का उपयोग करके चलाएं ताकि यह काम करे। इसका मतलब है फ़ाइल के नाम से पहले ./ उपयोग करें। कमांड होगा
./get-NetstatProcessName.ps1
- अब हम पारंपरिक नेटस्टैट जानकारी के साथ प्रोसेस नाम देख सकते हैं। टास्क मैनेजर खोलने की आवश्यकता नहीं है।
उन्हें पकड़ो
हमने लिसनिंग पोर्ट देखने के लिए नेटस्टैट कमांड का उपयोग करने के दो तरीके कवर किए हैं। इसका उपयोग पुराने कमांड प्रॉम्प्ट या पावरशेल स्क्रिप्ट के भीतर किया जा सकता है। इसके द्वारा दी जा सकने वाली जानकारी के साथ, हमने देखा कि यह यह पता लगाने में हमारी कैसे मदद कर सकता है कि हमारा कंप्यूटर क्या कर रहा है।
अगर आपको लगा कि नेटस्टैट एक बेहतरीन यूटिलिटी है, तो ट्रेसर्ट, ipconfig, और nslookup जैसे कुछ अन्य विंडोज TCP/IP यूटिलिटीज पर एक नज़र डालें। या छिपी हुई वेबसाइट और इंटरनेट कनेक्शन में बेहतर देखने के लिए रिसोर्स मॉनिटर का उपयोग करें। आप यह देखने के लिए बहुत कुछ कर सकते हैं कि आपका कंप्यूटर वास्तव में क्या कर रहा है।
क्या आपने किसी समस्या को हल करने के लिए नेटस्टैट का उपयोग किया है? कृपया हमें बताएं कि आपने क्या किया। नेटस्टैट का उपयोग कैसे करें, इस बारे में कोई प्रश्न? कृपया नीचे कमेंट में हमसे पूछें।