Użyj Netstat, aby zobaczyć porty nasłuchiwania i PID w systemie Windows

W innym artykule wyjaśniliśmy porty komputerowe i do czego służą(explained computer ports and what they’re used for) . Poza tym, co możemy zrobić z informacjami o porcie? Ponieważ cały ruch przychodzący i wychodzący z komputera przechodzi przez porty, możemy je sprawdzić, aby zobaczyć, co robią. Może port nie nasłuchuje ruchu? Może coś używa portu, którego nie powinno być? 

Użyjemy polecenia netstat systemu Windows(Windows) , aby zobaczyć nasze porty nasłuchiwania i PID ( identyfikator procesu(Process ID) ). Zobaczymy również, co możemy zrobić z tymi informacjami.

Co to jest Netstat?(What Is Netstat?)

Polecenie netstat jest kombinacją słów „sieć” i „statystyka”. Polecenie netstat działa we wszystkich wersjach systemu Windows(Windows) od Windows XP aż do Windows 10 . Jest również używany w innych systemach operacyjnych (OS), takich jak Unix i Linux , ale tutaj będziemy trzymać się Windows .

Netstat może nam zapewnić:

  • Nazwa protokołu używanego przez port ( TCP lub UDP ).
  • Lokalny adres IP i nazwa komputera oraz używany numer portu.
  • Adres IP i numer portu, z którym się łączymy.
  • Stan połączenia TCP . Aby uzyskać szczegółowe informacje na temat tych stanów, przeczytaj sekcję dotyczącą przetwarzania zdarzeń w dokumencie RFC 793(Event Processing section of RFC 793) .

Używanie Netstat do wyświetlania portów nasłuchu i PID(Using Netstat To See Listening Ports & PID)

  • Użyj kombinacji Win Key + X . W menu, które się otworzy, wybierz Wiersz polecenia(Command Prompt) .

  • Wpisz(Enter) polecenie
    netstat -a -n -o
    . Parametry netstat są poprzedzone myślnikiem, a nie ukośnikiem, jak wiele innych poleceń. Opcja -a mówi mu, aby pokazał nam wszystkie aktywne połączenia i porty, na których nasłuchuje komputer.

    Opcja -n mówi netstatowi, aby wyświetlał adresy IP i porty tylko jako liczby. Mówimy mu, żeby nie próbował rozwiązywać nazw. Dzięki temu wyświetlacz jest szybszy i schludniejszy. Opcja -o informuje netstat o dołączeniu PID . Użyjemy PID później, aby dowiedzieć się, jaki proces używa określonego portu.

  • Wyświetl(View) wyniki i zanotuj adresy, numery portów, stan i PID . Powiedzmy, że chcemy wiedzieć, co używa portu 63240. Zauważ, że jego PID to 8552 i łączy się z adresem IP 172.217.12.138 na porcie 443.

Co korzysta z tego portu?(What’s Using That Port?)

  • Otwórz Menedżera zadań(Task Manager) . Najłatwiej to zrobić, używając kombinacji Ctrl + Shift + Esc .

  • Kliknij kartę Szczegóły(Details ) . Aby ułatwić znalezienie, kliknij nagłówek kolumny PID , aby posortować (PID )PIDs numerycznie.

  • Przewiń w dół do PID 8552 i zobacz, co to za proces. W tym przypadku jest to googledrivesync.exe . Ale czy to naprawdę? Czasami wirusy mogą wyglądać jak legalne procesy.

  • W przeglądarce internetowej przejdź do ipinfo.io . Wprowadź adres IP 172.217.12.138 . Jak widzimy, adres IP jest zarejestrowany w Google . Więc ten googledrivesync.exe jest uzasadniony.

Jak uzyskać port, PID i nazwę procesu w PowerShell?(How To Get Port, PID, & Process Name In PowerShell)

PowerShell to nowszy sposób firmy Microsoft na korzystanie z interfejsu wiersza polecenia w systemie Windows(Windows) . Mówimy nowsze, ale istnieje już od kilku wersji. Powinieneś nauczyć się PowerShell, nawet jeśli jesteś użytkownikiem domowym(learn PowerShell even if you’re a home user) .

Większość poleceń systemu Windows działa również w (Windows)PowerShell , a ponadto możemy je łączyć z poleceniami cmdlet PowerShell – wymawiane command-lets . Joe z Winteltools.com udostępnia skrypt dla tej metody.

  • Otwórz Notatnik(Notepad ) i wprowadź następujący kod:
$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 " "
}

  • Zapisz plik jako get-NetstatProcessName.ps1 . Pamiętaj, aby zanotować, gdzie jest zapisywany. Ważne jest, aby zmienić Zapisz jako typ:(Save as type: ) na All Files (*.*) lub zostanie on zapisany jako get-NetstatProcessName.ps1 .txt i nie zadziała u nas.

  • Otwórz PowerShell i przejdź do lokalizacji, w której zapisano skrypt. W tym przypadku jest to <pre>cd C:Scripts</pre>. Naciśnij Enter , aby uruchomić polecenie.

  • Uruchom skrypt za pomocą dot-sourcingu, aby zadziałał. Oznacza to użycie ./ przed nazwą pliku. Polecenie będzie
    ./get-NetstatNazwaProcesu.ps1< /pre

  • Teraz możemy zobaczyć wszystkie tradycyjne informacje netstat plus nazwę procesu. Nie musisz już otwierać Menedżera zadań(Task Manager) .

Idź i je zdobądź(Go Get Them)

Omówiliśmy dwa sposoby użycia polecenia netstat, aby zobaczyć porty nasłuchujące. Może być używany w starym wierszu poleceń(Command Prompt) lub w skrypcie PowerShell . Dzięki informacjom, które może nam dostarczyć, przyjrzeliśmy się, w jaki sposób może nam pomóc w ustaleniu, co robi nasz komputer. 

Jeśli uważasz, że netstat jest świetnym narzędziem, spójrz na inne narzędzia Windows TCP/IP, takie jak tracert, ipconfig i nslookup . Lub użyj Monitora zasobów, aby lepiej przyjrzeć się ukrytym witrynom i połączeniom internetowym(use Resource Monitor to get a better look into hidden website and Internet connections) . Możesz wiele zrobić, aby zobaczyć, co dokładnie robi Twój komputer.

Czy używałeś netstat do rozwiązania problemu? Powiedz(Please) nam, co zrobiłeś. Masz pytania dotyczące korzystania z netstat? Zapytaj(Please) nas w komentarzach poniżej.



About the author

inżynier audiofilski i specjalista ds. produktów audio z ponad 10-letnim doświadczeniem. Specjalizuję się w tworzeniu wysokiej jakości głośników muzycznych i słuchawek od początku do końca. Jestem ekspertem w rozwiązywaniu problemów z dźwiękiem oraz projektowaniu nowych głośników i systemów słuchawkowych. Moje doświadczenie wykracza poza samo tworzenie dobrych produktów; Mam również pasję pomagania innym w byciu jak najlepszymi, czy to poprzez edukację, czy pracę społeczną.



Related posts