当前位置: 技术问答>linux和unix
我想在linux下监听整个局域网的数据包,不知道有没有可能?
来源: 互联网 发布时间:2015-06-12
本文导语: 我的机器只是局域网内的普通机器(非主机),但是我想查看一下局域网内的所有数据包信息,并对数据包进行分析,这样有没有可能?能不能实现? 一个已经向好的思路是设置socket的状态为ISO_RCVALL,然后通过recv...
我的机器只是局域网内的普通机器(非主机),但是我想查看一下局域网内的所有数据包信息,并对数据包进行分析,这样有没有可能?能不能实现?
一个已经向好的思路是设置socket的状态为ISO_RCVALL,然后通过recv接收,这个思路可以吗?望执教,多谢!
一个已经向好的思路是设置socket的状态为ISO_RCVALL,然后通过recv接收,这个思路可以吗?望执教,多谢!
|
1. 能实现
2. 还可以使用libpcap来实现截包
2. 还可以使用libpcap来实现截包
|
>>局域网内的所有数据包信息
交换环境下想要嗅探别的机器的流量没有你想的那么容易,除非是广播式的,比如说用Hub相连的东西。如果交换环境下,一个方法就是ARP Spoof,另一个方法就是用Switch的MirrorPort。
交换环境下想要嗅探别的机器的流量没有你想的那么容易,除非是广播式的,比如说用Hub相连的东西。如果交换环境下,一个方法就是ARP Spoof,另一个方法就是用Switch的MirrorPort。
|
刚写完,呵呵~~LIBPCAP是不错.特别是LIBPCAP自带规则分析,你输入你要的条件就可以了
|
完全可以啊,你可以在交换机上设置一个混杂模式的端口,接上你的linux系统,利用libpcap就可以监听整个局域网的数据包了.
|
现在的网络一般都是用交换机互联,所以普通主机无法监听网上报文,除非:
1、交换机支持端口镜像,但仍然有限制:怎么能接到镜像端口、交换机是否支持跨板镜像、交换机是否支持多端口到单一端口镜像、端口的带宽、是否使用了VLAN、PVLAN等等。现在的接入层交换机一般都不支持跨板镜像。
2、采用攻击手段。象楼上的各位说的,用ARP欺骗是不行的,那是攻击,不是正常的获取网络流量,正常的用户使用被打断,监听的内容没有意义。其他的攻击手段,如MAC Flood攻击,虽然可能获取本VLAN内信息,但仍然会影响交换机性能,说不定还会使交换机挂了。
3、如果交换机支持SMON、SFLOW、NETFLOW等,可以实现正常的网络流量监听、分析,但也是采样,不可能是全部报文。
从原理上讲,这是实现不了的。
1、交换机支持端口镜像,但仍然有限制:怎么能接到镜像端口、交换机是否支持跨板镜像、交换机是否支持多端口到单一端口镜像、端口的带宽、是否使用了VLAN、PVLAN等等。现在的接入层交换机一般都不支持跨板镜像。
2、采用攻击手段。象楼上的各位说的,用ARP欺骗是不行的,那是攻击,不是正常的获取网络流量,正常的用户使用被打断,监听的内容没有意义。其他的攻击手段,如MAC Flood攻击,虽然可能获取本VLAN内信息,但仍然会影响交换机性能,说不定还会使交换机挂了。
3、如果交换机支持SMON、SFLOW、NETFLOW等,可以实现正常的网络流量监听、分析,但也是采样,不可能是全部报文。
从原理上讲,这是实现不了的。