ICMP
-
什么是ICMP:
- Internet Control Message Protocol 互联网控制报文协议 用于监察网络情况
- 封装在IP包里
-
报文类型
-
查询报文类型:主动请求,获取主动应答的ICMP协议
-
例如:ping
-
标识符
- 请求:ICMP ECHO REQUEST
- 回复:ICMP ECHO REPLY\
-
序号
-
-
差错报文类型:异常情况
-
例如:终点不可达为 3,源抑制为 4,超时为 11,重定向为 5
-
终点不可达:目的地不通
-
源站抑制:源站放慢速度\
-
时间超时:超时\
-
路由重定向:转发给别的路由器
-
-
\
ping
-
过程:
-
源主机构建ICMP 请求数据包(类型字段+顺序号(目的:可以计算往返时间))\
-
构建IP包
-
加入mac头(ARP缓存+ARP查询)
-
主机B检查MAC地址,IP地址,并返回类型=0+顺序号发送给主机A
-
-
通过 tcpdump -i eth0 icmp,查看包有没有到达某个点,回复的包到达了哪个点,可以更加容易推断出错的位置\
Traceroute
-
差错报文
-
作用:
- 1.故意设置特殊的 TTL,来追踪去往目的地时沿途经过的路由器
- 2.故意设置不分片,从而确定路径的 MTU
总结
-
ICMP 相当于网络世界的侦察兵\
-
ping 使用查询报文,Traceroute 使用差错报文\
\