【发布时间】:2011-09-20 02:39:12
【问题描述】:
假设我有两台主机 A 和 B。它们在端口 80 上都有一个网络服务器。两台服务器都通过它们的网络服务器相互下载文件。 A:some_port b:80 和同时 A:80 B:some_port.
如何运行 tcpdump 来捕获客户端为主机 A 或 B 的所有数据包?我不希望包含来自两个连接的数据包的混合转储文件。
如果我使用:
tcpdump -i eth0 host A and port 80
我收到 A 和 B 之间的所有数据包。如果我将其更改为
tcpdump -i eth0 src host A and src port 80
那么我刚刚收到了错误的一半数据包。
你有什么建议吗?
【问题讨论】:
-
所以你想捕获,例如,所有以 A 作为 HTTP 客户端的数据包,从 A 到 B 和从 B 到 A,但不是任何以 B 作为 HTTP 客户端的数据包,或者 反之亦然(B作为客户端,但不作为服务器)?