El comando netstat genera visualizaciones que muestran el estado de la red y estadísticas de protocolo. El estado de los protocolos TCP, SCTP y los puntos finales de UDP puede visualizarse en formato de tabla. También puede visualizarse información sobre la tabla de enrutamiento e información de interfaces.
El comando netstat muestra varios tipos de datos de red, según la opción de línea de comandos que se haya seleccionado. Estas visualizaciones son sumamente útiles para administrar sistemas. A continuación se muestra la sintaxis básica del comando netstat:
netstat [-m] [-n] [-s] [-i | -r] [-f familia_direcciones]
En esta sección se describen las opciones que más se usan del comando netstat. Para obtener más información sobre todas las opciones de netstat, consulte la página de comando man netstat(1M).
La opción netstat -s muestra estadísticas de los protocolos UDP, TCP, SCTP, ICMP e IP.
Puede utilizar su cuenta de usuario de Oracle Solaris para obtener salidas del comando netstat.
En el ejemplo siguiente se muestra la salida del comando netstat - s. Se han truncado algunas partes. La salida puede indicar áreas en que el protocolo tiene problemas. Por ejemplo, la información estadística de ICMPv4 e ICMPv6 puede indicar dónde ha encontrado errores el protocolo ICMP.
RAWIP rawipInDatagrams = 4701 rawipInErrors = 0 rawipInCksumErrs = 0 rawipOutDatagrams = 4 rawipOutErrors = 0 UDP udpInDatagrams = 10091 udpInErrors = 0 udpOutDatagrams = 15772 udpOutErrors = 0 TCP tcpRtoAlgorithm = 4 tcpRtoMin = 400 tcpRtoMax = 60000 tcpMaxConn = -1 . . tcpListenDrop = 0 tcpListenDropQ0 = 0 tcpHalfOpenDrop = 0 tcpOutSackRetrans = 0 IPv4 ipForwarding = 2 ipDefaultTTL = 255 ipInReceives =300182 ipInHdrErrors = 0 ipInAddrErrors = 0 ipInCksumErrs = 0 . . ipsecInFailed = 0 ipInIPv6 = 0 ipOutIPv6 = 3 ipOutSwitchIPv6 = 0 IPv6 ipv6Forwarding = 2 ipv6DefaultHopLimit = 255 ipv6InReceives = 13986 ipv6InHdrErrors = 0 ipv6InTooBigErrors = 0 ipv6InNoRoutes = 0 . . rawipInOverflows = 0 ipv6InIPv4 = 0 ipv6OutIPv4 = 0 ipv6OutSwitchIPv4 = 0 ICMPv4 icmpInMsgs = 43593 icmpInErrors = 0 icmpInCksumErrs = 0 icmpInUnknowns = 0 . . icmpInOverflows = 0 ICMPv6 icmp6InMsgs = 13612 icmp6InErrors = 0 icmp6InDestUnreachs = 0 icmp6InAdminProhibs = 0 . . icmp6OutGroupQueries= 0 icmp6OutGroupResps = 2 icmp6OutGroupReds = 0 IGMP: 12287 messages received 0 messages received with too few bytes 0 messages received with bad checksum 12287 membership queries received SCTP sctpRtoAlgorithm = vanj sctpRtoMin = 1000 sctpRtoMax = 60000 sctpRtoInitial = 3000 sctpTimHearBeatProbe = 2 sctpTimHearBeatDrop = 0 sctpListenDrop = 0 sctpInClosed = 0 |
El comando netstat permite visualizar información sobre el estado de los protocolos de transporte. Para obtener más información, consulte la página de comando man netstat(1M).
Visualice el estado de los protocolos de transporte TCP y SCTP en un sistema.
$ netstat |
Visualice el estado de un determinado protocolo de transporte en un sistema.
$ netstat -P transport-protocol |
Los valores de la variable protocolo_transporte son tcp, sctp o udp.
En este ejemplo se muestra la salida del comando netstat básico. Sólo se muestra información de IPv4.
$ netstat TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State ----------------- -------------------- ----- ------ ----- ------ ------- lhost-1.login abc.def.local.Sun.COM.980 49640 0 49640 0 ESTABLISHED lhost-1.login ghi.jkl.local.Sun.COM.1020 49640 1 49640 0 ESTABLISHED remhost-1.1014 mno.pqr.remote.Sun.COM.nfsd 49640 0 49640 0 TIME_WAIT SCTP: Local Address Remote Address Swind Send-Q Rwind Recv-Q StrsI/O State ---------------- -------------- ----- ------ ------ ------ ------ ------- *.echo 0.0.0.0 0 0 102400 0 128/1 LISTEN *.discard 0.0.0.0 0 0 102400 0 128/1 LISTEN *.9001 0.0.0.0 0 0 102400 0 128/1 LISTEN |
En este ejemplo se muestran los resultados que se obtienen al especificar la opción -P del comando netstat.
$ netstat -P tcp TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State ----------------- -------------------- ----- ------ ----- ------ ------- lhost-1.login abc.def.local.Sun.COM.980 49640 0 49640 0 ESTABLISHED lhost.login ghi.jkl.local.Sun.COM.1020 49640 1 49640 0 ESTABLISHED remhost.1014 mno.pqr.remote.Sun.COM.nfsd 49640 0 49640 0 TIME_WAIT TCP: IPv6 Local Address Remote Address Swind Send-Q Rwind Recv-Q State If ---------------- ---------------------- ------ ----- ------ ----------- ----- localhost.38983 localhost.32777 49152 0 49152 0 ESTABLISHED localhost.32777 localhost.38983 49152 0 49152 0 ESTABLISHED localhost.38986 localhost.38980 49152 0 49152 0 ESTABLISHED |
La opción i del comando netstat muestra el estado de las interfaces de red que se configuran en el sistema local. Esta opción permite determinar la cantidad de paquetes que transmite un sistema y que recibe cada red.
En el ejemplo siguiente se muestra el estado de un flujo de paquetes IPv4 e IPv6 a través de las interfaces del host.
Por ejemplo, la cantidad de paquetes de entrada (Ipkts) que aparece en un servidor puede aumentar cada vez que un cliente intenta iniciar, mientras que la cantidad de paquetes de salida (Opkts) no se modifica. De esta salida puede inferirse que el servidor está viendo los paquetes de solicitud de inicio del cliente. Sin embargo, parece que el servidor no sabe responder. Esta confusión podría deberse a una dirección incorrecta en la base de datos hosts, ipnodes, o ethers.
No obstante, si la cantidad de paquetes de entrada permanece invariable, el equipo no ve los paquetes. De este resultado puede inferirse otra clase de error, posiblemente un problema de hardware.
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue lo0 8232 loopback localhost 142 0 142 0 0 0 hme0 1500 host58 host58 1106302 0 52419 0 0 0 Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis lo0 8252 localhost localhost 142 0 142 0 0 hme0 1500 fe80::a00:20ff:feb9:4c54/10 fe80::a00:20ff:feb9:4c54 1106305 0 52422 0 0 |
Mediante la opción -a del comando netstat se puede visualizar el estado de los sockets en el host local.
Escriba lo siguiente para visualizar el estado de los sockets y las entradas de tabla de enrutador:
Puede emplear su cuenta de usuario para ejecutar esta opción de netstat.
% netstat -a |
La salida del comando netstat -a muestra estadísticas exhaustivas. En el ejemplo siguiente se muestran partes de una salida típica de netstat -a.
UDP: IPv4 Local Address Remote Address State -------------------- -------------------- ------- *.bootpc Idle host85.bootpc Idle *.* Unbound *.* Unbound *.sunrpc Idle *.* Unbound *.32771 Idle *.sunrpc Idle *.* Unbound *.32775 Idle *.time Idle . . *.daytime Idle *.echo Idle *.discard Idle UDP: IPv6 Local Address Remote Address State If --------------------------------- --------------------------------- ---------- ----- *.* Unbound *.* Unbound *.sunrpc Idle *.* Unbound *.32771 Idle *.32778 Idle *.syslog Idle . . TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State -------------------- -------------------- ----- ------ ----- ------ ------- *.* *.* 0 0 49152 0 IDLE localhost.4999 *.* 0 0 49152 0 LISTEN *.sunrpc *.* 0 0 49152 0 LISTEN *.* *.* 0 0 49152 0 IDLE *.sunrpc *.* 0 0 49152 0 LISTEN . . *.printer *.* 0 0 49152 0 LISTEN *.time *.* 0 0 49152 0 LISTEN *.daytime *.* 0 0 49152 0 LISTEN *.echo *.* 0 0 49152 0 LISTEN *.discard *.* 0 0 49152 0 LISTEN *.chargen *.* 0 0 49152 0 LISTEN *.shell *.* 0 0 49152 0 LISTEN *.shell *.* 0 0 49152 0 LISTEN *.kshell *.* 0 0 49152 0 LISTEN *.login . . *.* 0 0 49152 0 LISTEN *TCP: IPv6 Local Address Remote Address Swind Send-Q Rwind Recv-Q State If ----------------------- ----------------------- ----- ------ ----- ------ ---- *.* *.* 0 0 49152 0 IDLE *.sunrpc *.* 0 0 49152 0 LISTEN *.* *.* 0 0 49152 0 IDLE *.32774 *.* 0 0 49152 |
Utilice la opción -f del comando netstat para ver estadísticas relacionadas con transmisiones de paquetes de una determinada familia de direcciones.
Visualice estadísticas de transmisiones de paquetes de IPv4 o IPv6.
$ netstat -f inet | inet6 |
Para ver información sobre transmisiones de IPv4, escriba inet como argumento de netstat -f. Utilice inet6 como argumento de netstat -f para ver información de IPv6.
En el ejemplo siguiente se muestra la salida del comando netstat - f inet.
TCP: IPv4 Local Address Remote Address Swind Send-Q Rwind Recv-Q State -------------------- -------------------- ----- ------ ----- ------ ------- host58.734 host19.nfsd 49640 0 49640 0 ESTABLISHED host58.38063 host19.32782 49640 0 49640 0 CLOSE_WAIT host58.38146 host41.43601 49640 0 49640 0 ESTABLISHED host58.996 remote-host.login 49640 0 49206 0 ESTABLISHED |
En el ejemplo siguiente se muestra la salida del comando netstat - f inet6.
TCP: IPv6 Local Address Remote Address Swind Send-Q Rwind Recv-Q State If ------------------ ------------------------- ----- ------ ----- ------ --------- ----- localhost.38065 localhost.32792 49152 0 49152 0 ESTABLISHED localhost.32792 localhost.38065 49152 0 49152 0 ESTABLISHED localhost.38089 localhost.38057 49152 0 49152 0 ESTABLISHED |
La opción -r del comando netstat muestra la tabla de rutas del host local. En esta tabla se muestra el estado de todas las rutas de las que el host tiene conocimiento. Esta opción de netstat puede ejecutarse desde la cuenta de usuario.
En el ejemplo siguiente se muestra la salida del comando netstat - r.
Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- host15 myhost U 1 31059 hme0 10.0.0.14 myhost U 1 0 hme0 default distantrouter UG 1 2 hme0 localhost localhost UH 42019361 lo0 Routing Table: IPv6 Destination/Mask Gateway Flags Ref Use If --------------------------- --------------------------- ----- --- ------ ----- 2002:0a00:3010:2::/64 2002:0a00:3010:2:1b2b:3c4c:5e6e:abcd U 1 0 hme0:1 fe80::/10 fe80::1a2b:3c4d:5e6f:12a2 U 1 23 hme0 ff00::/8 fe80::1a2b:3c4d:5e6f:12a2 U 1 0 hme0 default fe80::1a2b:3c4d:5e6f:12a2 UG 1 0 hme0 localhost localhost UH 9 21832 lo0 |
La tabla siguiente describe el significado de los parámetros de salida de pantalla del comando netstat —r.
Parámetro |
Descripción |
---|---|
Destination Destination/Mask |
Indica el host que es el punto final de destino de la ruta. La tabla de ruta IPv6 muestra el prefijo de un punto final de túnel 6to4 (2002:0a00:3010:2::/64) como punto final de destino de la ruta. |
Gateway |
Especifica el portal que se usa para enviar paquetes. |
Flags |
Indica el estado actual de la ruta. El indicador U especifica que la ruta está activa. El indicador G especifica que la ruta es a un portal. |
Use |
Muestra la cantidad de paquetes enviados. |
Interface |
Indica la interfaz concreta del host local que es el punto final de origen de la transmisión. |