2 skaitiaozhan skaitiaozhan 于 2016.09.07 10:06 提问

关于原始套接字socket初始化失败 10C

socket(AF_INET,SOCK_RAW,protocol);
其中protocol设置为ICMP、TCP等等时可以成功创建,但是设置为IP包则失败,返回-1.
在root用户下创建的程序,网卡也设置为混杂模式,找不到错误,求大神指导。

1个回答

u010136832
u010136832   2016.11.01 11:14

1.socket(AF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_UDP|IPPROTO_ICMP)发送接收ip数据包
2.socket(AF_PACKET, SOCK_RAW, htons(ETH_P_IP|ETH_P_ARP|ETH_P_ALL))发送接收以太网数据帧
3.socket(AF_PACKET, SOCK_DGRAM, htons(ETH_P_IP|ETH_P_ARP|ETH_P_ALL))发送接收以太网数据帧(不包括以太网头部)_

Csdn user default icon
上传中...
上传图片
插入图片