使用tcpdump观察我的网络上访问的网站

时间:2013-05-07 18:56:21

标签: networking raspberry-pi http-get tcpdump

我刚刚接触了Raspberry Pi,我将其设置为家庭网络上的DNS和DHCP服务器。这意味着所有网络请求在发布之前都要通过它...这为我提供了一个很好的机会来使用tcpdump并查看我网络上发生的事情!

我正在玩tcpdump参数来创建完美的网络间谍。我们的想法是捕获HTTP GET请求。

到目前为止,这是我所拥有的,而且非常好:

tcpdump -i eth0 'tcp[((tcp[12:1] & 0xf0)>> 2):4] = 0x47455420' -A
  • -i eth0告诉它要听哪个界面
  • 引号中的位是十六进制匹配的一个很小的位,用于检测GET请求
  • -A表示“打印此数据包的ASCII内容”

每次网络上的任何内容发送GET请求时都会触发,这很棒。最后,我的问题是如何过滤掉像图像,JavaScript,图标等无聊的请求?

这对tcpdump来说是否可行?或者我是否需要转向像tshark这样更全面的内容?

感谢您的帮助!

免责声明:目前我网络上唯一的人就是我...这不是恶意的,这是一项技术挑战!

1 个答案:

答案 0 :(得分:1)

Grep是您的朋友:-) tcpdump ... | grep -vE "^GET +(/.*\.js)|(/favicon.ico)|(.*\.png)|(.*\.jpg)|(.*\.gif)|... +HTTP会隐藏GET /blah/blah/blah.js HTTP 1/.0GET /favicon.ico HTTP 1/.0GET /blah/blah/blah.png HTTP 1/.0等内容。