欢迎来到天天文库
浏览记录
ID:40348390
大小:297.00 KB
页数:15页
时间:2019-07-31
《64 因特网控制报文协议ICMP》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、4.4因特网控制报文协议ICMP为了提高IP数据报交付成功的机会,在网际层使用了因特网控制报文协议ICMP(InternetControlMessageProtocol)。ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP不是高层协议,而是IP层的协议。ICMP报文作为IP层数据报的数据,加上IP首部,组成IP数据报发送出去。ICMP报文的格式首部ICMP报文0数据部分检验和类型代码(这4个字节取决于ICMP报文的类型)81631IP数据报前4个字节都是一样的ICMP的数据部分(长度取决于类型)ICMP协议----类型0回声应答(Echoreply)3
2、目的端无法到达(Destinationunreachable)4源抑制(SourceQuench)5重定向(Redirect)8回声请求(Echorequest)11数据报超时(Timeexceeded)12数据报参数错(Parameterproblem)13时间戳请求(TimestampRequest)14时间戳应答(TimestampReply)15信息请求(Informationrequest)已过时16信息应答(Informationreply)已过时17地址请求(Addressrequest)18地址应答(Addressreply)ICMP报文ICMP报文的种类
3、有两种ICMP差错报告类报文ICMP询问类报文ICMP报文的前4个字节是统一的格式,共有三个字段:类型代码检验和ICMP差错报告类报文共有5种终点不可达(类型值3)源站抑制(类型值4)时间超过(类型值11)参数问题(类型值12)改变路由(重定向)(类型值5)ICMP差错报告类报文的数据字段的内容首部IP数据报ICMP的前8字节装入ICMP报文的IP数据报IP数据报首部ICMP差错报告类报文8字节收到的IP数据报IP数据报首部8字节ICMP差错报告类报文IP数据报的数据字段不应发送ICMP差错报告报文的几种情况对ICMP差错报告报文不再发送ICMP差错报告报文。对第一个分片
4、的数据报片的所有后续数据报片都不发送ICMP差错报告报文。对具有多播地址的数据报都不发送ICMP差错报告报文。对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文。ICMP询问类报文有四种回送请求和回答报文(类型值8或0)时间戳请求和回答报文(类型值13或14)掩码地址请求和回答报文(类型值17或18)路由器询问和通告报文(类型值10或9)ICMP应用举例1AB数据网发数据给Z发往Z的IP数据报我不知道如何到达Z?用ICMP通知A报告目的端无法到达的ICMP包路由器用类型为3的ICMP信包通知源主机“目的地不可达”ICMP应用举例2--
5、--PING作用:PING(PacketInterNetGroper)用来测试两个主机之间的连通性。原理:PING使用了ICMP回送请求与回送回答报文。PING是应用层直接使用网络层ICMP的例子,它没有通过传输层的TCP或UDP。使用:ping127.0.0.1ping本机地址ping网关地址ping应用程序ICMP发送/接收ICMP接收/应答43214321ABB可以到达吗?ICMP回送请求可以,我在这里。ICMP回送应答用ping命令产生的回送请求(类型8)及回送应答(类型0)ICMP应用举例2----PINGICMP协议-PING屏幕跟踪主机A穿过网络到达主机B的
6、路径(在命令行打入tracertIPB)从主机A发送到主机B的各IP数据报可以选择不同的路径,但绝大多数情况下会选择相同的路径。令主机A发送一系列的ICMP包到主机B,其IP首部中TTL初值分别依次置为1、2、3…,主机A发出TTL=1的信包,路径上经过的第一个路由器收到后,TTL减1变为0,会丢弃该数据报,并发回一个“超时”类型的ICMP包给源主机,于是主机A知道了到主机B路径上第一个路由器的IP地址;主机A发出TTL=2的信包,路径上经过的第二个路由器收到后,TTL减1也变为0,会丢弃该数据报,发回“超时”类型ICMP包给源主机,于是主机A知道了到主机B路径上第二个路
7、由器的IP地址;……;依次类推,于是主机A知道了到达主机B路径上所有结点的IPICMP应用举例3----tracerouteTraceroute举例小结了解掌握ICMP的作用、报文类型和格式重点掌握目的结点不可达、回送请求/应答、路径跟踪三种ICMP信包的工作原理
此文档下载收益归作者所有