Narzędzie Windows, aby dowiedzieć się, którego portu próbuje użyć aplikacja?

12

Zgaduję, że netstat pokazuje aplikacje i ich porty, które już mają połączenie i nie pokazuje lub nie może pokazać aplikacji, która próbuje otworzyć połączenie.

Jeśli mam aplikację, która próbuje się połączyć z siecią, ale jest zablokowana przez zaporę, to skąd mam wiedzieć, z którego portu próbuje korzystać?

Tony_Henrich
źródło
Dla jakiego systemu operacyjnego?
Chris W. Rea,
Przepraszamy .. dla Windows
Tony_Henrich

Odpowiedzi:

12

Możesz użyć TCPView z Microsoft / Sysinternals.

TCPView

Jeśli trudno ci uchwycić otwarcie portu za pomocą tego narzędzia, najlepszym rozwiązaniem jest zainstalowanie i uruchomienie Wireshark w celu uzyskania śledzenia sieci (zakładając, że nie mówisz o lokalnej zaporze programowej.

dlux
źródło
Widok TCP jest raczej nakładką na netstat; jeśli program nie może się połączyć, nie sądzę, że to zobaczysz. Wireshark jest tym, czego chcesz.
Dentrasi
1
To zależy. Jeśli zapora sieciowa nie zamyka połączenia (po prostu upuszcza pakiety), wówczas TCPView wyświetli SYN_SENT podczas oczekiwania na ustanowienie połączenia. Możesz zobaczyć to samo w netstat, ale musisz być szybszy przy odświeżaniu.
dlux
6

Narzędzie Windows, aby dowiedzieć się, którego portu próbuje użyć aplikacja?

NirSoft za CurrPorts - oprogramowanie do monitorowania sieci, które wyświetla listę wszystkich aktualnie otwartych portów TCP / IP i UDP na komputerze lokalnym. Dla każdego portu na liście wyświetlane są również informacje o procesie, który otworzył port, w tym nazwa procesu, pełna ścieżka procesu, informacje o wersji procesu (nazwa produktu, opis pliku itp.), Czas, w którym proces został utworzony, a użytkownik, który go utworzył.

wprowadź opis zdjęcia tutaj

CurrPorts pozwala zamykać niechciane połączenia TCP, zabijać proces otwierania portów i zapisywać informacje o portach TCP / UDP w pliku HTML, pliku XML lub pliku tekstowym rozdzielanym tabulatorami. CurrPorts automatycznie zaznacza również podejrzanymi portami TCP / UDP w kolorze różowym, które należą do niezidentyfikowanych aplikacji (aplikacje bez informacji o wersji i ikon)

Gafel
źródło
1

Jeśli jest to zapora programowa, zrób wyjątek dla całej aplikacji, abyś mógł łatwo sprawdzić za pomocą netstat lub tcpview, którego portu używa. Następnie możesz usunąć wyjątek i dodać regułę dla tego konkretnego portu

Paxxi
źródło
Nie mogę tego zrobić. To zapora w pracy, do której nie mam dostępu.
Tony_Henrich
0

Z wiersza poleceń możesz użyć

netstat -ano

Następnie spójrz na Menedżera zadań, aby zobaczyć, który PID odpowiada portowi

mainstringargs
źródło
Próbowałem tego i nie zadziałało moje pytanie. Uruchomiłem program, który próbował połączyć się z siecią, a następnie polecenie netstat i tasklist | findstr pid, a aplikacja się nie pojawiła. Mój wniosek jest taki, że netstat pokazuje tylko ustanowione połączenia.
Tony_Henrich
0

netstat -b -a

wydaje się działać

-a Wyświetla wszystkie połączenia i porty nasłuchiwania.

-b Wyświetla plik wykonywalny zaangażowany w tworzenie każdego połączenia lub portu nasłuchującego. W niektórych przypadkach dobrze znane pliki wykonywalne obsługują wiele niezależnych komponentów, aw tych przypadkach wyświetlana jest sekwencja komponentów zaangażowanych w tworzenie połączenia lub portu nasłuchującego. W tym przypadku nazwa pliku wykonywalnego znajduje się w [] u dołu, u góry jest wywoływany komponent i tak dalej, aż do osiągnięcia TCP / IP. Pamiętaj, że ta opcja może być czasochłonna i zawiedzie, chyba że masz wystarczające uprawnienia.

Jason Erkie
źródło