2008-09-19 4 views
94

मैं यह पता लगाने में सक्षम होना चाहता हूं कि एक विशेष प्रोग्राम किस पोर्ट का उपयोग कर रहा है। क्या कोई प्रोग्राम ऑनलाइन उपलब्ध है या जो विंडोज़ के साथ आता है जो मुझे बताएगा कि कौन सी प्रक्रियाएं मेरे कंप्यूटर पर कौन से बंदरगाहों का उपयोग कर रही हैं?क्या पोर्ट एक दिए गए प्रोग्राम का उपयोग कर रहा है?

पीएस - प्रोग्रामिंग प्रश्न न होने के कारण इसे डाउनमोड करने से पहले, मैं कुछ नेटवर्किंग कोड का परीक्षण करने के लिए प्रोग्राम की तलाश में हूं।

+6

भले ही आप इसे कुछ प्रोग्रामिंग प्रोजेक्ट के हिस्से के रूप में उपयोग करने जा रहे हों, यह प्रोग्रामिंग समस्या नहीं है। –

उत्तर

144

netstat -b -a उपयोग में बंदरगाहों की सूची देता है और आपको निष्पादन योग्य देता है जो प्रत्येक का उपयोग कर रहा है। मेरा मानना ​​है कि ऐसा करने के लिए आपको व्यवस्थापक समूह में होना चाहिए, और मुझे नहीं पता कि Vista पर सुरक्षा प्रभाव क्या हैं।

मैं आमतौर पर -n जोड़ता हूं और इसे थोड़ा तेज बनाने के लिए भी जोड़ता हूं, लेकिन -b जोड़कर यह काफी धीमा हो सकता है।

संपादित: यदि आप अधिक कार्यक्षमता की जरूरत है की तुलना में netstat, प्रदान करता है vasac suggests कि आप TCPView प्रयास करें।

+2

बिल्कुल सही, धन्यवाद! – AlexeyMK

+1

अगर किसी के पास कोई जवाब संपादित करने का अधिकार है, तो किसी भी व्यक्ति के लिए vasac का उत्तर नीचे (TCPView) जोड़ने पर विचार करें, जिसके लिए एक वास्तविक gui – AlexeyMK

+0

के साथ इसका अधिक फीचर-पूर्ण संस्करण की आवश्यकता है, मैंने अपने उत्तर में TCPView का लिंक जोड़ा। –

-1

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

0

कमांड लाइन पर, netstat -a आपको बहुत सारी जानकारी देगा।

+0

अगर मैं कोई वोट छोड़ देता तो मैं इसे वोट दूंगा। – UnkwnTech

+0

-1: -ए प्रक्रिया आईडी नहीं देता – CharlesB

+0

@ चार्ल्सबी यह करता है अगर आप '-o' विकल्प जोड़ते हैं। – EJP

2

विंडोज netstat उपयोगिता के साथ आता है, जो आपको वही करना चाहिए जो आप चाहते हैं।

0

आप इसके लिए 'netstat' कमांड का उपयोग कर सकते हैं। here इस तरह की चीज करने का विवरण है।

41

TCPView जो आपने पूछा है वह कर सकते हैं।

+1

धन्यवाद; netstat मेरी ज़रूरतों के लिए पर्याप्त से अधिक है, लेकिन अगर मुझे कभी और कट्टरपंथी की ज़रूरत है तो मैं टीसीपीवीव का उपयोग करना सुनिश्चित करूँगा। स्वीकार्य उत्तर में जोड़ा जाना चाहिए, लेकिन मुझे अभी तक संपादित करने का अधिकार नहीं है। – AlexeyMK

+0

मैं नेटस्टैट उपयोगिता का उपयोग कर रहा हूं जो एक्सएएमपीपी के साथ आता है। लेकिन यह स्टैंडअलोन उपयोगिता बहुत उपयोगी है। धन्यवाद। – Shiyaz

3

"netstat -natp" मैं हमेशा उपयोग करता हूं।

6

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

+0

एक और अच्छा विकल्प। वाह, यह नहीं पता था कि यह एक लोकप्रिय विषय था :) – AlexeyMK

10

आपके पास पहले से ही प्रोसेस एक्सप्लोरर (Sysinternals, अब माइक्रोसॉफ्ट का हिस्सा) स्थापित हो सकता है। यदि नहीं, तो आगे बढ़ें और इसे अभी इंस्टॉल करें - यह बस इतना अच्छा है।

प्रक्रिया एक्सप्लोरर में: प्रश्न में प्रक्रिया का पता लगाएं, राइट-क्लिक करें और टीसीपी/आईपी टैब का चयन करें। यह आपको प्रत्येक सॉकेट के लिए भी दिखाएगा, उस सॉकेट को खोलने वाले कोड का प्रतिनिधित्व करने वाला एक स्टैक ट्रेस।

22

Vista पर, आपको netstat के साथ -b विकल्प का उपयोग करने के लिए उन्नत विशेषाधिकारों की आवश्यकता है। इसके आस-पास पहुंचने के लिए, आप "netstat -ano" चला सकते हैं जो संबंधित प्रक्रिया आईडी के साथ सभी खुले बंदरगाहों को दिखाएगा। फिर आप कार्यसूची का उपयोग यह देखने के लिए कर सकते हैं कि किस प्रक्रिया में संबंधित आईडी है।

C:\>netstat -ano 

Active Connections 

    Proto Local Address   Foreign Address  State   PID 
    ... 
    TCP [::]:49335    [::]:0     LISTENING  1056 
    ... 

C:\>tasklist /fi "pid eq 1056" 

Image Name      PID Session Name  Session# Mem Usage 
========================= ======== ================ =========== ============ 
sqlservr.exe     1056 Services     0  66,192 K 
1

विंडोज 8 (और संभावित 7 + Vista) संसाधन मॉनिटर में भी एक दृश्य प्रदान करता है। यदि आप नेटवर्क टैब का चयन करते हैं, तो 'सुनना बंदरगाह' नामक एक अनुभाग होता है। पोर्ट नंबर द्वारा क्रमबद्ध कर सकते हैं, और देखें कि कौन सी प्रक्रिया इसका उपयोग कर रही है।

संबंधित मुद्दे