设为首页收藏本站language 语言切换
查看: 1776|回复: 5
收起左侧

[求助] 求助一道关于arp和icmp的问题

[复制链接]
发表于 2019-2-17 22:12:10 | 显示全部楼层 |阅读模式
10鸿鹄币
配置和拓扑如图所示,问题是主机2ping 主机1的ip地址的时候,写出arp和icmp数据包的走向。我用抓包软件抓出来了,流程如下。后面也配了抓包的图片。
****
PC2发送广播arp请求23.3的mac地址
PC1发送单播arp应答给PC2
PC2发送icmp请求报文,无应答
PC1发送arp请求网关23.2的mac地址
网关发送单播arp应答给PC1
PC2发送第二个icmp请求
PC1发送icmp应答给网关
网关发送广播arp请求23.100的mac地址
网关发送icmp重定向报文给PC1 让PC1指定23.100为网关
网关再回复PC2一个icmp应答报文,期中源mac地址是网关。
****
我对这个过程的疑问:
第一个疑问:主机1到第一个icmp请求报文的时候,没做回复,却向网关发送arp请求 请求网关的mac,这是为什么?
第二个疑问:我知道icmp重定向是发送给一个主机让这个主机更改去往某条路径时所使用的网关的,但是我这道题目中网关发送icmp重定向报文是为什么呢? 而且即便是发了重定向报文, 我在后续的抓包中,主机1仍然是将23.2地址的mac为目的mac地址来发报文的,这又是为什么?


拓扑图,备注:华为的vlanif 就是思科里的svi

拓扑图,备注:华为的vlanif 就是思科里的svi
抓包.png

最佳答案

查看完整内容

第一个疑问:主机1到第一个icmp请求报文的时候,没做回复,却向网关发送arp请求 请求网关的mac,这是为什么? 这里要理清楚PC1针对ARP和ICMP不同的动作,针对ARP报文PC1是不会计算子网的,也就是无论谁给他发送ARP他都会单播回复ARP报文(无论是否同网段),所以PC2 ping PC1时候能够收到PC1的ARP回复报文,从而能够发送ICMP的请求报文。但是当PC2的 ICMP 请求报文到达PC1后,这时候PC1就要计算子网了,他发现他和PC2不在同一网段 ...
发表于 2019-2-17 22:12:11 | 显示全部楼层
第一个疑问:主机1到第一个icmp请求报文的时候,没做回复,却向网关发送arp请求 请求网关的mac,这是为什么?
这里要理清楚PC1针对ARP和ICMP不同的动作,针对ARP报文PC1是不会计算子网的,也就是无论谁给他发送ARP他都会单播回复ARP报文(无论是否同网段),所以PC2 ping PC1时候能够收到PC1的ARP回复报文,从而能够发送ICMP的请求报文。但是当PC2的 ICMP 请求报文到达PC1后,这时候PC1就要计算子网了,他发现他和PC2不在同一网段,这时候需要发送ARP请求网关的MAC地址,当网关回复PC2MAC地址后,他才能给PC2发送ICMP的回复报文。所以报文路径是一个三角形结构:ICMP请求:PC2-PC1  ICMP回复:PC1-GW-PC2

第二个疑问:我知道icmp重定向是发送给一个主机让这个主机更改去往某条路径时所使用的网关的,但是我这道题目中网关发送icmp重定向报文是为什么呢? 而且即便是发了重定向报文, 我在后续的抓包中,主机1仍然是将23.2地址的mac为目的mac地址来发报文的,这又是为什么?
因为网关的掩码是24位,对于网关自己来说PC1和PC2都属于同一网段,所以当报文到达网关后,网关交PC1直接发送给PC2就好,但是实际上PC1自身与PC2处于不同的网段,所以PC1收到网关的ICMP重定向后,因为自身掩码的原因,不会响应网关发送的ICMP 重定向报文。所以报文路径不变

点评

支持: 4.0
支持: 4
解說清楚。  发表于 2019-2-18 09:43

评分

参与人数 1好评度 +1 收起 理由
abletjon + 1 很给力!

查看全部评分

沙发 2019-2-17 22:12:11 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2019-2-18 10:24:26 | 显示全部楼层
84983251 发表于 2019-2-17 23:09
第一个疑问:主机1到第一个icmp请求报文的时候,没做回复,却向网关发送arp请求 请求网关的mac,这是为什么 ...

最后一个疑问那里,因为掩码的问题,可以具体点吗?我还没明白,因为掩码问题,PC1会认为网关和他处于同一网段,PC2和他不在同一个网段我知道,但这里头为什么PC1不会响应icmp重定向报文?
前面的解释都很清楚,我明白了,谢谢

点评

ICMP报文是GW发的,是让PC1直接找PC2。但是PC1是不是直接到达PC2的所以PC1就不会响应这份ICMO重定向报文  详情 回复 发表于 2019-2-18 13:07
板凳 2019-2-18 10:24:26 回复 收起回复
回复

使用道具 举报

发表于 2019-2-18 13:07:24 | 显示全部楼层
FranzHarris 发表于 2019-2-18 10:24
最后一个疑问那里,因为掩码的问题,可以具体点吗?我还没明白,因为掩码问题,PC1会认为网关和他处于同 ...

ICMP报文是GW发的,是让PC1直接找PC2。但是PC1是不是直接到达PC2的所以PC1就不会响应这份ICMO重定向报文
地板 2019-2-18 13:07:24 回复 收起回复
回复

使用道具 举报

发表于 2019-3-3 22:53:34 | 显示全部楼层
Thanks.
5# 2019-3-3 22:53:34 回复 收起回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-5-12 10:53 , Processed in 0.108226 second(s), 33 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表