我按照网上的代码编了一个截获数据包的程序,但是参考的代码建立socket这样写的:
sock = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
但是我的程序在执行到recv的函数时,就接收不到数据。
而我把IPPROTO_RAW改为IPPROTO_IP时,就可以接收,只是不能识别是哪个协议。
我跟踪了一下,发现协议号是28,vc中没有定义。这是怎么回事?请高手指点。谢谢
参考的程序代码网页:http://www.chinaoak.com/download/sources/network/hacker/netdetect.doc
sock = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
但是我的程序在执行到recv的函数时,就接收不到数据。
而我把IPPROTO_RAW改为IPPROTO_IP时,就可以接收,只是不能识别是哪个协议。
我跟踪了一下,发现协议号是28,vc中没有定义。这是怎么回事?请高手指点。谢谢
参考的程序代码网页:http://www.chinaoak.com/download/sources/network/hacker/netdetect.doc
发送用IPPROTO_RAW