一直在用wire-shark分析socket程序的包,现在想看看其他主机的流量,因为发现需要使用monitor模式,只有linux平台支持,所以尝试过但我无法捕获在我的网络中传输的任何数据包,列为捕获的 0 个数据包。
场景:
我有一个由 50 多台主机组成的网络(除我的主机外,所有主机均由 Windows 提供支持),我的 IP 地址是 192.168.1.10,当我启动任何 192.168.1.xx 之间的通信时,它会显示捕获的流量。 但我的要求是从我的主机监控 192.168.1.21 b/w 192.168.1.22 的流量,即来自 192.168.1.10。
1:是否可以像我说的那样抓取流量?
2:如果可能的话,wire-shark 是否是适合它的工具(或者我应该使用不同的工具)?
3:如果不可能,那为什么?
最佳答案
只需使用您自己的过滤器和 ips 稍微调整一下:(在本地主机上)
ssh -l root <REMOTE HOST> tshark -w - not tcp port 22 | wireshark -k -i -
或使用 bash :
wireshark -k -i <(ssh -l root <REMOTE HOST> tshark -w - not tcp port 22)
如果需要,您可以使用 tcpdump
代替 tshark
:
ssh -l root <REMOTE HOST> tcpdump -U -s0 -w - -i eth0 'port 22' |
wireshark -k -i -
关于linux - 如何捕获远程系统网络流量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19597903/