Capturar Tráfico de Red Local con Tcpdump
En este paso, utilizará tcpdump, un potente analizador de paquetes de línea de comandos, para capturar e inspeccionar el tráfico de red en tiempo real. Esto es invaluable para depurar problemas de red o comprender cómo funcionan los protocolos.
Primero, veamos qué interfaces de red están disponibles para capturar tráfico.
sudo tcpdump -D
La salida listará las interfaces disponibles. lo es la interfaz "loopback" (de retorno), que se utiliza para la comunicación de red dentro de la misma máquina (por ejemplo, conectarse a localhost). Verá varias interfaces, incluida la interfaz de red principal eth1:
1.eth1 [Up, Running, Connected]
2.any (Pseudo-device that captures on all interfaces) [Up, Running]
3.lo [Up, Running, Loopback]
4.bluetooth-monitor (Bluetooth Linux Monitor) [Wireless]
5.nflog (Linux netfilter log (NFLOG) interface) [none]
6.nfqueue (Linux netfilter queue (NFQUEUE) interface) [none]
7.dbus-system (D-Bus system bus) [none]
8.dbus-session (D-Bus session bus) [none]
Capturaremos tráfico en la interfaz de loopback (lo) para ver las solicitudes a nuestro servidor web local. Para hacer esto, necesitará dos terminales.
En su terminal actual, ejecute el siguiente comando tcpdump. Escuchará en la interfaz lo (-i lo) y se detendrá después de capturar 5 paquetes (-c 5).
sudo tcpdump -i lo -c 5
Ahora, haga clic en el icono + en la barra de pestañas de la terminal para abrir una nueva terminal. En esta nueva terminal, genere algo de tráfico de red realizando una solicitud al servidor web local usando curl.
curl http://localhost:8000
Vuelva a su primera terminal. Verá que tcpdump ha capturado los paquetes relacionados con su solicitud curl. La salida se verá algo así, mostrando el handshake TCP y la transferencia de datos:
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on lo, link-type EN10MB (Ethernet), snapshot length 262144 bytes
14:57:14.158058 IP localhost.57272 > localhost.8000: Flags [S], seq 2025143228, win 65495, options [mss 65495,sackOK,TS val 1006286113 ecr 0,nop,wscale 7], length 0
14:57:14.158072 IP localhost.8000 > localhost.57272: Flags [S.], seq 403368374, ack 2025143229, win 65483, options [mss 65495,sackOK,TS val 1006286113 ecr 1006286113,nop,wscale 7], length 0
14:57:14.158083 IP localhost.57272 > localhost.8000: Flags [.], ack 1, win 512, options [nop,nop,TS val 1006286113 ecr 1006286113], length 0
14:57:14.158129 IP localhost.57272 > localhost.8000: Flags [P.], seq 1:79, ack 1, win 512, options [nop,nop,TS val 1006286113 ecr 1006286113], length 78
14:57:14.158133 IP localhost.8000 > localhost.57272: Flags [.], ack 79, win 511, options [nop,nop,TS val 1006286113 ecr 1006286113], length 0
5 packets captured
24 packets received by filter
0 packets dropped by kernel
Tenga en cuenta que si ejecuta tcpdump sin generar tráfico específico, es posible que vea consultas DNS en segundo plano y otras comunicaciones del sistema, como se muestra en sus registros. Este es un comportamiento normal del sistema y demuestra que, incluso cuando no está navegando activamente, su sistema mantiene diversas comunicaciones de red.
Ha capturado y visto con éxito tráfico de red en vivo.