Cómo usar el comando tcpdump en el sistema Linux

  

tcpdump es un comando de captura de paquetes en los comandos de Linux. Puede interceptar y analizar paquetes de datos transmitidos por la red. Es una muy poderosa herramienta de recolección y análisis de datos de la red. Cómo usar el comando tcpdump en sistemas Linux. La siguiente serie pequeña hace una breve introducción al uso del comando tcpdump.

Ejemplos prácticos de comandos

por defecto de arranque

tcpdump

En circunstancias normales, tcpdump arranque directo supervisará todas las corrientes en la primera interfaz de red El paquete de datos pasado.

Monitoreo de paquetes para una interfaz de red específica

tcpdump -i eth1

Si no especifica una tarjeta de red, el tcpdump predeterminado solo monitoreará la primera interfaz de red, típicamente eth0, a continuación Los ejemplos no especifican una interfaz de red.

Monitoreo de paquetes para un host especificado

Imprime todos los paquetes que entran o salen de la puesta del sol.

Tcpdump host sundown

También puede especificar ip, por ejemplo, para interceptar todos los paquetes recibidos y enviados por todos los hosts 210.27.48.1

tcpdump host 210.27.48.1 < Br>

Imprime los paquetes de datos con los que helios se comunica con hot o with ace

tcpdump host helios y \\ (hot or as \\)

intercepta host 210.27.48.1 y host 210.27. Comunicación con 48.2 o 210.27.48.3

tcpdump host 210.27.48.1 y \\ (210.27.48.2 o 210.27.48.3 \\)

Imprima paquetes IP para la comunicación entre ACE y cualquier otro host, Pero no incluye el paquete entre los helios.

tcpdump ip host ace y no helios

Si desea obtener el paquete ip del host 210.27.48.1 excepto para todos los hosts excepto el host 210.27.48.2, use el comando:

tcpdump ip host 210.27.48.1 y! 210.27.48.2

Interceptar todos los datos enviados por el nombre de host del host

tcpdump -i eth0 src nombre de host del host

Supervisar todos los paquetes enviados al nombre de host del host

Tcpdump -i eth0 dst host nombre de host

Monitoreo de paquetes para el host y el puerto especificados

Si desea recibir el paquete telnet o ser enviado por el host 210.27.48.1, use el siguiente comando

tcpdump tcp port 23 host 210.27.48.1

Monitoreo del puerto udp 123 de esta máquina 123 ntp puerto de servicio

tcpdump udp port 123

Monitoreo de datos de la red especificada Paquete

Imprime todos los paquetes de comunicación entre el host local y el host en la red de Berkeley (nt: ucb-ether, aquí puede entenderse como ‘ Berkeley Network ’ dirección de red, la expresión es la original El significado se puede expresar como: Imprima todos los paquetes con la dirección de red ucb-ether)

tcpdump net ucb-ether

Imprima todos los paquetes ftp a través de snup de puerta de enlace (nota, hoja de expresión Comillas, esto puede El shell analizará los paréntesis en él.

tcpdump ‘ gateway snup and (puerto ftp o ftp-data) ’

Imprime todas las direcciones de origen o destino como IP del host local Paquete

(Si la red local está conectada a otra red a través de la puerta de enlace, la otra red no se cuenta como una red local.
(Nt: esta oración está traducida y torcida, debe agregarse). Localnet debe reemplazarse cuando se use realmente. El nombre de la red de costos)

tcpdump ip y no net localnet

Monitoreando el paquete del protocolo especificado

Imprimiendo los paquetes de inicio y fin en la sesión TCP, y los datos El origen o destino del paquete no es un host en la red local.
(nt: localnet, el nombre real de la red que se reemplazará en uso real))

tcpdump ‘ tcp [tcpflags] &(tcp-syn | Tcp-fin)! = 0 y no src y dst net localnet ’

La impresión de todos los puertos de origen o destino es 80, el protocolo de capa de red es IPv4 y contiene datos en lugar de SYN, FIN y datos solo ACK sin datos Paquete (Se puede practicar la expresión de la versión ipv6)

tcpdump ‘ tcp port 80 y ((ip [2: 2] - ((ip [0] &0xf) "" 2)) - ((tcp [12] &0xf0)》 2))! = 0) ’

(nt: comprensible, ip [2: 2] indica la longitud del paquete ip completo, (ip [0] &0xf) "2" indica la longitud del encabezado del paquete ip (ip [0] &0xf representa el campo IHL en el paquete, y la unidad de este campo es de 32 bits, para convertir

El número de bytes debe ser multiplicado por 4, es decir, desplazado hacia la izquierda por 2.
(tcp [12] &0xf0) "" 4 indica la longitud del encabezado tcp. La unidad de este campo también es de 32 bits, que se convierte en el número de bits ((tcp [12] y amp; 0xf0)》》 4) "2,

es decir ((tcp [12] &0xf0)" 2).
((Ip [2: 2] - ((ip [0] &0xf) "2)) - ((tcp [12] &0xf0)" 2))! = 0 significa: la longitud del paquete ip completo menos la longitud del encabezado ip, luego restar

La longitud del encabezado tcp no es 0, lo que significa que el paquete ip no Hay datos. Para la versión ipv6, solo considere la diferencia entre ‘ Longitud de carga útil ’ y ‘ longitud de encabezado tcp ’ en la versión ipv6, y la expresión ‘ ip [] ’ necesita ser reemplazada con ‘ ip6 [ ] ’.)

Imprime paquetes IP de más de 576 bytes y la dirección de la puerta de enlace es snup

tcpdump ‘ gateway snup y ip [2: 2] 576 ’

Imprima todos los paquetes de difusión o multidifusión de la capa IP, pero no los datagramas de difusión o multidifusión en la capa Ethernet física

tcpdump ‘ ether [0] &1 = 0 e ip [ 16]》 = 224 ’

Imprima paquetes ICMP que no sean ‘ solicitud de eco ’ o ‘ echo reply ’ (por ejemplo, puede usar esta expresión cuando necesite imprimir todos los paquetes generados por programas que no sean de ping)

(nt: ‘ echo reuqest ’ con ‘ echo reply ’ Estos dos tipos de paquetes ICMP generalmente son generados por el programa ping))

tcpdump ‘ icmp [icmptype]! = icmp-echo y icmp [icmptype]! = icmp-echoreply ’
Previous1234Next page Total 4 páginas

Copyright © Conocimiento de Windows All Rights Reserved