netstat - netstat

netstat
Netstat screenshot.png
Den netstat kommandoen
Udvikler (er) Forskellige open-source og kommercielle udviklere
Første udgivelse 1983 ; 38 år siden ( 1983 )
Operativ system Unix , Unix-lignende , Plan 9 , Inferno , OS/2 , Microsoft Windows , ReactOS
Platform På tværs af platforme
Type Kommando
Licens OS/2, Windows: Proprietære kommercielle software
netværktøjer, ReactOS: GPLv2

I computing , netstat( netto arbejde stat istics ) er en kommando-linje netværk hjælpeprogram , der viser netværksforbindelser for Transmission Control Protocol (både indgående og udgående), routing tabeller , og en række netværk interface ( Network Interface Controller eller software-defineret netværksinterface ) og netværksprotokolstatistik. Det er tilgængeligt på Unix , Plan 9 , Inferno og Unix-lignende operativsystemer, herunder macOS , Linux , Solaris og BSD . Det er også tilgængeligt på IBM OS/2 og på Microsoft Windows NT -baserede operativsystemer, herunder Windows XP , Windows Vista , Windows 7 , Windows 8 og Windows 10 .

Det bruges til at finde problemer i netværket og til at bestemme mængden af ​​trafik på netværket som en ydelsesmåling. På Linux er dette program for det meste forældet, selvom det stadig er inkluderet i mange distributioner.

På Linux netstaterstattes (del af "net-tools") af ss(del af iproute2 ). Erstatningen til netstat -rer ip route, erstatningen til netstat -ier ip -s link, og erstatningen til netstat -ger ip maddr, som alle anbefales i stedet.

Leveret statistik

Image
De ReactOS netstat kommando

Netstat leverer statistik for følgende:

  • Proto - Protokollens navn ( TCP eller UDP ).
  • Lokal adresse - IP -adressen på den lokale computer og det portnummer, der bruges. Navnet på den lokale computer, der svarer til IP -adressen og portens navn, vises, medmindre parameteren -n er angivet. En stjerne (*) vises for værten, hvis serveren lytter på alle grænseflader. Hvis porten endnu ikke er etableret, vises portnummeret som en stjerne.
  • Udenlandsk adresse - IP -adressen og portnummeret på den eksterne computer, som stikket er tilsluttet. Navnene, der svarer til IP -adressen og porten, vises, medmindre parameteren -n er angivet. Hvis porten endnu ikke er etableret, vises portnummeret som en stjerne (*).
  • Tilstand - Angiver tilstanden for en TCP -forbindelse. De mulige tilstande er som følger: CLOSE_WAIT, CLOSED, ESTABLISHED, FIN_WAIT_1, FIN_WAIT_2, LAST_ACK, LISTEN, SYN_RECEIVED, SYN_SEND og TIME_WAIT. Yderligere oplysninger om tilstande for en TCP -forbindelse findes i RFC  793 .

Parametre

Parametre, der bruges med denne kommando, skal være præfikset med en bindestreg (-) frem for en skråstreg ( / ). Nogle parametre understøttes ikke på alle platforme.

Navn Beskrivelse Windows ReactOS macOS BSD NetBSD FreeBSD Linux Solaris OS/2
-en Viser alle aktive forbindelser og de TCP- og UDP -porte, som computeren lytter til. Ja Ja Ja
-b Viser b inary (eksekverbar) programmets navn involveret i at skabe hver forbindelse eller lytter havn. ( Windows XP , Windows Server 2003 og nyere Windows -operativsystemer; ikke Microsoft Windows 2000 eller ældre). Ja Ingen Ingen
-b Årsager -i at rapportere det totale antal b ytes af trafik. Ingen Ja Ja Ingen
-e Viser e thernet statistikker, såsom antallet af bytes og pakker, der sendes og modtages. Denne parameter kan kombineres med -s . Ja Ja Ingen
-f Viser f Ully kvalificerede domænenavne < FQDN > for udenlandske adresser (kun tilgængelig på Windows Vista og nyere operativsystemer). Ja Ingen Ingen
-f Adresse Familie Visning af grænser for en bestemt socketadressefamilie , unix , inet , inet6 Ingen Ja Ingen
-g Skærme multicast g roup medlemskab information for både IPv4 og IPv6 (muligvis kun ses på nyere operativsystemer) Ingen Ingen Ja
-jeg Viser netværk I nterfaces og deres statistik Ingen Ingen Ja
-m Viser m Emory statistik for networking kode (vandløb statistik på Solaris). Ingen Ingen
-n Viser aktive TCP -forbindelser, men adresser og portnumre udtrykkes numerisk, og der gøres ikke noget forsøg på at bestemme navne. Ja Ja Ja
-o Viser aktive TCP -forbindelser og indeholder proces -id (PID) for hver forbindelse. Du kan finde programmet baseret på PID på fanen Processer i Windows Task Manager . Denne parameter kan kombineres med -a, -n og -p . Denne parameter er tilgængelig på Microsoft Windows XP , Windows Server 2003 og Windows 2000, hvis der bruges en hotfix. Ja Ingen Ingen
-p protokol Viser forbindelser til den p -protokol, der er angivet af protokollen . I dette tilfælde kan protokollen være tcp, udp, tcpv6 eller udpv6 . Hvis denne parameter bruges med -s til at vise statistik efter protokol, kan protokollen være tcp, udp, icmp, ip, tcpv6, udpv6, icmpv6 eller ipv6 . Ja Ja Ja
-s Vis som p rocesses bruger hvilke sokler (svarende til b af under Windows) (du skal være root for at gøre dette) Ingen Ingen Ja
-P -protokol Viser forbindelser til den p -protokol, der er angivet af protokollen . I dette tilfælde kan protokollen være ip, ipv6, icmp, icmpv6, igmp, udp, tcp eller rawip . Ingen Ingen Ja
-r Viser indholdet i IP r -udgangstabellen . (Dette svarer til den rute print -kommandoen under Windows.) Ja Ja Ja Ja
-s Viser s tatistik efter protokol. Som standard vises statistik for TCP- , UDP- , ICMP- og IP -protokollerne. Hvis IPv6 -protokollen til Windows XP er installeret, vises statistik for TCP over IPv6 , UDP over IPv6, ICMPv6 og IPv6 protokoller. Den -p parameter kan anvendes til at specificere et sæt protokoller. Ja Ja Ja
-t Vis kun TCP -forbindelser. Ingen Ja Ja
-u Vis kun UDP -forbindelser. Ingen Ingen Ja Ja
-W Vis bredt output - afkorter ikke værtsnavne eller IPv6 -adresser Ingen Ingen Ja Ingen
-x Viser NetworkDirect -forbindelser, lyttere og delte slutpunkter. Ja
-y Viser TCP -forbindelsesskabelonen for alle forbindelser. Kan ikke kombineres med de andre muligheder. Ja
-v Når det bruges sammen med -b , viser det sekvensen af ​​komponenter, der er involveret i oprettelsen af ​​forbindelses- eller lytteporten for alle eksekverbare filer. Ja Ingen Ingen
Interval Viser de valgte oplysninger igen hvert intervalsekund. Tryk på CTRL+C for at stoppe genvisningen. Hvis denne parameter udelades, udskriver netstat kun de valgte oplysninger én gang. Ja Ja Ingen
-h Viser hjælp ved kommandoprompten. Ja Ingen Ja Ja Ja Ja Ja Ja Ingen
-? Viser hjælp ved kommandoprompten. Ja Ingen Ingen Ingen Ingen Ingen Ingen Ingen Ja
/? Viser hjælp ved kommandoprompten. Ja Ja Ingen Ingen Ingen Ingen Ingen Ingen Ingen

Eksempler

Kryds platform

På macOS, BSD -systemer, Linux -distributioner og Microsoft Windows:

At vise s TATISTIK udelukkende for TCP eller UDP p rotocols, skriver en af følgende kommandoer:

netstat -sp tcp

netstat -sp udp

Unix-lignende

På Unix-lignende systemer:

Sådan vises alle porte, der er åbne ved en proces med id pid :

netstat -aop | grep "pid"

For løbende at vise åbne TCP- og UDP -forbindelser numerisk og også hvilket program, der bruger dem på Linux:

netstat -nutpacw

Windows

På Microsoft Windows:

For at vise aktive TCP -forbindelser og proces -id'erne hvert 5. sekund skal du skrive følgende kommando (fungerer kun på NT -baserede systemer eller Windows 2000 med hotfix):

netstat -o 5

For at vise aktive TCP-forbindelser og processen id'er ved hjælp af n umerical formular, skriv kommandoen følgende (værker på NT baserede systemer kun, eller Windows 2000 med hotfix):

netstat -no

*nix

Kommando Forklaring
netstat -a Viser alle stikkontakter, både lytter og ikke-lytter, alle protokoller som TCP, UDP osv.
netstat -at Viser kun TCP-forbindelser (-au viser kun UDP-forbindelser)
netstat -ant Viser alle TCP -forbindelser uden DNS -opløsning (vis i stedet IP -adresser).
netstat -al Viser kun lyttestik.
netstat -aep Vis også PID og til hvilket program hver socket hører, e tilføjer ekstra info som brugeren. Kør som root for at se alle PID'er.
netstat -s > file2.txt Viser netværksstatistik.
netstat -r Viser oplysninger om kernerouting. Dette er det samme output som route -e.
netstat -i Viser en tabel over alle netværksgrænseflader. Tilføj -e for at få output svarende til ifconfig.
netstat -ct Viser kontinuerligt TCP -forbindelser.
netstat -g Vis multicast -gruppemedlemskabsoplysninger for IPv4 og IPv6.
netstat -lntu Vis alle tjenester, der lytter til TCP og UDP, alle gratis åbne porte på den lokale maskine.
netstat -atnp | grep ESTA Viser alle aktuelt "etablerede" TCP -forbindelser.

Jokertegn

Netstat bruger en stjerne * som et wildcard, der betyder "enhver". Et eksempel ville være

Eksempel output:

 
....Local Address Foreign Address State
... *:smtp          *:*   LISTEN

Under "Lokal adresse" *betyder in *:smtp, at processen lytter på alle de netværksgrænseflader, maskinen har til porten, der er kortlagt som smtp (se /etc /services for service resolution). Dette kan også vises som 0.0.0.0. Den første *, in *:*, betyder, at forbindelser kan komme fra enhver IP -adresse, og den anden * *:*, betyder, at forbindelsen kan stamme fra en hvilken som helst port på den eksterne maskine.

Advarsler

Nogle versioner af netstatmangler eksplicitte feltafgrænsere i deres printf-genererede output, hvilket fører til numeriske felter, der kører sammen og dermed ødelægger outputdataene.

Platformsspecifikke bemærkninger

Image
Den MacOS netstat kommando

Under Linux kan rådata ofte hentes fra /proc/net/dev for at omgå den printf output -korruption, der opstår i netstats netværksgrænseflade statistikoversigt netstat -i, indtil problemet er rettet.

Windows -platformen kan netstat -oplysninger hentes ved at kalde funktionerne GetTcpTable og GetUdpTable i IP Helper API eller IPHLPAPI.DLL. De returnerede oplysninger omfatter lokale og eksterne IP -adresser , lokale og eksterne porte og (for GetTcpTable) TCP -statuskoder. Ud over kommandolinjen netstat.exe -værktøj, der leveres med Windows, er GUI -baserede netstat -programmer tilgængelige.

På Windows -platformen er denne kommando kun tilgængelig, hvis Internet Protocol ( TCP / IP ) -protokollen er installeret som en komponent i egenskaberne for et netværkskort i Netværksforbindelser.

Windows -platformen, der kører Remote Desktop Services (tidligere Terminal Services), viser den kun forbindelser for den aktuelle bruger, ikke for hele computeren.

macOS indeholder mappen/System/Library/CoreServices/Applications (eller/Applications/Utilities i OS X Mountain Lion og tidligere) et netværks -GUI -værktøj kaldet Network Utility , hvis fane Netstat kører netstat -kommandoen og viser dens output i fanen.

Se også

  • ss , et Linux -værktøj til at undersøge sockets fra iproute2 , der skulle erstatte netstat
  • lsof -i
  • bmon

Referencer

Yderligere læsning

eksterne links