Skip to main content

Hogyan használjuk a Netstat parancsot Mac-en?

Tófólia Oasefol Epdm lyuk ragasztás (Lehet 2024)

Tófólia Oasefol Epdm lyuk ragasztás (Lehet 2024)
Anonim

A macOS-ban a netstat parancs egy Terminál parancs, amely a Mac hálózati kommunikációjára vonatkozó részletes információkat jeleníti meg. A hálózati kommunikáció magában foglalja mindazokat a módokat, ahogy a Mac a külvilággal, az összes porton és az összes alkalmazáson keresztül beszél. A netstat felismerése után a Mac felhasználók gyorsan megérthetik, hogy a számítógép milyen kapcsolatokat hoz létre és miért.

Netstat futtatása

A netstat parancs alapértelmezés szerint Mac-en érhető el. Nem kell letölteni vagy telepíteni.

A netstat futtatásához nyissa meg a Terminál ablakot. Ha nem ismeri a terminált, megtalálható a /Applications/Utilities/Terminal.app címen. típus netstat és a parancs végrehajtásához nyomja meg az Enter billentyűt.

Észre fogod venni, hogy óriási mennyiségű rejtett szöveg kezd görgetni a képernyőn. Ez normális és várható. További lehetőségek nélkül a netstat minden aktív hálózati kapcsolatot jelent a Mac rendszeren. Figyelembe véve a modern hálózati eszköz funkcióinak számát, a lista hosszadalmas lehet. Egy szabványos netstat jelentés több mint 1000 sorban működhet.

A netstat kimenetének szűrése elengedhetetlen ahhoz, hogy megértsük, mi történik a Mac aktív portjain. A netstat kimenetét a beépített zászlókkal szűrheti. Ezek a zászlók lehetővé teszik a beállítások beállítását, korlátozva a netstat hatókörét és kimenetét.

Netstat zászlók és opciók

A netstat összes elérhető opciójának megtekintéséhez írja be a man netstat parancsot a parancssorba. Ez feltárja a netstat man oldalát. A netstat man oldal online verzióját is megtekintheti.

netstat -AabdgiLlmnqrRsSvWx -c sorban áll -f address_family -ÉN felület -p protokoll -w várjon

A netstat a MacOS-on nem ugyanúgy működik, mint a netstat a Windows vagy a netstat Linux alatt. A netstat implementációinak zászlóinak vagy szintaxisának használata nem eredményezheti a várt viselkedést.

Tipp: Ha a fenti rövidítés teljesen megfoghatatlan, akkor olvassa el a parancs szintaxisát.

-r megjeleníti az útválasztási táblázatot, amely bemutatja, hogy a csomagok hogyan vannak a hálózaton.

-p protokoll felsorolja az adott hálózati protokollhoz kapcsolódó forgalmat. Bár a protokollok teljes listája megtalálható az / etc / protokollokban, a legfontosabbak az udp és a tcp.

-v növeli a szövegességet, konkrétan egy oszlop hozzáadásával, amely bemutatja az egyes nyitott porthoz tartozó folyamatazonosítót (PID).

-ÉN felület csomagkapcsolt adatátvitel biztosítja a megadott interfészt. Valamennyi elérhető felületet a -i jelzővel lehet megtekinteni, de en0 általában az alapértelmezett kimenő hálózati interfész. Vegye figyelembe az apró betűket.

-g a multicast kapcsolatokkal kapcsolatos információkat jeleníti meg.

-s az összes protokollhoz tartozó hálózati statisztikát mutatja, függetlenül attól, hogy aktív-e vagy sem.

-n elnyomja a távoli címek címkével ellátott neveket. Ez drámaian felgyorsítja a netstat kimenetét, miközben csak korlátozott információt áldoz.

-a tartalmazza a kiszolgáló portokat a netstat kimenetében, amelyek nem szerepelnek az alapértelmezett kimenetben.

Netstat példák

Ahhoz, hogy a gyakorlatunkat megértsük, nézzünk néhány netstat példát.

netstat -apv TCP

Ez a parancs csak TCP-kapcsolatokat fog visszaadni a Mac rendszeren, beleértve a nyitott portokat és az aktív portokat. Szintén kiterjedt kimenetet használ, amely felsorolja az egyes kapcsolatokhoz tartozó PID-eket.

netstat -a | grep -i "listen"

A netstat és a grep ezen kombinációja nyitott portokat tár fel a Mac rendszeren. A megnyitott portok olyan portok, amelyek egy üzenetet hallgatnak. Ha nem ismeri a szintaxist, a csík karaktert | egy parancs kimenetének elküldésére szolgál egy másik parancsra. A netstat kimenetét a grep-ba bontjuk, lehetővé téve, hogy keressük meg a "listen" kulcsszavakat, és találjuk meg az eredményeket.

A netstat elérése a Network Utility segítségével

A Terminal parancssori felületen keresztüli teljes körű használat mellett a netstat funkciói közül néhány elérhető a Network Utility alkalmazáson keresztül is. Ez a beépített MacOS alkalmazás megtalálható a / Applications / Utilities / Network Utility.app. Nyissa meg az alkalmazást, és kattintson a netstat fül a netstat grafikus felületének eléréséhez.

A hálózati segédprogramban található lehetőségek egyértelműen sokkal korlátozottabbak, mint a parancssorból elérhetők. A négy rádiókapcsoló egyszerűen futtat egy előre beállított netstat parancsot, és megjeleníti a kimenetet az alábbi képernyőn.

Az egyes rádiógombok netstat parancsjai a következők:

  • Az útvonalterületi információ megjelenítése fut netstat -r
  • Mutasson átfogó statisztikákat az egyes protokollokról fut a netstat -s
  • Multicast információk megjelenítése fut a netstat -g
  • Az aktuális aljzat-kapcsolatok állapotának megjelenítése fut a netstat

A netstat kiegészítése lsof-val

Az a tény, hogy a netstat macOS implementációja nem tartalmazza a felhasználók által elvárt és szükséges funkciókat. Miközben használta, a netstat nem olyan hasznos a MacOS-ban, mint a Windows rendszeren. Egy másik parancs, az lsof, helyettesítheti a hiányzó funkciók nagy részét.

Az lsof megjeleníti az összes alkalmazás által jelenleg megnyitott fájlokat. Ez az alkalmazásokhoz kapcsolódó nyitott portok ellenőrzésére is használható. Futtasd az lsof -i parancsot, és megjelenik az interneten keresztül kommunikáló összes alkalmazás listája. Ez általában a netstat Windows gépeken történő használata esetén a cél. Azonban az egyetlen értelmes módja ennek a feladatnak a MacOS-ban való végrehajtására nem a netstat, hanem az lsof.

Az összes megnyitott fájl vagy internet kapcsolat megjelenítése gyakran túlnyomórészt szórakoztató.Ezért van az, hogy az lsof számos zászlót tartalmaz az eredmények korlátozására meghatározott kritériumok alapján. Számos hasznos zászló található, amelyek kibővítik a parancs segédprogramját. A legfontosabbak az alábbiak. A további olvasáshoz, beleértve az egyes zászlók megvalósításának több zászlaját és technikai magyarázatát, nézd meg az lsof man oldalát, vagy futtasd ember lsof egy Terminál ablakban.

lsof zászlók és opciók

-én megjeleníti az összes nyitott hálózati kapcsolatot és annak a folyamatnak a nevét, amely a kapcsolatot használja. Hozzáadása a 4, mint a -i4, csak IPv4-kapcsolatokat jelenít meg. Hozzáad egy 6 helyett (-i6) csak IPv6 kapcsolatokat jelenít meg.

A -én A zászló is bővíthető további részletek megadására. Az iTCP vagy a -iUDP csak TCP és UDP kapcsolatokat továbbít. Az iTCP: 25 csak a 25-ös porton visszaküldi a TCP-kapcsolatokat. A portok tartományát kötegekkel lehet megadni, mivel az -iTCP: 25-50.

A [email protected] használatával csak az 1.2.3.4 IPv4-címhez csatlakozik. Az IPv6 címeket ugyanúgy lehet megadni. Az @ prekurzor ugyanúgy használható a gazdanévnevek megadására, de a távoli IP-címeket és a gépneveket egyidejűleg nem lehet használni.

-s tipikusan erõsíti a fájlt. De amikor a -én zászló, -s másképp működik. Ehelyett lehetővé teszi a felhasználó számára, hogy megadja a visszatérési parancs protokollját és állapotát.

-p az lsof-ot egy adott folyamatazonosítóra (PID) korlátozza. A többszörös PID-eket a közönség, például a -p 123,456,789 használatával lehet beállítani. A folyamatazonosítókat szintén kizárhatjuk egy ^, mint a 123, ^ 456-ban, ami kifejezetten kizárja a PID 456-ot.

-P kikapcsolja a portszámok port nevekké történő átalakítását, felgyorsítja a kimenetet.

-n letiltja a hálózati számok host nevekké történő átalakítását. Ha használják -P a fentiek alapján jelentősen felgyorsíthatja az lsof kimenetét.

-u használó csak a megadott felhasználó tulajdonában lévő parancsokat adja vissza.

lsof példák

Mint a netstat is, néhány példa az lsof-ra, segíteni fogja a megértést.

lsof [email protected]: 513

Ez a komplex keresési parancs felsorolja a TCP kapcsolatokat a gazdagépnévvel lsof.itap és a kikötő 513. Az lsof-ot úgy is futtatják, hogy nem nevezik az IP-címeket és portokat, így a parancs észrevehetően gyorsabban fut.

lsof -iTCP -sTCP: LISTEN

Ez minden TCP-kapcsolatot visszaad az állapotával HALLGAT. Ez feltárja a Mac nyílt TCP portjait. Emellett felsorolja a nyitott portokhoz kapcsolódó folyamatokat. Ez egy jelentős frissítés a netstat felett, amely legfeljebb PID listákat tartalmaz.

sudo lsof -i -u ^ $ (whoami)

Minden kapcsolatot visszaad nem a jelenleg bejelentkezett felhasználó tulajdonában van. Ez a parancs kissé eltér a többiektől, ezért részletesen lebontjuk.

A caret-et negáláshoz használjuk. Bármi, ami a szövegnek a szöveg után illeszkedik, eltűnik az eredményekből. Futtatással kapjuk meg az aktuálisan bejelentkezett felhasználó nevét Ki vagyok én az lsof parancs belsejében, körülvéve $() hogy hagyja, hogy a kimenet szövegként érjen el. A sudo használatával olyan feladatokat láthat, amelyek nem saját tulajdonúak. Ha ezt a parancsot sudo nélkül futtatja, üres listát ad vissza.

Egyéb hálózati parancsok

Más Terminál hálózati parancsok, amelyek érdekesek lehetnek a hálózat megvizsgálásában: arp, ping és ipconfig.