- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机网络实验四 发现网络中的活动主机 华中师范大学 计算机科学系 2011年6月 一、实验目的 IP协议的优点是简洁,但缺少差错控制和查询机制,而网际控制报文协议(ICMP)具有补充IP功能的作用。 在网络管理中,常常要确定当前网络中处于活动状态的主机,这时可以通过使用ICMP的回送请求和回送应答来完成这项工作。 本实验的目的就是编制程序,利用ICMP数据包,发现指定网段中的活动主机。通过实验设计,让我们进一步熟悉ICMP报文和IP报文的结构,对ICMP协议和IP协议有更好的理解和认识。 二、实验设计要求 设计程序,其功能是发送ICMP数据包,以获取网段中的活动主机,并将结果显示在标准输出上。 程序的具体要求如下: 1) 用命令行形式运行:scanhost Start_IP End_IP scanhost-执行程序名 Start_IP-被搜索网段的开始IP地址 End_IP- 被搜索网段的结束IP地址。 2) 输出格式为: 活动主机1 活动主机2 ........ 三、相关知识(1/6) 三、相关知识(2/6) 所有报文的前4个字节都是一样的,但是其他字节则互不相同。 类型字段-15个不同的值,以描述特定类型的ICMP报文 某些ICMP报文还使用代码字段的值来进一步描述不同的条件。 校验和字段为2个字节,校验的范围是整个ICMP报文。校验和是必需的,其计算方法与IP协议头部校验和的计算方法一样(参考chapter7)。 三、相关知识(3/6) -各种类型的ICMP报文(1) 三、相关知识 (4/6) -各种类型的ICMP报文(2) 三、相关知识 (5/6) -各种类型的ICMP报文(3) 三、相关知识(6/6) 本课程设计的目的是发现网络中的活动主机。 使用ICMP的回送请求和回送应答消息发现网络中的活动主机,即ping消息的请求和应答。 发送ICMP的数据包类型设计为回送请求 (类型号为8) 。 接收ICMP的数据包类型设计为回送应答 (类型号为0) 。 四、网络设计分析 (1/12) -程序的大致思想 本程序使用原始套接字生成ICMP报文进行活动主机的探查。这个程序使用的是回送请求与应答信息。 把ICMP的数据包类型设置为回送请求,将它发送给网络上的一个IP地址,如果这个IP地址已经被占用的话,那么使用位于这个IP地址的主机上的TCP/IP软件就能够接收到这个ICMP请求,从而返回一个ICMP应答(类型号为0)信息。 信息封装在一个IP分组中,需要解析该IP包,从中找到ICMP数据信息。 相反,如果这个IP地址没有人使用,那么发送的ICMP回送请求在设定的延时内就不可能得到响应。 四、网络设计分析(2/12) - 使用原始套接字(1) 为了实现发送/监听ICMP报文,必须使用原始套接字。 在初始化原始套接字之后,本程序就要开始在一个IP网段内寻找活动主机。因为要寻找的主机可能很多,为节省时间可以采用多线程编程。 四、网络设计分析(3/12) - 使用原始套接字(2) 创建原始套接字的代码如下: SOCKET sockRaw; sockRaw=WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL,0,WSA_FLAG_OVERLAPPED); IPPROTO_ICMP-接收ICMP数据包 为了使用发送接收超时设置必须将标志位置为WSA_FLAG_OVERLAPPEND。 四、网络设计分析(4/12) - 使用原始套接字(3) int timeout=1000; setsockopt(sockRaw,SOL_SOCKET,SO_RCVTIMEO,(char*)timeout,sizeof(timeout)); setsockopt(sockRaw,SOL_SOCKET,SO_SNDTIMEO,(char*)timeout,sizeof(timeout)); sockRaw-之前创建的原始套接字 SOL_SOCKET-使用基本套接字处理ICMP报文。 SO_RCVTIMEO-使用接收超时设置 SO_SNDTIMEO-使用发送超时设置,在这里,超时时间均设置为1000ms。 四、网络设计分析(5/12) - 定义IP头部和ICMP头部的数据结构(1) 由于socket发送/捕获的是IP包,因此要分别定义IP头部和ICMP头部的
您可能关注的文档
- 第三讲国语语音分析与拼合上第一节国语语音组成.pdf
- 第三章 静电能2 电场能量和能量密度 利用静电能求静电力 20101019.pdf
- 第三章增值税纳税筹划.ppt
- 第十七章 生长肥育营养需要.ppt
- 第五章 项目可持续发展和后评价研究课件.ppt
- 滇青冈残体分解物对小麦化感作用测定.pdf
- 电感耦合等离子体质谱法同时测定中成药中多种微量元素研究.pdf
- 电子厂员工上下班这样过安检门和闸机.docx
- 顶空固相微萃取气相色谱质谱法测定泽兰中挥发性成分.pdf
- 多环芳烃中苯形成机理研究.pdf
- TSTIC 120083-2023 电化学储能电站电池系统数字化运维服务要求.pdf
- 病虫害防治工作总结.pdf
- TSTIC 120085-2023 船舶拖带服务规范.pdf
- 健身安全课件图片最新完整版本.pptx
- (新统编版)语文二年级下册 第六单元 大单元教学计划.docx
- TSTIC 120081-2023 港口与航道工程施工总承包服务规范.pdf
- THEBQIA 304-2024 型钢智能检测设备设计规范.pdf
- 健身房消防培训课件最新完整版本.pptx
- 广东省深圳市红山中学2024-2025学年高二(下)第一次段考语文试卷(含答案).docx
- 广东省深圳市建文外国语学校两学部2025届高三下学期二模物理试题(含答案).docx
文档评论(0)