Príkaz netstat v systéme macOS je príkaz terminálu, ktorý slúži na zobrazenie podrobných informácií o sieťovej komunikácii počítača Mac. Sieťová komunikácia zahŕňa všetky spôsoby, ako váš počítač Mac komunikuje s vonkajším svetom, cez všetky porty a všetky aplikácie. Po osvojení netstatu môžu používatelia Mac rýchlo pochopiť, aké sú pripojenia ich počítača a prečo.
Spúšťanie Netstatu
Príkaz netstat je predvolene dostupný v systéme Mac. Nemusí byť stiahnuté ani nainštalované.
Ak chcete spustiť netstat, otvorte okno Terminál. Ak nie ste s Terminálom oboznámení, nachádza sa na stránke /Applications/Utilities/Terminal.app. typ netstat a stlačte kláves Enter pre vykonanie príkazu.
Všimnete si, že obrovské množstvo tajomného textu začne prechádzať na obrazovke. To je normálne a očakávané. Bez akýchkoľvek ďalších možností netstat bude nahlásiť všetky aktívne sieťové pripojenia na počítači Mac. Vzhľadom na počet funkcií, ktoré moderné sieťové zariadenie vykonáva, môžete očakávať, že zoznam bude zdĺhavý. Štandardné hlásenie netstat môže bežať viac ako 1000 riadkov.
Filtrovanie výstupu netstatu je nevyhnutné pre pochopenie toho, čo sa deje na vašich Mac aktívnych portoch. Môžete filtrovať výstup netstatu pomocou zabudovaných príznakov. Tieto príznaky umožňujú nastaviť možnosti, ktoré obmedzujú rozsah a výstup netstatu.
Vlajky a možnosti služby Netstat
Ak chcete zobraziť všetky dostupné možnosti siete netstat, zadajte príkaz manstat netstat na príkazovom riadku. To odhalí manuálovú stránku netstatu. Môžete tiež zobraziť online verziu stránky mana netstat.
netstat -AabdgiLlmnqrRsSvWx -c fronta -f adresa_rodiny -I rozhranie -p protokol -w počkať
Netstat v systéme macOS nefunguje rovnako ako netstat na systéme Windows alebo netstat v systéme Linux. Použitie príznakov alebo syntaxe z týchto implementácií netstatu nemôže viesť k očakávanému správaniu.
Tip: Ak táto skratka vyzerá úplne nepochopiteľne, naučte sa, ako čítať syntax príkazu.
-r zobrazí smerovaciu tabuľku, ktorá ukazuje, ako sú pakety smerované po sieti.
-p protokol zobrazuje prevádzku spojenú s konkrétnym sieťovým protokolom. Zatiaľ čo úplný zoznam protokolov možno nájsť v / etc / protokoloch, dôležitejšie sú udp a tcp.
-v zvyšuje početnosť, konkrétne pridaním stĺpca s ID procesu (PID) priradeným ku každému otvorenému portu.
-I rozhranie poskytuje paketové dáta pre určené rozhranie. Všetky dostupné rozhrania je možné zobraziť pomocou príznaku -i, ale en0 je zvyčajne štandardné odchádzajúce sieťové rozhranie. Berte na vedomie malé písmeno.
-g zobrazuje informácie spojené s pripojeniami typu multicast.
-s zobrazuje štatistiky siete pre všetky protokoly, bez ohľadu na to, či sú alebo nie sú aktívne.
-n potláča označenie vzdialených adries s názvami. To dramaticky urýchľuje výstup netstatu, pričom obetuje len obmedzené informácie.
-a obsahuje porty servera vo výstupe netstatu, ktoré nie sú zahrnuté do predvoleného výstupu.
Príklady Netstat
Aby sme pochopili naše chápanie, pozrime sa na niektoré príklady netstatu.
netstat -apv TCP
Tento príkaz vráti TCP pripojenia iba na Mac, vrátane otvorených portov a aktívnych portov. Bude tiež používať podrobný výstup s výpisom PID súvisiacich s každým pripojením. netstat -a | grep -i "počúvať"
Táto kombinácia netstat a grep odhalí otvorené porty na počítači Mac. Otvorené porty sú porty, ktoré počúvajú správu. Ak nie ste oboznámení so syntaxou, znak potrubia | sa používa na odoslanie výstupu jedného príkazu inému príkazu. Privádzame výstup netstatu na grep, ktorý nám umožňuje vyhľadávať kľúčové slovo "počúvať" a nájsť výsledky. Okrem plnohodnotného používania prostredníctvom rozhrania príkazového riadka Terminálu sú niektoré funkcie netstatu dostupné aj prostredníctvom aplikácie Network Utility. Táto vstavaná aplikácia MacOS sa nachádza na stránke / Applications / Utilities / Network Utility.app. Otvorte aplikáciu a kliknite na tlačidlo netstat pre prístup k grafickému rozhraniu pre netstat. Voľby v aplikácii Network Utility sú oveľa obmedzenejšie ako tie, ktoré sú k dispozícii prostredníctvom príkazového riadku. Štyri voľby prepínača spúšťajú prednastavený príkaz netstat a zobrazujú výstup na obrazovke nižšie. Príkazy netstat pre každé prepínacie tlačidlo sú nasledovné: Faktom je, že implementácia systému netstat macOS nezahŕňa veľa funkcií, ktoré používatelia očakávajú a potrebujú. Zatiaľ čo má svoje použitie, netstat nie je takmer užitočný v MacOS ako v systéme Windows. Iný príkaz, lsof, môže nahradiť veľa chýbajúcich funkcií. lsof zobrazuje všetky súbory, ktoré aktuálne otvárajú ľubovoľné aplikácie. Toto je možné použiť aj na kontrolu otvorených portov spojených s aplikáciami. Spustite lsof-i a uvidíte zoznam všetkých aplikácií komunikujúcich cez internet. Toto je zvyčajne cieľ pri používaní netstatu na počítačoch so systémom Windows. Avšak jediný zmysluplný spôsob, ako splniť túto úlohu na macOS nie je s netstat, ale s lsof. Zobrazenie každého jednotlivého otvoreného súboru alebo pripojenia k internetu je často veľmi dôkladné.To je dôvod, prečo lsof prichádza s niekoľkými vlajkami na obmedzenie výsledkov s konkrétnymi kritériami. Existuje mnoho užitočných príznakov, ktoré rozširujú utilitu príkazu. Najdôležitejšie sú nižšie. Pre ďalšie čítanie, vrátane viacerých príznakov a technických vysvetlení implementácie každej vlajky, skontrolujte manuálovú stránku lsof alebo spustite muž lsof na príkaz Terminál. -i zobrazuje všetky otvorené sieťové pripojenia a názov procesu, ktorý používa spojenie. Pridanie 4, ako v -i4, zobrazí sa iba pripojenia protokolu IPv4. Pridanie 6 miesto (-i6) zobrazí iba pripojenia protokolu IPv6. -i môže byť rozšírený aj ďalší príznak. -iTCP alebo -iUDP vrátia iba pripojenia TCP a UDP. -iTCP: 25 vráti iba TCP spojenia na portu 25. Rozsah portov môže byť zadaný s pomlčkou, pretože -iTCP: 25-50. Použitím [email protected] sa vrátia iba pripojenia k adrese IPv4 1.2.3.4. Adresy IPv6 je možné špecifikovať rovnakým spôsobom. Predchodca @ môže byť použitý aj na špecifikovanie názvov hostiteľov rovnakým spôsobom, ale vzdialené adresy IP aj názvy hostiteľov nemožno použiť súčasne. -s typicky núti lsof na zobrazenie veľkosti súboru. Ale pri spárovaní s -i vlajka, -s funguje inak. Namiesto toho umožňuje používateľovi určiť protokol a stav príkazu, ktorý sa má vrátiť. -p obmedzuje lsof na konkrétne ID procesu (PID). Viaceré PID je možné nastaviť pomocou spoločných, napríklad -p 123 456 789. ID procesov je možné vylúčiť aj pomocou ^, ako v 123, ^ 456, ktorý by špecificky vylúčil PID 456. -P zakáže konverziu čísel portov na názvy portov a urýchľuje výstup. -n zakáže konverziu čísel siete na názvy hostiteľov. Pri použití s -P vyššie, môže výrazne urýchliť výstup lsof. -u užívateľ iba vráti príkazy, ktoré vlastní daný používateľ. Rovnako ako netstat, vidieť niekoľko príkladov lsof pomôže praktizovať naše pochopenie. lsof [email protected]: 513
Tento komplexný príkaz zobrazí zoznam všetkých pripojení TCP s názvom hostiteľa lsof.itap a port 513. Bude tiež spustiť lsof bez pripojenia názvov k IP adresám a portom, takže príkaz beží výrazne rýchlejšie. lsof -iTCP -sTCP: LISTEN
Toto vráti každé pripojenie TCP so stavom POČÚVAŤ, Toto odhalí všetky otvorené porty TCP na počítači Mac. Uvádza aj procesy spojené s týmito otvorenými portami. Ide o výrazný upgrade oproti netstatu, ktorý obsahuje najviac PID. sudo lsof -i-u ^ $ (whoami)
Vráti všetky pripojenia nie vlastnený aktuálne prihláseným používateľom. Tento príkaz je trochu odlišný od ostatných, takže ho podrobne rozdelíme. Kariéra sa používa na negáciu. Čokoľvek, ktoré zodpovedá textu po stopke, bude odstránené z výsledkov. Dostávame meno aktuálne prihláseného používateľa kto som vnútri príkazu lsof, obklopený $() aby umožnil prístup LDsof svojmu výstupu ako text. Spustenie programu sudo umožňuje zobraziť úlohy, ktoré nie sú vo vlastníctve. Spustenie tohto príkazu bez sudo vráti prázdny zoznam. Ostatné príkazy sieťového pripojenia, ktoré môžu byť zaujímavé pri skúmaní vašej siete, zahŕňajú arp, ping a ipconfig. Prístup k netstatu prostredníctvom nástroja Network Utility
Doplnenie netstatu s lsof
Flags a možnosti
Príklady príkladov
Ďalšie príkazy siete













