记录所有进入OSX中路由器的http和https通信


1

我的路由器的IP为192.168.0.1。
如何记录在http和https(端口443)下收到的所有流量?
我认为使用tcpdump应该可以解决问题,但是我不确定如何运行它


这很大程度上取决于路由器。是什么类型?
SysAdmin1138

您没有给我们足够的信息。路由器是您的Mac盒子吗?专用路由器?如果是,那是什么?网络中是否还有其他工作站可以通过路由器发送数据?
Sven

路由器是D-Link DIR-615。我想记录所有的个人电脑业务给它
人NIK

Answers:


1

首先,您需要获取路由器的以太网硬件地址(因为通过它发送的流量可以通过发送到此链路层地址来识别):

$ arp -n 192.168.0.1
? (192.168.0.1) at 0:12:34:56:78:9a on en0 ifscope [ethernet]

然后使用此地址告诉tcpdump寻找什么:

sudo tcpdump 'ether host 0:12:34:56:78:9a and not host 192.168.0.1 and (port http or https)'

请注意,需要使用引号来防止外壳跳到括号内。另外,如果你离开了and not host 192.168.0.1一部分,它会包括流量路由器(即,它会告诉你打开路由器的基于Web的配置界面),以及通过它。最后,如果碰巧为192.168.0.1定义了DNS或/ etc / hosts名称,则可以使用tcpdump的网关原语(sudo tcpdump 'gateway somename and (port http or https)'),但不适用于IP地址。

编辑:这只会报告通过它所运行的计算机的流量-通常只是去往/来自那台计算机的流量。如果要查看本地局域网上所有主机通过路由器的流量,则需要设置某种机制以将所有这些数据包发送到捕获计算机。WireShark文档对此选项进行了很好的讨论

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.