两个不同网段的 IP 地址能 ping 通,但是为什么不能在 ARP 上找到另一个的 MAC 地址?
回答·60
最热
最新
- 我不太了解贵公司的网络环境,结合本公司的实际情况做一下解释。 首先,两个不同网段两个 IP 想要 ping 通肯定是要通过三层设备,例如:三层交换机、防火墙或者路由器,我在的公司电脑接入的二层交换机是只能 show 到三层交换机的管理 ip 和 mac(第一张图),在三层交换机上可以 show 到所有网段接入电脑的 ip 和 mac(第二张图)。
- 不同网段的主机之间通信,主机发送数据包的时候二层封装的是网关的 Mac 地址。 跨网段通信双方会把数据包发给网关进行转发,之前如果主机内 ARP 缓存中没有网关 Mac 地址,会发送 ARP 请求网关 Mac 地址,然后封装上网关的 Mac 进行发送。 数据包到达网关后,网关进行解封装查看三层信息,查找路由表后重新进行封装,此时源 Mac 由以前的主机网卡的 Mac 变为网关设备上下一跳出接口的 Mac,目的 Mac 变为下一跳地址所在接口的 Mac,如果没有下一跳地址对应的 Mac 信息,则发 ARP 广播进行请求后再进行封装。 如此往复,不管经过多少跳,数据包最终会到达目的地址,目标主机收到的数据包源 Mac 为网关 Mac,目的 Mac 则是自己网卡的 Mac。 总的来说就是 ARP 报文不会跨广播域,主机在跨网段通信过程中只会请求网关 Mac 地址,而三层设备在转发数据包过程中也只会请求下一跳地址所在接口的 Mac。 希望我的回答对你有帮助。
- mac 地址只在同一网段内有效,是在一个网段(二层)内唯一标识一个设备的,跨网段就得用三层设备路由了,数据包一旦跨越网段,mac 地址就被路由器或者三层交换机等路由设备替换了,除非软件将 mac 地址放入数据载荷中,否则无法跨越网段获悉对方的 mac 地址
- 不同网段能 ping 通说明使用了路由功能,基于三层和四层(tcp/ip),而如果需要访问远端的机器(不是同一个本地局域网),则需要使用到代理 arp 技术,你能获取到 mac 地址,但是不是另一个机器的 mac 地址,而是那个机器网关地址。
- ping 的时候找到的是网关的物理地址,主机将数据包发送给网关,网关查看路由表转发报文。 ARP 是通过广播发送的,所以不能穿越路由器,只能交给网关了,所以找到的 Mac 地址是网关的 Mac 地址。
- mac 之间传输只能是内网!!!! CCNA 学习指南有! 不同网段 IP 传输,目标地址和原地址不变,但是 mac 地址是不断变的过程!!!!
- 得说明 ping 的过程是经过了交换机还是路由器 给上面和下面的各位解答一下,只要 ip 地址的前三节相同哪怕不在同一网段交换机也能 ping 通 比如:192.168.1.1/16 和 192.168.12/24 不知道的话可以不用看这个问题了
- ARP 同网段基本常识,你还是找个厂子上班吧
- 因为 ARP 表象只会记录自身拥有同网段的地址
- 首先你搞清楚,arp 表和 mac 地址表是两个不同的东西。mac 地址表在 ois 模型的数据链路层,而 arp 协议运行在在 2.5 层也可以理解为网络层。数据包每经过一跳(路由器或交换机,不包含傻瓜式交换机)它的源目 mac 都是改变,但是它的源目 ip 是永远不会变(除去 N AT 或其他特殊场景),你在电脑上收到的数据包是中,源 mac 地址是离你最近的一台网络设备的 mac 地址。