TCPDUMP captura apenas novas conexões

9

Estou usando o TCPDUMP para capturar tráfego de um endereço IP específico. Existe a possibilidade de capturar apenas novas conexões, ou seja, fluxos TCP que começam com o pacote SYN?

Obrigado

Ania Katzenelson
fonte
Infelizmente não. O tcpdump captura apenas os pacotes à medida que eles chegam, não mantém nenhum tipo de informação da sessão para diferenciar os fluxos TCP. Você precisaria analisar a captura no Wireshark se quiser separar fluxos (você pode solicitar por número de fluxo, por exemplo).
Mark Riddell
Cuidado, o bit SYN é definido nos dois primeiros pacotes do TCP 3-Way Handshake. Portanto, esse filtro corresponderá a todas as novas tentativas de estabelecer conexões, não apenas às novas conexões estabelecidas. Se de alguma forma (regra do software) a conexão não for aceita, ela também será mostrada.
Angel

Respostas:

7

Para capturar apenas pacotes TCP SYN:

# tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) != 0"
pstrozniak
fonte
3
Isso não capturará todo o tráfego para uma nova sessão. Ele capturará apenas pacotes SYN.
user5870571
1

A seguir, serão capturados os pacotes TCP-SYN e SYN-ACK.

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

O seguinte capturará apenas pacotes TCP-SYN.

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

O motivo é que os pacotes SYN-ACK incluem os sinalizadores SYN e ACK. O primeiro filtro procurou apenas a presença de um sinalizador SYN.

Se você deseja filtrar apenas na entrada, adicione a opção -Q in.

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