TCPDUMP erfasst nur neue Verbindungen


9

Ich verwende TCPDUMP, um Datenverkehr von einer bestimmten IP-Adresse zu erfassen. Gibt es die Möglichkeit, nur neue Verbindungen zu erfassen, dh TCP-Streams, die mit dem SYN-Paket beginnen?

Vielen Dank


Leider nicht. tcpdump erfasst nur Pakete, sobald sie ankommen. Es werden keine Sitzungsinformationen zur Unterscheidung zwischen TCP-Streams gespeichert. Sie müssten die Erfassung in Wireshark analysieren, wenn Sie Streams trennen möchten (Sie können beispielsweise nach Stream-Nummer bestellen).
— Mark Riddell

Seien Sie vorsichtig, das SYN-Bit wird in den beiden ersten Paketen des TCP 3-Wege-Handshakes gesetzt. Dieser Filter entspricht also allen neuen Versuchen, Verbindungen herzustellen, nicht nur den neu hergestellten Verbindungen. Wenn die Verbindung irgendwie (Softwareregel) nicht akzeptiert wird, wird sie auch angezeigt.
— Engel

Antworten:


7

So erfassen Sie nur TCP-SYN-Pakete:

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

3
Dadurch wird nicht der gesamte Datenverkehr für eine neue Sitzung erfasst. Es werden nur SYN-Pakete erfasst.
— user5870571

1

Im Folgenden werden sowohl TCP-SYN- als auch SYN-ACK-Pakete erfasst.

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

Im Folgenden werden nur TCP-SYN-Pakete erfasst.

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

Der Grund dafür ist, dass SYN-ACK-Pakete sowohl das SYN- als auch das ACK-Flag enthalten. Der erste Filter suchte nur nach einem SYN-Flag.

Wenn Sie nur nach eingehenden Filtern filtern möchten, fügen Sie die Option -Q in hinzu.

tcpdump -i <interface> -Q in "tcp[tcpflags] & (tcp-syn) !=0 and tcp[tcpflags] & (tcp-ack) =0"
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.