Šta treba znati
- Da pokrenete netstat i vidite detaljne podatke o mreži vašeg Mac-a, otvorite novi prozor Terminal, upišite netstat i pritisniteEnter.
- Ograničite netstat-ov izlaz sa zastavicama i opcijama. Da vidite dostupne opcije za netstat, ukucajte man netstat na komandnoj liniji.
- Koristite lsof komandu da nadoknadite nedostajuću ili ograničenu funkcionalnost netstata, uključujući prikaz svih fajlova koji su trenutno otvoreni u bilo kojoj aplikaciji.
Ovaj članak objašnjava kako pokrenuti naredbu netstat Terminal u macOS-u tako da možete vidjeti detaljne informacije o mrežnoj komunikaciji vašeg Mac-a, uključujući načine na koje vaš Mac razgovara sa vanjskim svijetom, na svim portovima i svim aplikacijama.
Kako pokrenuti Netstat
Učenje kako koristiti netstat može vam pomoći da shvatite koje veze vaš računar uspostavlja i zašto. Komanda netstat je podrazumevano dostupna na Mac računarima. Ne morate da ga preuzimate ili instalirate.
Da pokrenete netstat:
-
Idi na Finder > Idi > Utilities.
-
Dva klik Terminal.
-
U novom prozoru terminala upišite netstat i pritisnite Return (ili Enter) da izvršite naredbu.
-
Ogromna količina teksta će početi da se kreće po ekranu. Ako ne koristite nijednu od dostupnih oznaka (pogledajte ispod), netstat prijavljuje aktivne mrežne veze na vašem Macu. S obzirom na broj funkcija koje moderni mrežni uređaj obavlja, možete očekivati da će lista biti duga. Standardni izvještaj može imati više od 1000 redova.
Netstat zastavice i opcije
Filtriranje netstat-ovog izlaza je bitno za razumijevanje onoga što se dešava na aktivnim portovima vašeg Mac-a. Netstat-ove ugrađene zastavice vam omogućavaju postavljanje opcija, ograničavajući opseg komande.
Da vidite sve dostupne opcije netstat-a, otkucajte man netstat na komandnoj liniji da biste otkrili netstat-ovu man (skraćenicu od "manual") stranicu. Također možete pogledati online verziju netstatove man stranice.
Sintaksa
Važno je napomenuti da netstat na macOS-u ne radi na isti način kao netstat na Windows-u i Linux-u. Korištenje zastavica ili sintakse iz tih implementacija netstat-a možda neće rezultirati očekivanim ponašanjem.
Da dodate zastavice i opcije u netstat na macOS-u, koristite sljedeću sintaksu:
netstat [-AabdgiLlmnqrRsSvWx] [-c red] [-f adresa_family] [-I interfejs] [-p protokol] [-w čekanje]
Ako gornja skraćenica izgleda potpuno nerazumljiva, naučite kako čitati sintaksu komande.
Korisne zastavice
Evo nekih od najčešće korištenih zastava:
- - a uključuje portove servera u netstat-ov izlaz, koji nisu uključeni u podrazumevani izlaz.
- - g prikazuje informacije povezane sa multicast vezama.
- - I interfejs obezbeđuje paketne podatke za navedeni interfejs. Svi dostupni interfejsi se mogu videti sa - i zastavicom, ali en0 je tipično podrazumevani odlazni mrežni interfejs. (Obratite pažnju na malo slovo.)
- - n potiskuje oznaku udaljenih adresa sa imenima. Ovo ubrzava netstat-ov izlaz dok eliminiše samo ograničene informacije.
- - p protokol navodi promet povezan sa određenim mrežnim protokolom. Kompletna lista protokola je dostupna na /etc/protocols, ali najvažniji su udp i tcp.
- - r prikazuje tabelu rutiranja koja pokazuje kako se paketi usmjeravaju oko mreže.
- - s prikazuje statistiku mreže za sve protokole, bez obzira da li su protokoli aktivni ili ne.
- - v povećava opširnost, posebno dodavanjem kolone koja prikazuje ID procesa (PID) povezan sa svakim otvorenim portom.
Netstat Primjeri
Razmotrite ove primjere:
netstat -apv TCP
Ova komanda vraća samo TCP veze na vašem Mac računaru, uključujući otvorene portove i aktivne portove. Takođe koristi detaljan izlaz, navodeći PID-ove povezane sa svakom vezom.
netstat -a | grep -i "slušam"
Ova kombinacija netstat i grep otkriva otvorene portove, koji su portovi koji osluškuju poruku. Cijevni znak | šalje izlaz jedne komande drugoj komandi. Ovdje izlaz netstat vodi u grep, što vam omogućava da ga pretražite za ključnu riječ "slušati" i pronaći rezultate.
Pristup Netstat-u putem mrežnog uslužnog programa
Također možete pristupiti nekim funkcijama netstat-a putem aplikacije Network Utility, koja je uključena u verzije macOS-a do Cataline (nije uključena u Big Sur).
Da biste došli do Network Utility, upišite Network Utility u Spotlight Search da pokrenete aplikaciju, a zatim odaberite karticu Netstat za pristup grafički interfejs.
Opcije unutar Network Utility-a su ograničenije od onih koje su dostupne preko komandne linije. Svaki od četiri odabira radio gumba pokreće unaprijed postavljenu netstat komandu i prikazuje izlaz.
Netstat komande za svako radio dugme su sledeće:
- Prikaži informacije tablice rutiranja radi netstat -r.
- Prikaži sveobuhvatnu statistiku mreže za svaki protokol radi netstat -s.
- Prikaži multicast informacije radi netstat -g.
- Prikaži stanje svih trenutnih priključaka utičnice radi netstat.
Dopunjavanje Netstat-a sa Lsof
MacOS implementacija netstat-a ne uključuje mnogo funkcionalnosti koje korisnici očekuju i trebaju. Iako ima svoju upotrebu, netstat nije toliko koristan na macOS-u kao na Windows-u. Drugačija komanda, lsof, zamjenjuje veliki dio nedostajuće funkcionalnosti.
Lsof prikazuje datoteke trenutno otvorene u aplikacijama. Možete ga koristiti i za pregled otvorenih portova povezanih s aplikacijom. Pokrenite lsof -i da vidite listu aplikacija koje komuniciraju preko interneta. Ovo je tipično cilj kada se koristi netstat na Windows mašinama; međutim, jedini smisleni način za postizanje tog zadatka na macOS-u nije netstat, već lsof.
Lsof zastavice i opcije
Prikazivanje svake otvorene datoteke ili internetske veze je obično opširno. Zbog toga lsof dolazi sa zastavicama za ograničavanje rezultata sa određenim kriterijumima. Najvažnije su ispod.
Za informacije o više oznaka i tehničkih objašnjenja svake od njih, pogledajte lsofovu man stranicu ili pokrenite man lsof na promptu terminala.
- - i prikazuje otvorene mrežne veze i naziv procesa koji koristi vezu. Dodavanje 4, kao u - i4, prikazuje samo IPv4 veze. Dodavanje 6 umjesto (- i6) prikazuje samo IPv6 veze.
- Oznaka - i takođe se može proširiti da bi se specificirali dodatni detalji. -iTCP ili -iUDP vraća samo TCP i UDP veze. -iTCP:25 vraća samo TCP veze na portu 25. Opseg portova se može navesti crticom, jer -iTCP:25-50.
- Upotreba [email protected] vraća samo veze na IPv4 adresu 1.2.3.4. IPv6 adrese se mogu specificirati na isti način. Prekursor @ se također može koristiti za specificiranje imena hosta na isti način, ali i udaljene IP adrese i imena hosta ne mogu se koristiti istovremeno.
- - s obično prisiljava lsof da prikaže veličinu datoteke. Ali kada je uparen sa - i zastavicom, - s radi drugačije. Umjesto toga, omogućava korisniku da specificira protokol i status za naredbu koju će vratiti.
- - p ograničava lsof na određeni ID procesa (PID). Više PID-ova može se postaviti korištenjem zajedničkih oznaka, kao što je -p 123, 456, 789. ID-ovi procesa se također mogu isključiti sa ^, kao u 123, ^456, što bi posebno isključilo PID 456.
- - P onemogućava konverziju brojeva portova u nazive portova, ubrzavajući izlaz.
- - n onemogućava konverziju mrežnih brojeva u imena hostova. Kada se koristi sa - P iznad, može značajno ubrzati lsof-ov izlaz.
- - u korisnik vraća samo komande u vlasništvu imenovanog korisnika.
nekoliko primjera
Evo nekoliko načina da koristite lsof.
lsof -nP [email protected]:513
Ova komanda složenog izgleda navodi TCP veze sa imenom hosta lsof.itap i portom 513. Takođe pokreće lsof bez povezivanje imena sa IP adresama i portovima, čineći da naredba radi znatno brže.
lsof -iTCP -sTCP:LISTEN
Ova komanda vraća svaku TCP vezu sa statusom LISTEN, otkrivajući otvorene TCP portove na Mac-u. Također navodi procese povezane s tim otvorenim portovima. Ovo je značajna nadogradnja u odnosu na netstat, koji navodi najviše PID-ove.
sudo lsof -i -u^$(whoami)
Druge mrežne komande
Druge mrežne komande terminala koje bi mogle biti od interesa za ispitivanje vaše mreže uključuju arp, ping i ipconfig.