ICMP协议(ping命令,traceroute命令)

ICMP协议
ICMP协议是一个网络层协议。
我们在建立好网络通信的时候,肯定要进行网络是否通畅。我们知道IP协议并不提供可靠的传输,无法通过IP协议来反馈我们的网络是否通畅,TCP又是传输层的协议,并不能在这里使用,所以提出了ICMP协议。专门为了测试我们网络是否通畅。

ICMP功能
1.确认IP包是否成功到达目的地址
2.通知在发送IP包过程中丢包的原因
3.ICMP也是基于IP协议工作的,但是它并不是传输层的功能
4.ICMP只能在IPv4使用,IPv6下,使用ICMPv6

ICMP协议(ping命令,traceroute命令)

ICMP格式
ICMP协议(ping命令,traceroute命令)


ping命令
ICMP协议(ping命令,traceroute命令)
ping的是一个域名
ping命令不光能验证网络的连通性,同时也会统计响应时间和包的生存周期(TTL)
ping命令会发送一个ICMP Echo Request给对端
对端接收到之后,会返回一个ICMP Echo Reply

ICMP协议(ping命令,traceroute命令)

注意:

ping命令是基于ICMP,是网络层的东东。


traceroute命令
基于ICMP协议实现的,能够打印出可执行程序主机,一直到目标主机之前经历多少路由器。