课程设计报告-发现网络中的活动主机!230.docVIP

  • 6
  • 0
  • 约1.63万字
  • 约 20页
  • 2018-09-07 发布于湖北
  • 举报

课程设计报告-发现网络中的活动主机!230.doc

课程设计报告-发现网络中的活动主机!230

发现网络中的活动主机 目 录 一、课程设计的目的和意义……………………………………………2 二、课程设计的内容和要求……………………………………………2 三、课程设计的相关技术………………………………………………2 四、课程设计过程………………………………………………………4 4.1、使用原始套接字…………………………………………………………4 4.2、定义IP头部和ICMP头部的数据结构…………………………………5 4.3、填充并发送回送请求类型的ICMP报文……………………………… 5 4.4、解析数据包………………………………………………………………7 4.5、程序流程图………………………………………………………………7 五、程序运行结果………………………………………………………10 六、课程设计小结………………………………………………………10 参考文献……………………………………………………………… 11 附录 源代码……………………………………………………………12 一、程设计的目的和意义 IP协议的优点是简洁,但缺少差错控制和查询机制,而网际控制报文协议(ICMP)具有补充IP功能的作用。在网络管理中,常常要确定当前网络中处于活动状态的主机,这时可以通过使用ICMP的回送和回送响应消息来完成这项工作。本课程设计的目的就是编制程序,利用ICMP数据包,发现指定网段中的活动主机。通过课程设计,使学生更加熟悉ICMP报文的结构,对ICMP协议有更好的理解和认识。 二、程设计的内容和要求 设计程序,其功能是发送ICMP数据包,以获取指定网段中的活动主机,并将结果显示在标准输出上。 程序的具体要求如下: 用命令行形式运行: scanhost Start_IP End_IP 其中scanhost为程序名;Start_IP为被搜索网段的开始IP地址;End_IP 为被搜索网段的结束IP地址。 2)输出格式为: 活动主机1 活动主机2 …… 三、课程设计的相关技术 编制程序前首先要对ICMP报文的格式有一定的了解,ICMP报文是在IP数据报内部传输的,其结构如图10-1所示。 IP数据报 IP首部 ICMP报文 图10-1 ICMP封装在IP内部 0 7 8 15 16 31(位) 类型字段 代码字段 校验和字段 (不同类型和代码有不同内容) 图10-2 ICMP报文 ICMP报文的格式如图10-2所示。所有报文的前4个字节都是一样的,但是其它字节则互不相同。其中类型字段可以有15个不同的值,以描述特定类型的ICMP报文,某些ICMP报文还使用代码字段的值来进一步描述不用的条件。按验和字段为2字节,校验的范围是整个ICMP报文。检验和是必须的,其计算方法与IP协议头部校验和的计算方法一样。 各种类型的ICMP报文如图10-3所示(ICMP报文类型),不同类型由报文中的类型字段和代码字段来共同决定。 类 型 代 码 描 述 0 0 回送响应(PING应答) 目的不可达 网络不可达 主机不可达 协议不可达 端口不可达 需要进行分片但设置了禁止分片比特 源主机选择路由失败 无法识别目的网络 无法识别目的主机 源主机被隔离 目的网络被禁止 目的主机被禁止 由于服务类型(TOS),网络不可达 由于服务类型(TOS),主机不可达 由于过滤,通信被强行禁止 主机越权 优先权终止生效 4 0 源端被关闭(基本流控制) 5 重定向 对网络重定向 对主机重定向 对服务类型和网络重定向 对服务类型和主机重定向 8 0 回送请求(PING请求) 9 0 路由器通告 10 0 路由器请求 超时 传输期间生存期减为0 数据报组装期间生存期减为0 参数问题 各种IP头部错误 缺少必须的选项 13

文档评论(0)

1亿VIP精品文档

相关文档