Jak korzystać z polecenia Netstat na komputerze Mac

Polecenie netstat w systemie macOS to polecenie terminala, które wyświetla szczegółowe informacje o komunikacji sieciowej komputera. Komunikacja sieciowa obejmuje wszystkie sposoby komunikacji komputera Mac ze światem zewnętrznym, we wszystkich portach i we wszystkich aplikacjach. Zdobywanie netstat może pomóc ci zrozumieć połączenia, które tworzy twój komputer i dlaczego.


Uruchamianie Netstat

Polecenie netstat jest domyślnie dostępne na komputerach Mac. Nie musisz go pobierać ani instalować.

Aby uruchomić netstat, otwórz okno terminala pod adresem Konsultacje > Użytkowe > terminal. Rodzaj netstat i naciśnij wchodzić wykonać polecenie.

wakila / Getty Images

Na ekranie zacznie się przewijać ogromna ilość tekstu. Jeśli nie używasz żadnej z dostępnych flag (patrz poniżej), netstat zgłosi wszystkie aktywne połączenia sieciowe na komputerze Mac. Biorąc pod uwagę liczbę funkcji, jakie wykonuje nowoczesne urządzenie sieciowe, można oczekiwać, że lista będzie długa. Standardowy raport może zawierać znacznie więcej niż 1000 wierszy.

Filtrowanie danych wyjściowych netstat jest niezbędne do zrozumienia, co dzieje się na aktywnych portach komputera Mac. Wbudowane flagi umożliwiają ustawienie opcji, ograniczając zakres polecenia.

Flagi i opcje Netstat

Aby zobaczyć wszystkie dostępne opcje netstat, wpisz man netstat w wierszu poleceń, aby wyświetlić stronę podręcznika netstat. Możesz również wyświetlić wersję online strony podręcznika netstat.

„Man” to skrót od „manual”.

Składnia

Aby dodać flagi i opcje do netstat, użyj następującej składni:

netstat [-AabdgiLlmnqrRsSvWx] [-c kolejka] [-f rodzina_adresów] [-I interfejs] [-p protokół] [-w czekanie]

Netstat na macOS nie działa tak samo jak netstat w Windows i Linux. Używanie flag lub składni z tych implementacji netstat może nie skutkować oczekiwanym zachowaniem.

Jeśli powyższy skrót wygląda zupełnie niezrozumiale, naucz się czytać składnię poleceń.

Przydatne flagi

Oto niektóre z najczęściej używanych flag:

  • -a zawiera porty serwera w wyjściu netstat, które nie są uwzględnione w domyślnym wyjściu.
  • -g wyświetla informacje związane z połączeniami multiemisji.
  • -I interfejs udostępnia dane pakietowe dla określonego interfejsu. Wszystkie dostępne interfejsy można przeglądać za pomocą -i flaga, ale en0 jest zwykle domyślnym interfejsem sieci wychodzącej. (Zwróć uwagę na małą literę.)
  • -n pomija etykietowanie zdalnych adresów z nazwami. To radykalnie przyspiesza wyjście netstat, poświęcając tylko ograniczone informacje.
  • -p protokół wyświetla ruch związany z określonym protokołem sieciowym. Pełna lista protokołów jest dostępna pod adresem / etc / protocols, ale najważniejsze są udp i tcp.
  • -r wyświetla tablicę routingu, pokazującą, w jaki sposób pakiety są trasowane w sieci.
  • -s pokazuje statystyki sieciowe dla wszystkich protokołów, niezależnie od tego, czy są one aktywne, czy nie.
  • -v zwiększa szczegółowość, w szczególności poprzez dodanie kolumny pokazującej identyfikator procesu (PID) powiązany z każdym otwartym portem.

Przykłady Netstat

Rozważ te przykłady:

netstat -apv TCP

To polecenie zwraca tylko połączenia TCP na komputerze Mac, w tym otwarte porty i aktywne porty. Wykorzystuje również szczegółowe dane wyjściowe, podając identyfikatory PID związane z każdym połączeniem.

netstat -a | grep -i "słuchaj"

To połączenie netstat i grep ujawnia otwarte porty - porty nasłuchujące wiadomości. Charakter fajki | wysyła dane wyjściowe jednego polecenia do innego polecenia. Tutaj wynik netstat rury do grep, umożliwiając wyszukanie słowa kluczowego „słuchaj” i znalezienie wyników.


Dostęp do Netstat przez narzędzie sieciowe

Możesz również uzyskać dostęp do niektórych plików netstat's funkcjonalność za pośrednictwem aplikacji Network Utility pod adresem system > Biblioteka > Podstawowe usługi > Konsultacje.

Kliknij Netstat aby uzyskać dostęp do interfejsu graficznego.

Opcje narzędzia sieciowego są znacznie bardziej ograniczone niż te dostępne z wiersza poleceń. Każda z czterech opcji wyboru przycisków radiowych uruchamia zaprogramowany netstat polecenie i wyświetla dane wyjściowe.

Polecenia netstat dla każdego przycisku opcji są następujące:

  • Wyświetl informacje w tablicy routingu działa netstat -r.
  • Wyświetlaj szczegółowe statystyki sieciowe dla każdego protokołu działa netstat -s.
  • Wyświetl informacje o multiemisji działa netstat -g.
  • Wyświetla stan wszystkich bieżących połączeń gniazd działa netstat.

Uzupełnienie Netstat o Lsof

Implementacja netstat w systemie macOS nie obejmuje wielu funkcji, których użytkownicy oczekują i potrzebują. Chociaż ma swoje zastosowania, netstat nie jest tak przydatny w systemie MacOS, jak w systemie Windows. Inne polecenie, lsofzastępuje większość brakujących funkcji.

Lsof wyświetla wszystkie pliki aktualnie otwarte w dowolnych aplikacjach. Możesz go również użyć do sprawdzenia otwartych portów powiązanych z aplikacjami. Biegać lsof -i, a zobaczysz listę wszystkich aplikacji komunikujących się przez Internet. Jest to zwykle celem podczas używania netstat na komputerach z systemem Windows; jednak jedynym sensownym sposobem wykonania tego zadania w systemie MacOS nie jest netstat, ale lsof.

Flagi i opcje Lsof

Wyświetlanie każdego otwartego pliku lub połączenia internetowego jest zwykle pełne. Dlatego lsof ma flagi do ograniczania wyników za pomocą określonych kryteriów. Najważniejsze z nich poniżej.

Aby uzyskać informacje na temat większej liczby flag i technicznych wyjaśnień każdego z nich, sprawdź stronę podręcznika lsof lub uruchom man lsof w monicie terminala.

  • -i wyświetla wszystkie otwarte połączenia sieciowe i nazwę procesu, który korzysta z połączenia. Dodawanie 4, jak w -i4, wyświetli tylko połączenia IPv4. Dodawanie 6 zamiast (-i6) wyświetli tylko połączenia IPv6.
  • The -i flagę można również rozwinąć, aby określić dalsze szczegóły. -iTCP lub -iUDP zwróci tylko połączenia TCP i UDP. -iTCP: 25 zwróci tylko połączenia TCP na porcie 25. Zakres portów można określić za pomocą myślnika, ponieważ -iTCP: 25-50.
  • Użycie [email protected] zwróci tylko połączenia z adresem IPv4 1.2.3.4. Adresy IPv6 można określić w ten sam sposób. Prekursor @ może również służyć do określania nazw hostów w ten sam sposób, ale nie można używać jednocześnie zdalnych adresów IP i nazw hostów.
  • -s zazwyczaj wymusza na lsof wyświetlenie rozmiaru pliku. Ale w połączeniu z -i flaga, -s działa inaczej. Zamiast tego pozwala użytkownikowi określić protokół i stan polecenia do zwrócenia.
  • -p ogranicza lsof do określonego identyfikatora procesu (PID). Wiele identyfikatorów PID można ustawić za pomocą wspólnych wartości, takich jak -p 123,456,789. Identyfikatory procesów można również wykluczyć za pomocą ^, jak w 123, ^ 456, co konkretnie wykluczałoby PID 456.
  • -P wyłącza konwersję numerów portów na nazwy portów, przyspieszając wyjście.
  • -n wyłącza konwersję numerów sieci na nazwy hostów. W przypadku używania z -P powyżej, może znacznie przyspieszyć wyjście lsof.
  • -u user zwraca tylko polecenia należące do wymienionego użytkownika.

lsof Przykłady

Oto kilka sposobów korzystania z lsof.

lsof -nP [email protected]: 513

To złożone polecenie wyświetla listę wszystkich połączeń TCP z nazwą hosta lsof.itap i port 10. Uruchamia również lsof bez łączenia nazw z adresami IP i portami, dzięki czemu polecenie działa zauważalnie szybciej.

lsof -iTCP -sTCP: SŁUCHAJ

To polecenie zwraca każde połączenie TCP ze statusem SŁUCHAĆ, odsłaniając wszystkie otwarte porty TCP na komputerze Mac. Zawiera również listę procesów związanych z tymi otwartymi portami. Jest to znacząca aktualizacja netstat, która zawiera co najwyżej identyfikatory PID.

sudo lsof -i -u ^ $ (whoami)

To polecenie zwraca wszystkie połączenia, których właścicielem nie jest aktualnie zalogowany użytkownik.

Daszek (^) służy do zaprzeczenia. Wyniki nie będą zawierać niczego, co pasuje do tekstu po karetce. Nazwę aktualnie zalogowanego użytkownika można uzyskać, uruchamiając whoami wewnątrz lsof polecenie, otoczone $ () pozwolić lsof uzyskać dostęp do wyniku w postaci tekstu. Uruchomienie z sudo pozwala zobaczyć zadania, które nie są Twoją własnością. Uruchomienie tego polecenia bez sudo zwraca pustą listę.

Inne polecenia sieciowe

Inne polecenia sieciowe terminala, które mogą być przydatne przy badaniu sieci, to arp, ping i ipconfig.

#goog-gt-tt {display:none !important;}.goog-te-banner-frame {display:none !important;}.goog-te-menu-value:hover {text-decoration:none !important;}body {top:0 !important;}#gtranslate_element {display:none!important;}

var gt_not_translated_list = ["wakila / Getty Images","man netstat","netstat -apv TCP","netstat's","netstat -s","netstat -g","lsof","lsof -i","man lsof","-i4","-i6","lsof.itap"];
document.cookie = "googtrans=/auto/pl; domain=.balogs.xyz";
document.cookie = "googtrans=/auto/pl";
function GTranslateElementInit() {new google.translate.TranslateElement({pageLanguage: 'auto',layout: google.translate.TranslateElement.InlineLayout.SIMPLE,autoDisplay: false,multilanguagePage: true}, 'gtranslate_element');}

Dodaj komentarz