请教高手,如何在TCP数据段的头里面填写指定的数据。例如,如何在Optional或者Reserved中填写特定的数据。

解决方案 »

  1.   

    http://www.vckbase.com/document/viewdoc/?id=964
    这是一个发送icmp包的例子,可以改造成tcp的,只要你把里面icmp包头改成tcp包头,然后正确计算checksum.
      

  2.   


    就是创建一个原始套接字
    原始套接字的数据包就是一个简单的IP头
    里面的数据你就可以用一个TCP包,
    这样你就可以控制TCP头内的数据了。
      

  3.   

    可以使用setsockopt(sock,IPPROTO,IP_HDRINCL,..)或IPPROTO的另一个选项IP_OPTION来做到.不一定要用RAW格式.
      

  4.   

    row socket即可达到你的要求,不过不能在98下运行。好象winxp SP2版的也有限制(可以解诀)