2008-09-19 29 views
94

Ich möchte in der Lage sein herauszufinden, welchen Port ein bestimmtes Programm verwendet. Gibt es Programme online oder mit Fenstern, die mir sagen, welche Prozesse welche Ports auf meinem Computer verwenden?Welcher Port benutzt ein bestimmtes Programm?

PS - Bevor Sie downmod dies für nicht eine Programmierfrage, suche ich nach dem Programm, um einige Netzwerk-Code zu testen.

+6

Unabhängig davon, ob Sie dies als Teil eines Programmierprojekts verwenden, ist es kein Programmierproblem. –

Antwort

144

netstat -b -a listet die verwendeten Ports auf und gibt Ihnen die ausführbare Datei, die jede verwendet. Ich glaube, Sie müssen in der Administratorgruppe sein, um dies zu tun, und ich weiß nicht, welche Sicherheitsimplikationen es auf Vista gibt.

Normalerweise füge ich -n hinzu, um es ein wenig schneller zu machen, aber das Hinzufügen -b kann es ziemlich langsam machen.

bearbeiten: Wenn Sie mehr Funktionalität benötigen als netstat bietet, vasac suggests, die Sie TCPView versuchen.

+2

Perfekt, danke! – AlexeyMK

+1

Wenn jemand die Rechte hat, um eine Antwort zu bearbeiten, können Sie in Erwägung ziehen Vasacs Antwort unten (TCPView) für jeden, der eine mehr Feature-Vollversion von diesem mit einem echten GUI – AlexeyMK

+0

Ich habe den Link zu TCPView zu meiner Antwort hinzugefügt. –

-1

Die meisten anständigen Firewall-Programme sollten es Ihnen ermöglichen, auf diese Informationen zuzugreifen. Ich weiß, dass die Agnitum OutpostPro Firewall dies tut.

0

In einer Befehlszeile wird netstat -a Ihnen viele Informationen geben.

+0

Ich würde das abstimmen, wenn ich noch Stimmen hätte. – UnkwnTech

+0

-1: -a gibt keine Prozess-ID – CharlesB

+0

@CharlesB Es tut, wenn Sie die Option "-o" hinzufügen. – EJP

2

Windows kommt mit dem netstat Dienstprogramm, das genau das tun sollte, was Sie wollen.

0

Sie können hierfür den Befehl 'netstat' verwenden. Es gibt eine Beschreibung, wie man so etwas macht here.

41

TCPView kann tun, was Sie gefragt haben.

+1

Danke; netstat ist mehr als genug für meine Bedürfnisse, aber wenn ich jemals etwas mehr hardcore brauche, werde ich sicher TCPView verwenden. Sollte der angenommenen Antwort hinzugefügt werden, aber leider habe ich nicht das Recht, noch zu bearbeiten. – AlexeyMK

+0

Ich habe das Netstat-Dienstprogramm verwendet, das mit XAMPP geliefert wird. Aber dieses eigenständige Dienstprogramm ist sehr nützlich. Vielen Dank. – Shiyaz

3

"netstat -natp" ist was ich immer benutze.

6

Wenn Sie eine GUI-Schnittstelle bevorzugen CurrPorts ist kostenlos und funktioniert mit allen Versionen von Windows. Zeigt Ports an und welcher Prozess hat sie geöffnet.

+0

eine weitere gute Alternative. Wow, wusste nicht, das war so ein beliebtes Thema :) – AlexeyMK

10

Möglicherweise haben Sie bereits Process Explorer (von Sysinternals, jetzt Teil von Microsoft) installiert. Wenn nicht, dann mach es jetzt - es ist einfach so cool.

In Process Explorer: Suchen Sie den fraglichen Prozess, klicken Sie mit der rechten Maustaste und wählen Sie die Registerkarte TCP/IP. Es zeigt Ihnen für jeden Socket sogar einen Stack-Trace, der den Code darstellt, der diesen Socket geöffnet hat.

22

Unter Vista benötigen Sie erhöhte Rechte, um die Option -b mit netstat zu verwenden. Um das zu umgehen, könnten Sie "netstat -ano" ausführen, das alle offenen Ports zusammen mit der zugehörigen Prozess-ID anzeigt. Sie könnten dann mit tasklist nachsehen, welcher Prozess die entsprechende ID hat.

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

Windows 8 (und wahrscheinlich 7 + Vista) bieten auch eine Ansicht im Ressourcenmonitor. Wenn Sie die Registerkarte "Netzwerk" auswählen, gibt es einen Abschnitt mit dem Namen "Listening Ports". Kann nach Portnummer sortieren und sehen, welcher Prozess es verwendet.

Verwandte Themen