tcpdump [-aAdDeflLnNOpqRStuUvxX] [-c count] [ -C file_size ]
[ -E algo:secret ] [ -F file ] [ -i interface ] [ -M secret ]
[ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]
[ -W filecount ] [ -y datalinktype ] [ -Z user ]
[ expression ]
-A: Imprime cada paquete en [[código ASCII]]
-D: Imprime la lista de interfaces disponibles
-n: No convierte las direcciones de salida
-p: No utiliza la [[interfaz]] especificada en [[modo promiscuo]]
-t: No imprime la hora de captura de cada [[Trama de red|trama]]
-x: Imprime cada paquete en [[hexadecimal]]
-X: Imprime cada paquete en [[hexadecimal]] y [[código ASCII]]
-c count: Cierra el [[Software|programa]] tras recibir 'count' paquetes
-C file_size
-E algo:secret
-F file
-i interface: Escucha en la interfaz especificada
-M secret
-r file
-s snaplen
-T type
-w file: Guarda la salida en el [[Archivo (informática)|archivo]] 'file'
-W filecount
-y datalinktype
-Z user
- type [host|net|port]: Máquina en particular [host], red completa [net] o puerto concreto [port].
- dir [src|dst|src or dst|src and dst]: Especifica desde [src] o hacia dónde [dst] se dirige la información.
- proto [tcp|udp|ip|ether]: Protocolo que queremos capturar.
La opción -d es útil a la hora de depurar un filtro. La misma produce un volcado del filtro que ha sido compilado en una forma legible humanamente y detiene la ejecución del programa. Por ejemplo:
tcpdump -d "tcp or ip multicast or vlan 600 and ip multicast"
Produce el siguiente volcado:
(000) ldh [12]
(001) jeq #0x86dd jt 2 jf 4
(002) ldb [20]
(003) jeq #0x6 jt 13 jf 18
(004) jeq #0x800 jt 5 jf 9
(005) ldb [23]
(006) jeq #0x6 jt 13 jf 7
(007) ldb [30]
(008) jge #0xe0 jt 13 jf 18
(009) jeq #0x8100 jt 10 jf 18
(010) ldh [14]
(011) and #0xfff
(012) jeq #0x258 jt 13 jf 18
(013) ldh [16]
(014) jeq #0x800 jt 15 jf 18
(015) ldb [34]
(016) jge #0xe0 jt 17 jf 18
(017) ret #96
(018) ret #0
src > dst: flags [dataseq ack window urgent options]
15:23:44.772291 IP 192.168.1.17.52798 > 85.Red-83-37-170.dynamicIP.rima-tde.net.65000: . ack 1791 win 7851 <nop, nop, timestamp 5520421 997821>
- 15:23:44772291: Indica hh:mm:fracciones
- src: Dirección y puerto origen.
- dst: Dirección y puerto destino.
- flags: Flags de la cabecera TCP. (.) si no hay flags o combinación de S (SYN), F (FIN), P (PUSH), W (reducción de la ventana de congestión), E (ECN eco).
- dataseq: Número de secuencia del primer byte de datos en este segmento TCP. El formato es primero:último (n).
- ack: El número de asentimiento. Indica el número siguiente de secuencia que se espera recibir.
- window: Tamaño de la ventana de recepción.
- urgent: Existen datos urgentes.
- options: Indica la existencia de opciones. Van entre "<"...">".
Capturar tráfico cuya dirección IP de origen sea 192.168.3.1
- tcpdump src host 192.168.3.1
Capturar tráfico cuya dirección origen o destino sea 192.168.3.2
- tcpdump host 192.168.3.2
Capturar tráfico con destino a la dirección MAC 50:43:A5:AE:69:55
- tcpdump ether dst 50:43:A5:AE:69:55
Capturar tráfico con red destino 192.168.3.0
- tcpdump dst net 192.168.3.0
Capturar tráfico con red origen 192.168.3.0/28
- tcpdump src net 192.168.3.0 mask 255.255.255.240
- tcpdump src net 192.168.3.0/28
Capturar tráfico con destino el puerto 23
- tcpdump dst port 23
Capturar tráfico con origen o destino el puerto 110
- tcpdump port 110
Capturar los paquetes de tipo ICMP
- tcpdump ip proto \\icmp
Capturar los paquetes de tipo UDP
- tcpdump ip proto \\udp
- tcpdump udp
Capturar el tráfico Web
- tcpdump tcp and port 80
Capturar las peticiones de DNS
- tcpdump udp and dst port 53
Capturar el tráfico al puerto telnet o SSH
- tcpdump tcp and \(port 22 or port 23\)
Capturar todo el tráfico excepto el web
- tcpdump tcp and not port 80
otra forma:
- tcpdump tcp and ! port 80
Capturar todo el tráfico a host 10.168.1.100 puerto 80, en full verbose mode, full snap length, sin ponerla en modo promiscuo, sin convertir las direcciones de salida, imprimir en ASCII y volcar todo el dump en un file
tcpdump -vvv -n -s 65535 -A -p -w /tmp/tcpdump host 10.168.1.100 and port 80