有关网卡混杂模式

        网络课程设计,用pcaplib编个小sniffer, 怎么弄都只能捕捉到自己的包或是网关传送传给自己的包(事实上,期间仅有一次捕到过一个非本机包,不过被视为异常现象忽略了),不是说将网卡设置成混杂模式就行了吗?莫非设置不成功?百般不得解后,发信给pcaplib的mail list了,结果老外是这样说的:
In a switched LAN you will only see broadcasts and packets destined to the
address(es) that are advertised behind your switch port. The sollution is:
a) use the "monitor" port on your switch
b) use a hub rather than a switch
c) overflow the forwarding table of your switch to turn it into a hub
The first being the preferred option, of course.
        恍然,将网卡混杂模式并不截取网段上所有的数据包,它只是能截取所有路过这块网卡的数据包。“混杂模式能接收传输在网络上的每一个信息包”这种说法仅仅对于过去的hub式的局域网才成立。而对于现在广泛使用的交换式(switched)局域网,计算机的端口直接与交换机的端口相连,当然也通过交换机和同网段的其他计算机的端口相连,所以,它和共享式不同,只有在两个站点需要通信时,交换机才同时联通多个端口,平时是不联通的。而且,主机的数据包先是经过网关,如果是非广播的,将由交换机根据其上的目标地址是否已记录来决定包的走向。所以,不象共享式的,一般每个包都会经过所有同网段的主机,而仅仅是广播的或者目标地址为同网段的主机才会被截取。
       原因明白了,但是正如老外所说,要想监听网段所有的包,最好是在交换机上配置一个监听端口,该端口目标地址设为你的主机地址,那样将所有经过该交换机的包复制一份再转发给你。这违反了本程序只在本机上执行的原则了。
       照此推论,arp欺骗只是对arp协议进行欺骗。也就是说只能阻止你和新的ip地址进行通信,不能阻止你和已通信过,网关的mac地址已经被记录在DLC协议中的地址将进行通信,因为这时你没有用到arp协议了,只是用到ip协议。
      嗯,下一次再被别人给用p2p终结者限制式,试一试:<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值