- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计报告发现网络中的活动主机
课程设计实验报告
专 业: 12级通信工程(2)班
学 号:
姓 名:
实验所属课程:通信网综合课程设计
一、程设计的目的和意义
在网络管理中,经常要确定当前网络中处于活动状态的主机,这时可以通过使用 ICMP协议的回送请求(Ping请求)和回送响应(Ping应答)消息来完成本工作。
本课程设计的目的是编制程序,利用ICMP数据包,发现制定网段中的活动主机。
IP协议的优点是简洁,但缺少差错控制和查询机制,而网际控制报文协议(ICMP)具有补充IP功能的作用。在网络管理中,常常要确定当前网络中处于活动状态的主机,这时可以通过使用ICMP的回送和回送响应消息来完成这项工作。本课程设计的目的就是编制程序,利用ICMP数据包,发现指定网段中的活动主机。通过课程设计,使学生更加熟悉ICMP报文的结构,对ICMP协议有更好的理解和认识。
二、课程设计条件
计算机,Matlab、C/C++或JAVA编程软件或者其他通信网仿真软件(如NS2、OMNET++等)、嵌入式开发板、编程器等。
三、程设计的内容和要求
本程序的功能是发送ICMP数据包,以获取指定网段中的活动主机,并将结果显示到屏幕上。
程序的要求
1) 不允许在程序中直接调用Ping,而是用程序实现Ping的功能。
2) 以命令形式运行:程序名 Start_ip End_ip, 其中,Start_IP为起始IP地址;End_IP为结束IP地址。
3) 输出格式为:
活动主机1的IP地址
活动主机2的IP地址
……
四、课程设计的相关技术
IP 协议是一种不可靠的协议,无法进行差错控制。但IP 协议可以借助其他协议来实现这一功能,
如ICMP。ICMP(Internet Control Messages Protocol, 网间控制报文协议)允许主机或路由器报告差错情况和提供有关异常情况的报告。一般来说,ICMP 报文提供针对网络层的错误诊断、拥塞控制、路径控制和查询服务四项大的功能。如,当一个分组无法到达目的站点或TTL 超时后,路由器就会丢弃此分组,并向源站点返回一个目的站点不可到达的ICMP 报文。
编制程序前首先要对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)