Skip to main content

Kako uporabljati ukaz Netstat na Macu

Anonim

Ukaz netstat na macOS je ukaz Terminal, ki se uporablja za prikaz podrobnih informacij o mrežnih komunikacijah vašega računalnika Mac. Omrežne komunikacije vključujejo vse načine, s katerimi vaš Mac govori z zunanjim svetom, v vseh pristaniščih in vseh aplikacijah. Po obvladovanju omrežja netstat uporabniki računalnikov Mac lahko hitro razumejo, katere povezave imajo računalniki in zakaj.

Izvaja Netstat

Ukaz netstat je privzeto na voljo v računalniku Mac. Ni ga potrebno prenesti ali namestiti.

Če želite zagnati netstat, odprite okno Terminal. Če niste seznanjeni z Terminalom, ga najdete na /Applications/Utilities/Terminal.app. Tip netstat in pritisnite Enter za izvedbo ukaza.

Opazili boste, da se bo na vašem zaslonu začelo pomikati veliko kriptičnih besedil. To je normalno in pričakovano. Brez dodatnih možnosti bo netstat prijavil vse aktivne omrežne povezave na vašem računalniku Mac. Glede na število funkcij, ki jih sodobna omrežna naprava izvaja, lahko pričakujete, da bo seznam dolgotrajen. Standardno poročilo o netstatu lahko poteka prek 1000 vrstic.

Filtriranje izhodov netstat je bistvenega pomena za razumevanje, kaj se dogaja na vaših aktivnih vratih Mac. Netstatove rezultate lahko filtrirate z vgrajenimi zastavami. Te zastave vam omogočajo, da nastavite možnosti, omejite obseg in izhod netstatov.

Netstatove zastave in možnosti

Če želite videti vse možnosti, ki so na voljo netstat, v ukazni poziv vnesite človeški netstat. To bo razkrilo človeško stran mreže Netstat. Prav tako si lahko ogledate spletno različico strani netstat man.

netstat -AabdgiLlmnqrRsSvWx -c čakalno vrsto -f address_family -JAZ vmesnik -p protokol -w počakaj

Netstat na macOS ne deluje na enak način kot netstat v sistemu Windows ali netstat na Linuxu. Uporaba znakov ali sintakse iz teh izvedb netstata morda ne bo povzročila pričakovanega vedenja.

Nasvet: Če je zgornja posnetka popolnoma nerazumljiva, se naučite prebrati sintakso ukaza.

-r prikaže tabelo usmerjanja, ki prikazuje, kako se paketi usmerjajo po omrežju.

-p protokol navede promet, povezan s specifičnim omrežnim protokolom. Čeprav je celoten seznam protokolov mogoče najti v / etc / protokolih, bolj pomembni so udp in tcp.

-v povečuje verbosity, še posebej z dodajanjem stolpca, ki prikazuje ID procesa (PID), povezan z vsakim odprtim vratom.

-JAZ vmesnik zagotavlja paketne podatke za določen vmesnik. Vse razpoložljive vmesnike je mogoče ogledati z oznako -i, vendar je en0 običajno privzeti odhodni omrežni vmesnik. Upoštevajte majhno črko.

-g prikaže informacije, povezane z večstranskimi povezavami.

-s prikazuje statistiko omrežja za vse protokole, ne glede na to, ali so aktivne ali ne.

-n zavrne oznake oddaljenih naslovov z imeni. To dramatično pospešuje proizvodnjo Netstata, pri čemer žrtvuje samo omejene informacije.

-a vključuje vrata strežnika v izhodu netstat, ki niso vključeni v privzeti izhod.

Primeri Netstat

Da bi razumeli v praksi, poglejmo nekaj primerov netstat.

netstat -apv TCP

Ta ukaz bo vrnil samo TCP povezave na vaš Mac, vključno z odprtimi in aktivnimi pristanišči. Prav tako bo uporabil verbose izhod, s seznamom PID, povezanih z vsako povezavo.

netstat -a | grep -i "poslušaj"

Ta kombinacija netstat in grep bo razkrila odprta vrata na vašem računalniku Mac. Odprta vrata so vrata, ki poslušajo sporočilo. Če niste seznanjeni s sintakso, znak cevi | se uporablja za pošiljanje izhoda enega ukaza drugemu ukazu. Izklopimo netstat v grep, ki nam omogoča, da jo iščemo za ključno besedo »poslušaj« in poiščemo naše rezultate.

Dostop do omrežja Netstat prek omrežnega programa

Poleg popolne uporabe preko vmesnika ukazne vrstice Terminal, so nekatere od funkcij netstat dostopne tudi prek aplikacije Network Utility. To vgrajeno aplikacijo MacOS lahko najdete na / Applications / Utilities / Network Utility.app. Odprite aplikacijo in kliknite na Netstat jeziček za dostop do grafičnega vmesnika za netstat.

Možnosti v programu Network Utility so očitno veliko bolj omejene kot tiste, ki so na voljo prek ukazne vrstice. Štiri izbire radijskih gumbov preprosto zažene prednastavljen ukaz netstat in prikaže izhod na spodnjem zaslonu.

Ukazi netstat za vsakega radijskega gumba so naslednji:

  • Prikaži informacije o usmerjevalni tabeli teče netstat -r
  • Prikazati izčrpno statistiko omrežja za vsak protokol teče netstat -s
  • Prikaz multicast informacij teče netstat -g
  • Prikazati stanje vseh trenutnih priključkov vtičnic teče netstat

Dopolnitev netstat z lsof

Dejstvo je, da macOS izvajanje netstat ne vključuje veliko funkcij, ki jih uporabniki pričakujejo in potrebujejo. Čeprav ima njeno uporabo, netstat ni skoraj tako uporaben za MacOS, kot je v operacijskem sistemu Windows. Drug ukaz, lsof, lahko nadomesti večino manjkajočih funkcij.

lsof prikaže vse datoteke, ki jih trenutno odpirajo aplikacije. To lahko uporabite tudi za pregled odprtih vrat, povezanih z aplikacijami. Zaženite lsof -i in prikaže se seznam vseh aplikacij, ki komunicirajo prek interneta. To je navadno cilj pri uporabi netstat na strojih Windows. Vendar edini pomemben način, da to nalogo opravite na macOS, ni z netstatom, temveč z lsof.

Prikaz vseh odprtih datotek ali internetne povezave je pogosto prevladujoče.Zato prihaja tudi s številnimi zastavami za omejevanje rezultatov s posebnimi merili. Obstaja veliko uporabnih zastav, ki razširjajo pripomoček. Najpomembnejši so spodaj. Za dodatno branje, vključno z več zastavicami in tehničnimi pojasnili o izvedbi vsake zastavice, si oglejte lsfovo stran ali zagon človek lsof na terminalskem pozivu.

lsof zastave in možnosti

-jaz prikaže vse odprte omrežne povezave in ime procesa, ki uporablja povezavo. Dodajanje 4, kot je v -i4, bo prikazal samo povezave IPv4. Namesto tega dodamo 6 (-i6) bo prikazal samo povezave IPv6.

The -jaz zastava se lahko razširi tudi, da natančno opiše nadaljnje podrobnosti. -iTCP ali -iUDP bo vrnil samo povezave TCP in UDP. -iTCP: 25 bo vrnil TCP povezave le na vrata 25. Vrsto vrat je mogoče določiti s pomišljajem, saj je -iTCP: 25-50.

Uporaba [email protected] bo vrnila le povezave z naslovom IPv4. 1.2.3.4. Naslove IPv6 je mogoče natančno določiti. Predhodnik @ se lahko uporablja tudi za enak opis imen gostiteljev, vendar oba oddaljenega naslova IP in imena gostiteljev ni mogoče uporabljati istočasno.

-s običajno prisili lsof, da prikaže velikost datoteke. Ampak, ko je seznanjen z -jaz zastava, -s deluje drugače. Namesto tega omogoča uporabniku, da določi protokol in stanje za ukaz, ki se vrne.

-p omejuje lsof na določen ID procesa (PID). Več PID-ov lahko nastavite z uporabo skupnih sredstev, na primer -p 123.456.789. ID-je procesov je mogoče izključiti tudi s ^, kot pri 123, ^ 456, kar bi izrecno izključilo PID 456.

-P onemogoči pretvorbo številk vrat v imena vrat, pospešitev proizvodnje.

-n onemogoči pretvorbo omrežnih številk v imena gostiteljev. Pri uporabi z -P zgoraj, lahko znatno pospeši proizvodnjo lsof.

-u uporabnik vrne le ukaze v lasti imenovanega uporabnika.

Samo primeri

Kot netstat, bomo videli nekaj primerov lsof, ki bodo pripomogli k našemu razumevanju.

lsof -nP [email protected]: 513

Ta zapleten ukaz bo prikazal vse povezave TCP z imenom gostitelja lsof.itap in pristanišče 513. Prav tako bo zagnal lsof brez povezovanja imen z IP-naslovi in ​​pristanišči, zaradi česar se bo ukaz znatno hitreje.

lsof -iTCP -sTCP: LISTEN

To bo vrnilo vsako povezavo TCP s statusom LISTEN. To razkrije vse odprte TCP vrata na vašem računalniku Mac. Navaja tudi procese, povezane s temi odprtimi pristanišči. To je pomembna nadgradnja nad netstatom, ki našteva največ PID.

sudo lsof -i -u ^ $ (whoami)

Vrne vse povezave ne v lasti trenutno prijavljenega uporabnika. Ta ukaz je malo drugačen od drugih, zato ga bomo podrobno razčlenili.

Za negiranje se uporablja čarovnica. Vse, kar se ujema z besedilom po negi, bo odstranjeno iz rezultatov. Ime trenutno prijavljenega uporabnika dobimo z zagonom kdo sem jaz znotraj ukaza lsof, obkrožen z $() da pustite lsof dostop do izhoda kot besedila. Zagon s pomočjo sudo vam omogoča ogled nalog, ki niso v lasti samega sebe. Izvajanje ukaza brez sudo bo vrnil prazen seznam.

Drugi omrežni ukazi

Drugi ukazi za terminalsko omrežje, ki bi lahko bili zanimivi za pregledovanje vašega omrežja, vključujejo arp, ping in ipconfig.