使用 tcpdump 在代理上转储主机的原始数据

Car*_*ist 3 proxy tcpdump

我试图保存通过我们的代理发送到特定 url 的原始数据。我的一个朋友给了我使用 tcpdump 的技巧,所以我开始在他们的页面上阅读它。但由于某种原因,我无法使用它。

我试过' tcpdump -c10 host my.very.specific.host.com '但我没有得到任何匹配。是的 =) 我可以在 server.log 中看到来自客户端的某种操作。

如果我使用“ tcpdump -c10 ”,我会立即得到 10 行。所以我想我错过了理解“主机”的概念?

我不能将它指向一个 IP,因为它是一个处理许多不同 url 的网络服务器。

这真的不是我的域(程序员)所以,请原谅我的简单问题:) 提前致谢。

编辑 1

感谢所有的帮助,是的。我应该更清楚地说明我的问题。所以这里有一些“更多”信息。我想要做的是捕获从我们的代理到手机的数据。

我这样做的原因是为了确保我们在发送到“移动运营商网关/代理狂野”之前准确地发送我们想要的东西(是的,他们倾向于修改比他们应该做的更多的东西;))

我感兴趣的信息是 http 协议。

所以我现在要做的是尝试将代理和移动运营商网关之间的信息转储到“公共”网卡上。幸运的是,移动运营商只有一个公共网关。

完了,走吧!

Dav*_*ley 6

您可能会遇到不同接口的问题。默认情况下,tcpdump 只侦听它找到的第一个以太网接口。如果您添加“-i any”,它将在每个接口上侦听。

正如有人已经提到的那样,无论您想要什么 dns 名称,您最终都会捕获到特定 IP 地址的所有流量。您可以通过进一步限制过滤器来减少捕获的数据量。您可以添加端口并指定特定的远程主机或网络。

# tcpdump host 12.34.56.78 and port 80 and net 78.65.43.21/24 
Run Code Online (Sandbox Code Playgroud)

您可能会发现 tcpflow 对您更有用。它会将 TCP 连接的每一端转储到一个单独的文件中。您可以使用与 tcpdump 相同的过滤器来使用它,也可以加载一个 pcap 文件。要保存 pcap 文件,请运行:

# tcpdump -s 0 -w /tmp/dump.pcap -i any host 12.34.56.78 and port 80
Run Code Online (Sandbox Code Playgroud)