尝试在 Linux 中捕获三次握手

尝试在 Linux 中捕获三次握手

我正在尝试在 Linux 中使用以下方法捕获三次握手,但似乎不起作用......

sudo tcpdump "tcp[tcpflags] & (tcp-syn) !=0" -w filename.pcap -i eth0

有人能建议我修改它吗?

答案1

仅捕获三次握手可能比较困难。因此,传统的三次握手将包括一个 SYN 数据包、一个用于确认原始 SYN 的 SYN/ACK 数据包,然后是一个用于确认该 SYN/ACK 的 ACK。从过滤的角度来看,您可能可以使用 (tcp-syn&tcp-ack) 捕获三次握手的第二部分,但第三个 ACK​​ 很难从 TCP 对话期间发送的所有其他正常 ACK 数据包中过滤出来。

在这种情况下,我可能会做一个更简单的过滤器来捕获整个对话(也许避免整个数据包以保持大小一致),然后只使用 wireshark(或 tcpdump 本身)来查看三次握手。因此,

sudo tcpdump -s 32 -w filename.pcap -i eth0

相关内容