13 IP层协议-网际控制报文协议ICMP

计算机网络资料下载:CSDN

为了更有效的转发IP数据报和提高交付成果的机会,在网际层使用了网际控制报文协议ICMP。ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP不是高层协议数据IP层数据层协议。

ICMP报文种类

ICMP报文的种类有两种,即ICMP差错报告报文和ICMP询问报文。

ICMP差错报告报文共有四种:

1)终点不可达 当路由器或主机不能交付数据报时就向源点发送终点不可达报文

2)时间超时 当路由器收到生存时间为0的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报全部数据报片时,就把收到的数据报片全部丢弃,并向源点发送时间超过报文。

3)参数问题 当路由器或目的主机收到的数据报的首部中有的i段的值不正确时,则丢弃该数据报,并向源点发送参数问题报文;

4)改变路由(重定向)路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器(可通过更好的路由器)

不发送ICMP差错报文的几种情况:

1,对ICMP差错报告报文,不再发送ICMP差错报告报文。

2,对第一个分片的数据报片的所有后续数据报片,都不发送ICMP差错报告报文

3,对具有多播地址的数据报,都不发送ICMP差错报告报文

4,对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报,不发送ICMP差错报告报文。

常用的ICMP询问报文

1)回送请求和回答 ICMP会送请求报文是由主机或路由器向一个特定的目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。这种询问报文用来测试目的站是否可达以及了解其有关状态

2) 时间戳请求和回答 ICMP时间戳请求报文是请某台主机或路由器回答当前的日期和时间。在ICMP时间戳回答报文中有一个32位的字段,表示从1900年1月1日到当前时刻一共多少秒。时间戳请求和回答用于时钟同步和时间测量。

ICMP协议的使用

ping (packet internet groper)分组网间探测,用来测试两台主机之间的连通性

traceroute(Linux下),tracert(windows下):traceroute用来跟踪一个分组从源点到终点的路径。

相关推荐
AI学IT3 分钟前
(安全防御)旁挂组网双机热备负载分担实验
运维·服务器·网络
挣扎与觉醒中的技术人31 分钟前
【技术干货】三大常见网络攻击类型详解:DDoS/XSS/中间人攻击,原理、危害及防御方案
前端·网络·ddos·xss
Lin桐2 小时前
②Modbus TCP转Modbus RTU/ASCII网关同步采集无需编程高速轻松组网
linux·网络协议·tcp/ip·网络安全·缓存·信息与通信·信号处理
anguruanjian2 小时前
安固软件指南:确保外发文件安全的全面策略
服务器·网络·安全·企业微信·安固软件
esmember2 小时前
电路研究9.3.1——合宙Air780EP中的AT开发指南:TCP 使用 SSL 示例
网络·at指令·tcp 使用 ssl 示例
自由鬼2 小时前
免费开源抓包工具Wireshark介绍
运维·服务器·网络·测试工具·网络安全·wireshark
真正的醒悟4 小时前
SSL-VPN案例
网络·windows·ssl
愚公搬代码6 小时前
【愚公系列】《Python网络爬虫从入门到精通》045-Charles的SSL证书的安装
网络·爬虫·python·网络协议·ssl
不脱发的猴子9 小时前
Wireshark使用教程
网络·测试工具·wireshark
EasyCVR10 小时前
EasyRTC嵌入式视频通话SDK的跨平台适配,构建web浏览器、Linux、ARM、安卓等终端的低延迟音视频通信
android·arm开发·网络协议·tcp/ip·音视频·webrtc