急!为什么不能伪装自己的IP
我用的是VC6,在XP上运行,
我先建立一个原始套接字,然后设置IP_HDRINCL,
m_skicmp=socket(AF_INET,SOCK_RAW,IPPROTO_ICMP);
BOOL bopt=TRUE;
setsockopt(m_skicmp,IPPROTO_IP,IP_HDRINCL,(char*)&bopt,sizeof(bopt));
然后构建自己的IP包头与ICMP包,我在IP包中的源地址写了个其他的IP,可是在
发送时:sendto(m_skicmp,buf,sizeof(buf),0,(struct sockaddr*)&addrto,sizeof(struct sockaddr));
出现错误,代码是10004,
我发现如果源地址用正确的IP就不会出错了,
请问:如果想伪装自己的IP,该怎么办呢?