好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

网络通信编程原始套接字程序设计.ppt

20页
  • 卖家[上传人]:tian****1990
  • 文档编号:82351613
  • 上传时间:2019-02-23
  • 文档格式:PPT
  • 文档大小:1.48MB
  • / 20 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 内容提要1.使用原始套接字2.奈接字选项3.ICMP编程4.使用|P头包含选项5.网络噬探器实例 1.使用原始套接字“利用原始套接字(RawWSocket),可访问底尿传输协议原始套接字(RaWSocke0)与标准套接字区别 “使用原始套接字可以做什么?友实现一些实用工具(ping,traceroute)友可对IP头,TCP头,UDP头,ICMP头等进行操作原始套接字使用SOCK_RAW套接字类型来创建的,目前只有Winsock2提供了对它的支持无论MicrosoftWindowsCE还是老版本的Windows95(无Vinsock2乃级)讹社能利用原始套接字 “原始套接字类型创建原始套接字在IP头中使用预定义的协议(如ICMP)>在IP头中使用自定义的协议(使用IP头包含选项)协议|地址族|蛎接字类型|套接字类型侠用的值协议字阮TCPSOCK_STREAMIPPROTO_TCP五联网UDPSOCK_DGRAMIPPROTO_UDP8|AFTNETIPPROTO_RAW咤RdawSOCK_RAWIPPROTO_ICMP >创建原始套接字使用socket()或WSASocket()创建原始套接字。

      >例:创建原始奎接字使用预定义协议:SOCKETs;S=socket(AF_INET,SOCK_RAM,IPPROTO_ICMP);/ORS=WSAsocket(AF_INEF,SOCK_RAM,IPFROTO_ICMP,NULL0,WSA_FLAG_OVERLAPPED); 使用自定义协议>使用IGMP、UDP、]JP或者原始]P,只需分别设置IPPROTO_IGMP、IPPROTO_UDP、IPPROTO_IP或IPPROTO_RAW即可~>注意:在WindowsNT4、Windows98以及Windows95(安装Winsock2)操作系统中,创建原始套接字时,只能使用ICMP>协议标志IPPROTO_UDP、IPPROTO_IP以及IPPROTC_RAW均塔冰使吉套拮字逊那IP_IIJRINCL,而该选项在上述平台下都是不支持的>Windows2000提供了对JP_HDRINCL选项的支持,所以能够处理IP头(IPPROTO_RAW)、TCP头(IPPROTO_TCP)以及UDP头(IPPROTO_UDP)~>无论是否设置]P_HDRINCL选项,原始套接字上接收到的数据都会包含JP头。

      7 >使用原始套接字可以对底屁传输机制加以挚制,所以有些人将其用于不法用途, 2.奈接字选项“奈接字选项操作函数“getsocketopt()莴取套接字选项信息intgetsocketopt(SOCKETs,//套接字描述符intlevel,/选项级别intoptname,/选项名称charYoptval,//适项值intsoptieh//造项长庞入么Setsocketopt()设置套接字选项intSetsOcke[gPt(SOCKETS,intlevel,intoptname:,constchar#optyal,intoptlen); 国选项级别:协议的尿次对应选项级别应用尿:SOL_SOCKET传输层:IPPROTO_TCP、IPPROTO_UDP网络尸:IPPROTO_IP国不同级别属性不同,同一级别的不同协议的属性不合,因此必痹排宛IeyB|参数例:IntnTime=2*1000setsockopt(s,SOL_SOCKET,SO_RCVTIMEO,(char)&nTime,sizeof(nTime)) 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.