为了保证本地ARP缓存准确,ARP还是经常要询问和应答IP和MAC的对应关系的啊
主机A开启,主机B关闭。A ping B:即192.168.1.120 ping 192.168.1.122
此时必然ping不通,返回请求超时,无法访问目标主机的错误报文。
ping已经关闭的本地主机,当然ping不通,请求超时
ping的同时,在主机A的网络接口处开始抓包,由于网络数据太多,下图筛选出ARP和ICMP协议,对照查看时可以通过Time字段或No字段的值确定网络数包出现先后顺序。
可猜测:主机A直接给B发ICMP数据包,没有收到回复信息;之后A给B发ARP地址解析请求,询问B的MAC地址;多次询问没有返回应答报文后,B发广播信息查询对应MAC地址。
给对应主机发ARP地址解析请求,一直得不到响应,改为广播发送信息
主机A和主机B正常开启,A通过防火墙设置禁止ICMP分组通过。B ping A 的截图如下。请求超时,ping不通。
设置ICMP过滤后,ping对应的主机,返回请求超时的错误
ping的同时,抓包主机B的网卡数据,发现:ping不通之后询问A的MAC地址,A能回答自己的MAC地址,回答后继续ping,因为A过滤了ICMP分组,还是PING不通。
猜测,主机B禁止ICMP分组通过,但可能ARP协议还是可以执行的。