AllInfo

Het Gebruik van netstat op Linux

Fatmawati Achmad Zaenuri/Shutterstock

De Linux-opdracht netstat geeft u een schat aan informatie zien over je netwerk verbindingen, de poorten die in gebruik zijn, en de processen met behulp van hen. Leren hoe om het te gebruiken.

Poorten, Processen en Protocollen

Netwerk-aansluitingen kunnen worden aangesloten, of wacht op een verbinding. De verbindingen netwerkprotocollen zoals Transport Control Protocol (TCP) of User Datagram Protocol-UDP. Ze maakt gebruik van Internet Protocol-adressen en poorten tot stand brengen van verbindingen.

Het woord sockets mogelijk roepen beelden op van een fysieke verbinding met een leiding of kabel, maar in deze context, een socket is een constructie in software gebruikt voor het verwerken van het ene uiteinde van een netwerkverbinding.

Stopcontacten hebben twee belangrijke staten: Zij zijn verbonden en het faciliteren van een voortdurende communicatie van het netwerk, of ze wachten op een binnenkomende verbinding om verbinding te maken. Er zijn andere landen, zoals de staat als een socket is halverwege de oprichting van een aansluiting op een extern apparaat, maar van voorbijgaande aard staten opzij, u kunt denken aan een socket als verbonden of te wachten (die vaak genoemd luisteren).

De luisterende socket wordt de server genoemd, en de aansluiting met het verzoek om een verbinding met de luisterende socket is een zogenaamde client. Deze namen hebben niets te maken met de hardware of de computer rollen. Ze gewoon het definiëren van de rol van elk van de aansluiting aan elk uiteinde van de verbinding.

Het netstat commando kunt u ontdekken welke aansluitingen zijn aangesloten en die houders zijn van het luisteren. Betekenis, het vertelt je welke poorten in gebruik zijn en welke processen worden gebruikt. Het kan je laten zien routing tabellen en statistieken over uw netwerk interfaces en multicast-verbindingen.

De functionaliteit van netstat is gerepliceerd loop van de tijd in verschillende Linux-programma ‘ s zoals ip en de ss. Het is nog steeds de moeite waard te weten deze grootvader van alle netwerk analyse-opdrachten, omdat het beschikbaar is op alle Linux-en Unix-achtige operating systemen, en zelfs op Windows en Mac.

Hier is hoe het te gebruiken, compleet met voorbeeld commando ‘ s.

Lijst Van Alle Sockets

De-a (alle) optie maakt netstat toon alle aangesloten en wachten op aansluitingen. Deze opdracht is aansprakelijk voor het produceren van een lange lijst, dus we pijp in minder.

netstat -a | minder

De lijst bevat TCP (IP), TCP6 (IPv6) en UDP-sockets.

De wrap-around in het terminal-venster maakt het een beetje moeilijk om te zien wat er gaande is. Hier is een paar hoofdstukken uit die lijst:

Actieve Internet verbindingen (servers en gevestigde)
Proto Recv-Q Stuur-Q Lokaal Adres Buitenlands Adres Staat
tcp 0 0 localhost:domein 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:ipp 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp-0.0.0.0:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LUISTEREN
tcp6 0 0 ip6-localhost:ipp [::]:* LUISTEREN
.
.
.
Actieve UNIX domein sockets (servers en gevestigde)
Proto RefCnt Vlaggen Type Staat I-Node Pad
unix 24 [ ] DGRAM 12831 /run/systemd/journal/dev-log
unix-2 [ ACC ] STREAM LUISTEREN 24747 @/tmp/dbus-zH6clYmvw8
unix-2 [ ] DGRAM 26372 /run/user/1000/systemd/melden
unix-2 [ ] DGRAM 23382 /run/user/121/systemd/melden
unix-2 [ ACC ] SEQPACKET LUISTEREN 12839 /run/udev/controle

De “Actieve Internet” sectie is een lijst van de aangesloten externe verbindingen en de lokale sockets luisteren voor externe verbinding aanvragen. Dat is, worden de netwerk-verbindingen die zijn (of zullen worden), opgericht op externe apparaten.

De “UNIX domein” sectie is een lijst van de aangesloten en het luisteren van de inwendige verbindingen. In andere woorden, het toont de verbindingen die tot stand zijn gekomen in uw computer worden tussen verschillende applicaties, processen en elementen van het besturingssysteem.

De “Actieve Internet” kolommen zijn:

Voor TCP-verbindingen, de staat van waarde kan een van de volgende handelingen uit :

De “Unix domein” kolommen zijn:

De Unix domein socket-type kan een van de volgende handelingen uit:

De Unix domein socket staat kan een van de volgende handelingen uit:

Wow, dat is een hoop informatie! Veel van de netstat opties voor het verfijnen van de resultaten op één of andere manier, maar ze veranderen niet de inhoud te veel. Laten we een kijkje nemen.

Lijst Sockets per Type

De opdracht netstat-a, kan meer informatie geven dan je nodig hebt om te zien. Als u alleen wilt of nodig hebt om de TCP sockets, kunt u gebruik maken van de -t (TCP) optie voor het beperken van het display aan laten alleen TCP sockets.

netstat -in | minder

Het display uit is sterk verminderd. Het aantal contactdozen die worden vermeld zijn alle TCP sockets.

De -u (UDP) en -x (UNIX) opties gedragen zich op een vergelijkbare manier, het beperken van de resultaten van het type socket opgegeven op de opdracht regel. Hier is het -u (UDP) optie in gebruik:

netstat -au | minder

Alleen UDP-sockets worden vermeld.

Lijst Sockets van de door de Staat

Om de aansluitingen die zijn in het luisteren naar of wachten op staat, gebruik je de-l (luisteren) optie.

netstat -l | minder

De contactdozen die worden vermeld, zijn degenen die in het luisteren staat.

Dit kan gecombineerd worden met de -t (TCP, -u (UDP) en -x (UNIX) opties om verder in te kunnen spelen op de sockets van belang. Laten we er voor het luisteren TCP sockets:

netstat -lt | minder

Nu zien we alleen luisteren TCP sockets.

Netwerk Statistieken per Protocol

Om de statistieken te zien voor een protocol, gebruik je de-s (statistieken) optie en pas in de -t (TCP), -u (UDP), of -x (UNIX) opties. Als u gewoon gebruik maken van de -s (statistieken) de optie op zijn eigen, ziet u de statistieken voor alle protocollen. Kijkt u eens naar de statistieken voor het TCP-protocol.

netstat -st | minder

Een verzameling van statistieken voor de TCP-verbindingen is weergegeven in minder.

Het tonen van het Proces Namen en pid ‘ s

Het kan nuttig zijn om de proces-ID (PID) van het proces met behulp van een stopcontact, samen met de naam van dat proces. De -p (programma) – optie doet. Laten we eens kijken wat de pid ‘ s en proces worden de namen van de processen met behulp van een TCP-socket, dat is in het luisteren staat. Wij maken gebruik van sudo ervoor te zorgen dat we het ontvangen van alle informatie die beschikbaar is, met inbegrip van alle informatie die normaal vereist root rechten.

sudo netstat -p -op

Hier is dat de output in een opgemaakte tabel:

Actieve Internet verbindingen (servers en gevestigde)
Proto Recv-Q Stuur-Q Lokaal Adres Buitenlands Adres Staat PID/naam van het Programma
tcp 0 0 localhost:domein 0.0.0.0:* LISTEN 6927/systemd-resolv
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN 751/sshd
tcp 0 0 localhost:ipp 0.0.0.0:* LISTEN 7687/cupsd
tcp 0 0 localhost:smtp-0.0.0.0:* LISTEN 1176/master
tcp6 0 0 [::]:ssh [::]:* LUISTEREN 751/sshd
tcp6 0 0 ip6-localhost:ipp [::]:* LUISTEREN 7687/cupsd
tcp6 0 0 ip6-localhost:smtp – [::]: * LUISTEREN 1176/master

We hebben een extra kolom genaamd “PID/naam van het programma.” Deze kolom geeft de PID en de naam van het proces met behulp van elk van de aansluitingen.

Lijst Numerieke Adressen

Een andere stap die we kunnen nemen om bepaalde dubbelzinnigheid is voor de lokale en remote-adressen IP-adressen in plaats van hun opgelost domein en host namen. Als we gebruik maken van de -n (numerieke) optie, de IPv4-adressen zijn weergegeven in decimale notatie:

sudo netstat-an | minder

De IP-adressen worden weergegeven als numerieke waarden. De poort nummers zijn ook weergegeven, gescheiden door een dubbele punt ” : “vanaf het IP-Adres.

Een IP-adres 127.0.0.1 blijkt dat de socket is gebonden aan het loopback-adres van de lokale computer. U kunt denken aan een IP-adres 0.0.0.0, in de betekenis van de “standaardroute” voor lokale adressen, en “IP-adres” voor buitenlandse adressen. IPv6-adressen weergegeven als “::” ook al nul adressen.

De havens die zijn vermeld, gemakkelijk kan worden gecontroleerd om te zien wat hun gebruikelijke doel is:

GERELATEERD: Wat is het Verschil Tussen 127.0.0.1 en 0.0.0.0?

Het weergeven van de Routing-Tabel

De -r (route) optie geeft de kernel routeringstabel.

sudo netstat -r

Hier is dat de output in een nette tabel:

Kernel IP routing table
Bestemming Gateway Genmask Vlaggen MSS Venster irtt Iface
standaard Slagkracht.router 0.0.0.0 UG 0 0 0 enp0s3
link-lokaal 0.0.0.0 255.255.0.0 U 0 0 0 enp0s3
192.168.4.0 255.255.255.0 0.0.0.0 U 0 0 0 enp0s3

En, hier is wat de kolommen betekenen:

De vlaggen waarde kan zijn:

Het vinden van de Poort die wordt Gebruikt door een Proces

Als we de pijp van de uitvoer van netstat door grep, kunnen we op zoek naar een proces met de naam en het identificeren van de poort in gebruik is. We maken gebruik van de-a (alle), -n (numeriek) en -p (programma) opties eerder hebt gebruikt, en zoek naar “sshd.”

sudo netstat -anp | grep “sshd”

grep vindt de doel-string, en we zien dat de sshd daemon is het gebruik van poort 22.

Natuurlijk kunnen we dit ook doen in omgekeerde richting. Als we zoeken naar “:22”, kunnen we ontdekken dat proces is met behulp van die poort, indien van toepassing.

sudo netstat -anp | grep “:22”

Deze keer grep vindt het “:22” target string, en we zien dat het proces met behulp van deze haven is de sshd daemon, proces-ID 751.

Een lijst van de Netwerk Interfaces

De-i (interfaces) optie verschijnt een tabel van de netwerk interfaces die netstat kan ontdekken.

sudo netstat -i

Hier is de output in een meer leesbare manier:

Kernel Interface tabel
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
enp0s3 1500 4520671 0 0 0 4779773 0 0 0 BMRU
lo 65536 30175 0 0 0 30175 0 0 0 LRU

Dit is wat de kolommen betekenen:

De vlaggen vertegenwoordigen de volgende:

Lijst Multicast-Groep Lidmaatschappen

Simpel gezegd, een multicast-overdracht mogelijk maakt om een pakket te worden verzonden slechts een keer, ongeacht het aantal ontvangers. Voor services zoals video-streaming, bijvoorbeeld, dit verhoogt de efficiëntie van de afzender standpunt door een enorme hoeveelheid.

De -g (groepen) optie maakt netstat lijst van de multicast-groep lidmaatschap van sockets op elke interface.

sudo netstat -g

De kolommen zijn vrij eenvoudig:

De New Kids on the Block

De route, ip, ifconfig, en ss-commando ‘ s kan zorgen voor een veel van wat netstat is in staat te laten zien. Ze zijn allemaal commando ‘ s en de moeite waard.

We hebben gericht op netstat omdat het overal beschikbaar is, ongeacht van welke Unix-achtig besturingssysteem dat u aan het werk bent, zelfs de obscure degenen.

LEES VERDER

Exit mobile version