发现网络中的活动主机 - 副本.ppt

发现网络中的活动主机 - 副本.ppt

ID:48843486

大小:351.00 KB

页数:25页

时间:2020-01-27

发现网络中的活动主机 - 副本.ppt_第1页
发现网络中的活动主机 - 副本.ppt_第2页
发现网络中的活动主机 - 副本.ppt_第3页
发现网络中的活动主机 - 副本.ppt_第4页
发现网络中的活动主机 - 副本.ppt_第5页
资源描述:

《发现网络中的活动主机 - 副本.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、计算机网络实验四发现网络中的活动主机华中师范大学计算机科学系2011年6月一、实验目的IP协议的优点是简洁,但缺少差错控制和查询机制,而网际控制报文协议(ICMP)具有补充IP功能的作用。在网络管理中,常常要确定当前网络中处于活动状态的主机,这时可以通过使用ICMP的回送请求和回送应答来完成这项工作。本实验的目的就是编制程序,利用ICMP数据包,发现指定网段中的活动主机。通过实验设计,让我们进一步熟悉ICMP报文和IP报文的结构,对ICMP协议和IP协议有更好的理解和认识。二、实验设计要求设计程序,其功能是发送ICMP数据包,以获取网段中的活

2、动主机,并将结果显示在标准输出上。程序的具体要求如下:1)用命令行形式运行:scanhostStart_IPEnd_IPscanhost-执行程序名Start_IP-被搜索网段的开始IP地址End_IP-被搜索网段的结束IP地址。2)输出格式为:活动主机1活动主机2........三、相关知识(1/6)类型字段代码字段校验和字段不同类型和代码有不同内容078151631(位)ICMP报文的格式结构如图所示:三、相关知识(2/6)所有报文的前4个字节都是一样的,但是其他字节则互不相同。类型字段-15个不同的值,以描述特定类型的ICMP报文某些I

3、CMP报文还使用代码字段的值来进一步描述不同的条件。校验和字段为2个字节,校验的范围是整个ICMP报文。校验和是必需的,其计算方法与IP协议头部校验和的计算方法一样(参考chapter7)。三、相关知识(3/6)-各种类型的ICMP报文(1)类型代码描述00回送响应(ping)应答3目的不可达0123456789101112131415网络不可达主机不可达协议不可达端口不可达需要进行分片但设置了禁止分片比特源主机选择路由失败无法识别目的网络无法识别目的主机源主机被隔离目的网络被禁止目的主机被禁止由于服务类型(TOS),网络不可达由于服务类型(

4、TOS),主机不可达由于过滤,通信强行被禁止主机越权优先权中止生效不同类型由报文中的类型字段和代码字段来共同决定三、相关知识(4/6)-各种类型的ICMP报文(2)40源端被关闭(基本流控制)50123重定向对网络重定向对主机重定向对服务类型和网络重定向对服务类型和主机重定向80回送请求(Ping)请求91000路由器通告路由器请求11超时传输时间生存期减为0数据组装期间生存期减为0三、相关知识(5/6)-各种类型的ICMP报文(3)1201参数问题各种IP头部错误缺少必要的选项131400时间戳请求时间戳应答151617180000信息请求

5、(已作废)信息应答(已作废)地址掩码请求地址掩码应答三、相关知识(6/6)本课程设计的目的是发现网络中的活动主机。使用ICMP的回送请求和回送应答消息发现网络中的活动主机,即ping消息的请求和应答。发送ICMP的数据包类型设计为回送请求(类型号为8)。接收ICMP的数据包类型设计为回送应答(类型号为0)。四、网络设计分析(1/12)-程序的大致思想本程序使用原始套接字生成ICMP报文进行活动主机的探查。这个程序使用的是回送请求与应答信息。把ICMP的数据包类型设置为回送请求,将它发送给网络上的一个IP地址,如果这个IP地址已经被占用的话,那

6、么使用位于这个IP地址的主机上的TCP/IP软件就能够接收到这个ICMP请求,从而返回一个ICMP应答(类型号为0)信息。信息封装在一个IP分组中,需要解析该IP包,从中找到ICMP数据信息。相反,如果这个IP地址没有人使用,那么发送的ICMP回送请求在设定的延时内就不可能得到响应。四、网络设计分析(2/12)-使用原始套接字(1)为了实现发送/监听ICMP报文,必须使用原始套接字。在初始化原始套接字之后,本程序就要开始在一个IP网段内寻找活动主机。因为要寻找的主机可能很多,为节省时间可以采用多线程编程。四、网络设计分析(3/12)-使用原始

7、套接字(2)创建原始套接字的代码如下:SOCKETsockRaw;sockRaw=WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL,0,WSA_FLAG_OVERLAPPED);IPPROTO_ICMP-接收ICMP数据包为了使用发送接收超时设置必须将标志位置为WSA_FLAG_OVERLAPPEND。四、网络设计分析(4/12)-使用原始套接字(3)inttimeout=1000;setsockopt(sockRaw,SOL_SOCKET,SO_RCVTIMEO,(char*)&timeout,siz

8、eof(timeout));setsockopt(sockRaw,SOL_SOCKET,SO_SNDTIMEO,(char*)&timeout,sizeof(tim

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。