读书人

抓局域网的包?解决方法

发布时间: 2012-03-31 13:13:26 作者: rapoo

抓局域网的包?
老师给了个任务,要我写一个抓包程序。现在能够抓我本机的包了(套接字抓的),但是我想抓我们实验室局域网所有电脑的包,(是不是要在路由器处抓?),苦于没有方法,请高人给点思路或方法或例子.

[解决办法]
不是用raw socket,需要把网卡设置为混杂模式。windows下用winpcap,linux有libpcap。
路由器只有出入网段的包,你想要所有包,需要在交换机上设置镜像,把所有包都镜像到一个端口。抓包的电脑就接在这个端口上。
[解决办法]
很简单 arp 欺骗 你懂的 !!!
[解决办法]
网络嗅探器的原理,LZ可以查一下
[解决办法]
libnet libdnet
[解决办法]
winpcap包含驱动(只有驱动才能修改网卡寄存器进入混杂模式),也有API。多用google
raw socket + arp欺骗原理上可以,但干扰网络功能。真正的接收方收不到包了,也就不会回。欺骗不是干这个用的,它可以阻断。sniffer则是旁路听着,不干扰。

读书人网 >VC/MFC

热点推荐