Omitir Vínculos de navegación | |
Salir de la Vista de impresión | |
Configuración y administración de redes Oracle Solaris 11.1 Oracle Solaris 11.1 Information Library (Español) |
1. Planificación de la implementación de red
2. Consideraciones para el uso de direcciones IPv6
3. Configuración de una red IPv4
4. Activación de IPv6 en una red
5. Administración de una red TCP/IP
Tareas de administración principales de TCP/IP (mapa de tareas)
Supervisión del estado de la red con el comando netstat
Cómo visualizar estadísticas por protocolo
Cómo visualizar el estado de protocolos de transporte
Cómo visualizar el estado de interfaces de red
Cómo visualizar el estado de los sockets
Cómo visualizar el estado de las transmisiones de paquetes de un determinado tipo de dirección
Cómo visualizar el estado de rutas conocidas
Sondeo de hosts remotos con el comando ping
Cómo determinar si un host remoto está en ejecución
Cómo determinar si un host descarta paquetes
Administración y registro de la visualización del estado de la red
Cómo controlar la salida de visualización de comandos relacionados con IP
Cómo registrar acciones del daemon de rutas de IPv4
Cómo efectuar el seguimiento de las actividades del daemon de descubrimiento cercano de IPv6
Visualización de información de enrutamiento con el comando traceroute
Cómo saber la ruta de un host remoto
Cómo efectuar el seguimiento de todas las rutas
Control de transferencias de paquetes con el comando snoop
Cómo comprobar paquetes de todas las interfaces
Cómo capturar la salida del comando snoop en un archivo
Cómo comprobar paquetes entre un cliente y un servidor IPv4
Cómo supervisar tráfico de redes IPv6
Supervisión de paquetes mediante dispositivos de capa IP
Administración de selección de direcciones predeterminadas
Cómo administrar la tabla de directrices de selección de direcciones IPv6
Cómo modificar la tabla de selección de direcciones IPv6 sólo para la sesión actual
El comando snoop es apto para supervisar el estado de las transferencias de datos. El comando snoop captura paquetes de red y muestra su contenido en el formato que se especifica. Los paquetes se pueden visualizar nada más recibirse o se pueden guardar en un archivo. Si el comando snoop escribe en un archivo intermedio, es improbable que haya pérdidas de paquete en situaciones de seguimiento ocupado. El propio comando snoop se utiliza para interpretar el archivo.
Para capturar paquetes en y desde la interfaz predeterminada en modo promiscuo, se debe adquirir la función de administración de redes o convertirse en superusuario. En el formato resumido, snoop sólo muestra los datos relativos al protocolo de nivel más alto. Por ejemplo, un paquete de NFS muestra únicamente información de NFS. Se suprime la información subyacente de RPC, UDP, IP y Ethernet; sin embargo, se puede visualizar en caso de elegir cualquiera de las opciones detalladas.
Utilice el comando snoop con frecuencia y buen criterio para familiarizarse con el comportamiento normal del sistema. Para obtener asistencia en el análisis de paquetes, busque documentación técnica reciente y funciones de petición de comentarios; asimismo, solicite el consejo de un experto en un ámbito determinado, por ejemplo NFS o NIS. Para obtener más información sobre el comando snoop y sus opciones, consulte la página del comando man snoop(1M).
# ipadm show-if
El comando snoop suele utilizar el primer dispositivo que no es de bucle de retorno, en general la interfaz de red principal.
Ejemplo 5-15 Salida del comando snoop
La salida básica que genera el comando snoop se parece a la siguiente en el caso de un host de doble pila.
% snoop Using device /dev/net (promiscuous mode) router5.local.com -> router5.local.com ARP R 10.0.0.13, router5.local.com is 0:10:7b:31:37:80 router5.local.com -> BROADCAST TFTP Read "network-confg" (octet) myhost -> DNSserver.local.com DNS C 192.168.10.10.in-addr.arpa. Internet PTR ? DNSserver.local.com myhost DNS R 192.168.10.10.in-addr.arpa. Internet PTR niserve2. . . . fe80::a00:20ff:febb:e09 -> ff02::9 RIPng R (5 destinations)
Los paquetes que se capturan en esta salida muestran una sección de inicio de sesión remoto, incluidas las búsquedas en los servidores NIS y DNS para resolver direcciones. También se incluyen paquetes ARP periódicos del enrutador local y anuncios de la dirección local de vínculos IPv6 en el comando in.ripngd.
# snoop -o filename
Por ejemplo:
# snoop -o /tmp/cap Using device /dev/eri (promiscuous mode) 30 snoop: 30 packets captured
En el ejemplo, se han capturado 30 paquetes en un archivo que se denomina /tmp/cap. El archivo se puede ubicar en cualquier directorio que disponga de suficiente espacio en disco. La cantidad de paquetes capturados se muestra en la línea de comandos, y permite pulsar Control+C para cancelar en cualquier momento.
El comando snoop crea una evidente carga de red en el equipo host que puede distorsionar el resultado. Para ver el resultado real, snoop debe ejecutarse desde otro sistema.
# snoop -i filename
Ejemplo 5-16 Contenido de un archivo de capturas de la salida del comando snoop
La salida siguiente muestra distintas capturas que se pueden recibir como salida del comando snoop -i.
# snoop -i /tmp/cap 1 0.00000 fe80::a00:20ff:fee9:2d27 -> fe80::a00:20ff:fecd:4375 ICMPv6 Neighbor advertisement ... 10 0.91493 10.0.0.40 -> (broadcast) ARP C Who is 10.0.0.40, 10.0.0.40 ? 34 0.43690 nearserver.here.com -> 224.0.1.1 IP D=224.0.1.1 S=10.0.0.40 LEN=28, ID=47453, TO =0x0, TTL=1 35 0.00034 10.0.0.40 -> 224.0.1.1 IP D=224.0.1.1 S=10.0.0.40 LEN=28, ID=57376, TOS=0x0, TTL=47
El tercer sistema (sistema snoop) comprueba todo el tráfico involucrado, de manera que el seguimiento de snoop refleja lo que sucede realmente en la conexión.
Consulte RFC 1761, Snoop Version 2 Packet Capture File Format para obtener más información sobre el archivo de capturas del comando snoop.
El comando snoop puede utilizarse para supervisar únicamente paquetes de IPv6.
# snoop ip6
Para obtener más información sobre el comando snoop, consulte la página del comando man snoop(1M).
Ejemplo 5-17 Visualización sólo de tráfico de redes IPv6
En el ejemplo siguiente se muestra una salida típica que puede recibirse tras ejecutar el comando snoop ip6 en un nodo.
# snoop ip6 fe80::a00:20ff:fecd:4374 -> ff02::1:ffe9:2d27 ICMPv6 Neighbor solicitation fe80::a00:20ff:fee9:2d27 -> fe80::a00:20ff:fecd:4375 ICMPv6 Neighbor solicitation fe80::a00:20ff:fee9:2d27 -> fe80::a00:20ff:fecd:4375 ICMPv6 Neighbor solicitation fe80::a00:20ff:febb:e09 -> ff02::9 RIPng R (11 destinations) fe80::a00:20ff:fee9:2d27 -> ff02::1:ffcd:4375 ICMPv6 Neighbor solicitation
Los dispositivos de capa IP se agregan en Oracle Solaris para mejorar la observabilidad IP. Estos dispositivos ofrecen acceso a todos los paquetes con direcciones que están asociadas con la interfaz de red del sistema. Las direcciones incluyen direcciones locales y direcciones que están alojadas en interfaces que no son de bucle de retorno o interfaces lógicas. El tráfico observable puede incluir tanto direcciones IPv4 como direcciones IPv6. Por lo tanto, se puede supervisar todo el tráfico destinado al sistema. El tráfico puede incluir tráfico IP en bucle de retorno, paquetes de máquinas remotas, paquetes que se envían desde el sistema o todo el tráfico reenviado.
Con los dispositivos de capa IP, un administrador de una zona global puede supervisar el tráfico entre zonas y dentro de una zona. Un administrador de una zona no global también puede observar el tráfico que envía y recibe esa zona.
Para supervisar el tráfico en la capa IP, se agrega una nueva opción, -I, al comando snoop. Esta opción especifica que el comando debe utilizar los dispositivos de capa IP nuevos, en lugar del dispositivo subyacente de capa de enlace, para visualizar los datos de tráfico.
# ipadm show-if
# snoop -I interface [-V | -v]
Todos los ejemplos se basan en la siguiente configuración del sistema:
# ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 static ok 192.68.25.5/24 lo0/? static ok 127.0.0.1/8 net0/? static ok 172.0.0.3/24 net0/? static ok 172.0.0.1/24 lo0/? static ok 127.0.0.1/8
Suponga que dos zonas, sandbox y toybox, están utilizando las siguientes direcciones IP:
sandbox: 172.0.0.3
toybox: 172.0.0.1
Puede emitir el comando snoop -I en las distintas interfaces del sistema. La información de paquetes que se visualiza depende de si usted es administrador de la zona global o de la zona no global.
Ejemplo 5-18 Tráfico en la interfaz en bucle de retorno
# snoop -I lo0 Using device ipnet/lo0 (promiscuous mode) localhost -> localhost ICMP Echo request (ID: 5550 Sequence number: 0) localhost -> localhost ICMP Echo reply (ID: 5550 Sequence number: 0)
Para generar una salida detallada, utilice la opción -v.
# snoop -v -I lo0 Using device ipnet/lo0 (promiscuous mode) IPNET: ----- IPNET Header ----- IPNET: IPNET: Packet 1 arrived at 10:40:33.68506 IPNET: Packet size = 108 bytes IPNET: dli_version = 1 IPNET: dli_type = 4 IPNET: dli_srczone = 0 IPNET: dli_dstzone = 0 IPNET: IP: ----- IP Header ----- IP: IP: Version = 4 IP: Header length = 20 bytes ...
La compatibilidad para la observación de paquetes en la capa IP implementa un encabezado ipnet nuevo que precede a los paquetes que se están observando. Se indican los ID de origen y de destino. El ID '0' indica que el tráfico se genera en la zona global.
Ejemplo 5-19 Flujo de paquetes en el dispositivo net0 en las zonas locales
# snoop -I net0 Using device ipnet/net0 (promiscuous mode) toybox -> sandbox TCP D=22 S=62117 Syn Seq=195630514 Len=0 Win=49152 Options=<mss sandbox -> toybox TCP D=62117 S=22 Syn Ack=195630515 Seq=195794440 Len=0 Win=49152 toybox -> sandbox TCP D=22 S=62117 Ack=195794441 Seq=195630515 Len=0 Win=49152 sandbox -> toybox TCP D=62117 S=22 Push Ack=195630515 Seq=195794441 Len=20 Win=491
La salida muestra el tráfico que se produce en las distintas zonas dentro del sistema. Puede ver todos los paquetes que están asociados con las direcciones IP net0, incluidos los paquetes que se transfieren localmente a otras zonas. Si genera una salida detallada, puede ver las zonas que forman parte del flujo de paquetes.
# snoop -I net0 -v port 22 IPNET: ----- IPNET Header ----- IPNET: IPNET: Packet 5 arrived at 15:16:50.85262 IPNET: Packet size = 64 bytes IPNET: dli_version = 1 IPNET: dli_type = 0 IPNET: dli_srczone = 0 IPNET: dli_dstzone = 1 IPNET: IP: ----- IP Header ----- IP: IP: Version = 4 IP: Header length = 20 bytes IP: Type of service = 0x00 IP: xxx. .... = 0 (precedence) IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = not ECN capable transport IP: .... ...0 = no ECN congestion experienced IP: Total length = 40 bytes IP: Identification = 22629 IP: Flags = 0x4 IP: .1.. .... = do not fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 64 seconds/hops IP: Protocol = 6 (TCP) IP: Header checksum = 0000 IP: Source address = 172.0.0.1, 172.0.0.1 IP: Destination address = 172.0.0.3, 172.0.0.3 IP: No options IP: TCP: ----- TCP Header ----- TCP: TCP: Source port = 46919 TCP: Destination port = 22 TCP: Sequence number = 3295338550 TCP: Acknowledgement number = 3295417957 TCP: Data offset = 20 bytes TCP: Flags = 0x10 TCP: 0... .... = No ECN congestion window reduced TCP: .0.. .... = No ECN echo TCP: ..0. .... = No urgent pointer TCP: ...1 .... = Acknowledgement TCP .... 0... = No push TCP .... .0.. = No reset TCP: .... ..0. = No Syn TCP: .... ...0 = No Fin TCP: Window = 49152 TCP: Checksum = 0x0014 TCP: Urgent pointer = 0 TCP: No options TCP:
El encabezado ipnet indica que el paquete proviene de la zonal global (ID 0) y se dirige a Sandbox (ID 1).
Ejemplo 5-20 Observación del tráfico mediante la identificación de la zona
# snoop -I hme0 sandboxsnoop -I net0 sandbox Using device ipnet/hme0 (promiscuous mode) toybox -> sandbox TCP D=22 S=61658 Syn Seq=374055417 Len=0 Win=49152 Options=<mss sandbox -> toybox TCP D=61658 S=22 Syn Ack=374055418 Seq=374124525 Len=0 Win=49152 toybox -> sandbox TCP D=22 S=61658 Ack=374124526 Seq=374055418 Len=0 Win=49152 #
La capacidad de observar paquetes identificando la zona es útil en sistemas que tienen varias zonas. En la actualidad, únicamente se puede identificar la zona con el ID de zona. No se admite el uso de snoop con nombres de zonas.