ICMP(ping)请求中包含哪些数据?

exv*_*nce 9 ping icmp

我知道ICMP请求包含IP地址.客户端MAC地址是否包含在ICMP请求中?ping请求中还包含哪些其他信息(如果有)?

Edg*_*rks 10

ICMP请求是通过因特网发送的分层分组.它包含Ether层,其中包含目标和源MAC地址.它还包含IP层,它具有源IP和目标IP以及包含的几个标志.最后它包含ICMP数据.这包含一个类型,一个子类型,然后是校验和以及标题的其余部分,它可以根据类型和子类型而变化(例如,echo的代码是8,回复是0).

网络数据包中有很多信息.另请注意,ICMP是IPv4协议的一部分,因此其他协议无法正式承载.虽然IP协议可以在与以太网协议不同的协议上承载.

每次通过路由器后,MAC地址都会被更改.所以这绝不是互联网上源IP地址的MAC地址.但IP地址肯定包含在本地网络中,客户端的mac地址仍然在Ether层的数据包中.

维基百科有一些关于ICMP数据包的可读文章:icmp消息和带有可读图的不同协议.

如果您想查看一些实时请求,可以安装wireshark,它将为您显示和剖析所有网络流量.这是一个非常方便和酷的工具.