TCPDUMP captura solo conexiones nuevas

9

Estoy usando TCPDUMP para capturar el tráfico de una dirección IP específica. ¿Existe la posibilidad de capturar solo nuevas conexiones, lo que significa flujos TCP que comienzan con el paquete SYN?

Gracias

Ania Katzenelson
fuente
Lamentablemente no. tcpdump solo captura paquetes a medida que llegan, no mantiene ningún tipo de información de sesión para diferenciar entre flujos TCP. Debería analizar la captura en Wireshark si desea separar las transmisiones (puede ordenar por número de transmisión, por ejemplo).
Mark Riddell
Tenga cuidado, el bit SYN se establece en los dos primeros paquetes del protocolo de enlace TCP de 3 vías. Por lo tanto, este filtro coincidirá con todos los nuevos intentos de establecer conexiones, no solo con las conexiones recién establecidas. Si de alguna manera (regla de software) no se acepta la conexión, también se mostrará.
Angel

Respuestas:

7

Para capturar solo paquetes TCP SYN:

# tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) != 0"
pstrozniak
fuente
3
Eso no capturará todo el tráfico para una nueva sesión. Solo capturará paquetes SYN.
user5870571
1

Lo siguiente capturará los paquetes TCP-SYN y SYN-ACK.

tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) !=0"

Lo siguiente solo capturará paquetes TCP-SYN.

tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) !=0 and tcp[tcpflags] & (tcp-ack) =0"

La razón es que los paquetes SYN-ACK incluyen los indicadores SYN y ACK. El primer filtro solo buscó la presencia de una bandera SYN.

Si desea filtrar solo entrante, agregue la opción -Q in.

tcpdump -i <interface> -Q in "tcp[tcpflags] & (tcp-syn) !=0 and tcp[tcpflags] & (tcp-ack) =0"
JamesL
fuente