Z jakiego portu korzysta dany program? [Zamknięte]

99

Chcę móc dowiedzieć się, jakiego portu używa określony program. Czy są jakieś programy dostępne online lub dostarczane z oknami, które informują mnie, które procesy używają jakich portów na moim komputerze?

PS - zanim zdegradujesz to, aby nie było to pytanie programistyczne, szukam programu do testowania kodu sieciowego.

AlexeyMK
źródło
7
Niezależnie od tego, czy zamierzasz używać tego jako części jakiegoś projektu programistycznego, nie jest to problem programistyczny.
Wyścigi lekkości na orbicie

Odpowiedzi:

149

netstat -b -awyświetla listę używanych portów i podaje plik wykonywalny, który używa każdego z nich. Uważam, że aby to zrobić, musisz być w grupie administratorów i nie wiem, jakie implikacje dla bezpieczeństwa są związane z Vistą.

Zwykle też dodaję, -nżeby trochę przyspieszyć, ale dodawanie -bmoże spowolnić.

Edycja : Jeśli potrzebujesz większej funkcjonalności niż zapewnia netstat, vasac sugeruje wypróbowanie TCPView .

Graeme Perrow
źródło
1
Jeśli ktokolwiek ma prawa do edycji odpowiedzi, rozważ dodanie odpowiedzi vasaca poniżej (TCPView) dla każdego, kto potrzebuje bardziej funkcjonalnej wersji z prawdziwym GUI
AlexeyMK
Dodałem link do TCPView do mojej odpowiedzi.
Graeme Perrow,
1
czy jest jakiś sposób z firewallem?
Mohammad Kermani,
42

TCPView może zrobić to, o co prosiłeś.

vasac
źródło
1
Dziękuję Ci; netstat jest więcej niż wystarczający dla moich potrzeb, ale jeśli kiedykolwiek będę potrzebował czegoś bardziej hardkorowego, na pewno użyję TCPView. Powinien zostać dodany do zaakceptowanej odpowiedzi, ale niestety nie mam jeszcze prawa do edycji.
AlexeyMK,
Używałem narzędzia Netstat, które jest dostarczane z XAMPP. Ale to samodzielne narzędzie jest bardzo przydatne. Dzięki.
Shiyaz
25

W systemie Vista potrzebujesz podwyższonych uprawnień, aby używać opcji -b z netstat. Aby obejść ten problem, możesz uruchomić "netstat -ano", który pokaże wszystkie otwarte porty wraz z powiązanym identyfikatorem procesu. Następnie możesz użyć listy zadań, aby sprawdzić, który proces ma odpowiedni identyfikator.

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
Jim Olsen
źródło
13

Być może masz już zainstalowany Process Explorer (od Sysinternals, obecnie część firmy Microsoft). Jeśli nie, śmiało zainstaluj go teraz - jest po prostu fajny.

W Process Explorer: zlokalizuj dany proces, kliknij prawym przyciskiem myszy i wybierz kartę TCP / IP. Pokaże nawet, dla każdego gniazda, ślad stosu reprezentujący kod, który otworzył to gniazdo.

Adam Mitz
źródło
7

Jeśli wolisz interfejs GUI, CurrPorts jest darmowy i działa ze wszystkimi wersjami systemu Windows. Pokazuje porty i proces, który je otworzył.

ctcherry
źródło
kolejna dobra alternatywa. wow, nie wiedziałem, że to taki popularny temat :)
AlexeyMK
5

Zawsze używam "netstat -natp".

Steve Baker
źródło
4

Windows 8 (i prawdopodobnie 7 + Vista) również zapewniają widok w Monitorze zasobów. Jeśli wybierzesz kartę Sieć, pojawi się sekcja o nazwie „Listening Ports”. Można sortować według numeru portu i sprawdzać, który proces go używa.

Mikezx6r
źródło
dokładnie to, czego potrzebowałem, 10x!
soninob
3

Windows jest dostarczany z netstatnarzędziem, które powinno robić dokładnie to, co chcesz.

Adam Rosenfield
źródło
1

W wierszu poleceń polecenie netstat -a poda wiele informacji.

CodeRot
źródło
Głosowałbym za tym, gdybym miał jeszcze jakieś głosy.
UnkwnTech,
-1: -a nie podaje identyfikatora procesu
CharlesB
@CharlesB Dzieje się, jeśli dodasz -oopcję.
Markiz Lorne
1

Możesz użyć do tego polecenia „netstat”. Jest opis robi tego typu rzeczy tutaj .

tkerwin
źródło
-1

większość przyzwoitych zapór sieciowych powinna umożliwiać dostęp do tych informacji. Wiem, że tak działa Agnitum OutpostPro Firewall.

Toby Mills
źródło