深度剖析IP或网关配置错误背后的爱恨情仇

目录

一、问题描述

二、实验准备

三、实验场景

 实验探究(问题1):

 实验探究(问题2):

四、实验总结


一、问题描述

  1. PC主机的默认网关配置正确,而IP地址配置错误;会带来什么问题?
  2. PC主机的IP地址配置正确,但默认网关配置错误;会带来什么问题?

二、实验准备

  • 模拟软件:思科模拟器

三、实验场景

深度剖析IP或网关配置错误背后的爱恨情仇_第1张图片

 实验探究(问题1):

        在上图中,我们将PC0的IP地址故意设置为:192.168.2.1/24,其默认网关地址配置成192.168.1.254;在这样一个场景下主机PC0要访问外网主机PC1,两者之间为什么不能够互通呢?

        下面我们将PC0 主动去ping PC1的ip地址,通过抓包来分析之间的无法互通的秘密:

首先PC0设置默认网关后,系统就会自动在本地添加一条默认路由“0.0.0.0” ,其下一跳IP地址为R1的网关地址192.168.1.254。接着PC0在ping PC1的过程中,PC0会生成一个源IP:192.168.2.1 目的IP:10.0.11.1的数据包;然后会去查本地路由表发现要想访问目的主机PC1,就必须将数据帧交给192.168.1.254的R1路由器。由于数据包在传输过程中要经过以太网(数据包经过以太网要携带源目主机MAC地址)需要封装成帧,于是PC0就会向本机的ARP缓存表中查找默认网关所对应的MAC地址,好将其作为数据帧的目的MAC。经查发现ARP缓存表中并无默认网关R1的MAC地址。因此,PC0就将发给PC1的数据包先缓存起来,等通过ARP请求获取到默认网关的MAC地址后在做封装成帧,然后转发。

        于是PC0就发起了ARP广播请求(S_MAC: PC0  D_MAC: 全0    S_ip:192.168.2.1  D_ip:192.168.1.254)请求获取R0网关的MAC地址。当ARP请求包到达R0时,路由器R0检查看数据帧目的MAC发现是广播地址(设备都接受收),于是解封装、剥离掉二层的帧;然后查看ARP数据包发现:虽然ARP请求的目的IP是R0路由器本身但此ARP数据包的发起者的IP地址与R0路由器接收此包的接口IP不在同一网段内即不在一个广播域内;于是R0就不理会PC0向其请求的MAC地址(只有ARP的源IP地址和接收者的接口IP地址在同一网段内,不并且ARP数据包的请求的目的IP地址是接收者本身的IP地址时,才会将自己的MAC地址响应给ARP源主机)。 

      这样一来,PC0就无法获取到R0网关192.168.1.254的MAC地址,本地ARP缓存表中也就没有默认网关R0的MAC地址,进而导致PC0无法根据本地ARP表中默认网关的MAC地址将发给PC1的数据包封装成帧,进而PC0发给PC1的数据包也就无法通过网线到达PC0,所以PC0无法实现与PC1之间的互通。

 实验探究(问题2):

深度剖析IP或网关配置错误背后的爱恨情仇_第2张图片

         在此图中将主机PC0的IP地址配置的和R0在同一网段内而网关随意进行配置,这样情况下,PC0可以访问外网吗?

        如果我们将PC0的默认网关进行随意配置,此时PC0的主机路由表中的默认路由的下一条就会是192.168.2.254。 在这种情况下,如果PC0访问外网,那么PC0查路由表发现目的IP的下一跳是192.168.2.254即需要将数据帧发送到此IP地址所在的设备处才能访问外网。于是PC0需要知道192.168.2.254的MAC地址,查本地ARP缓存表中没有、触发ARP广播请求(S_mac: PC0  D_mac: 全F    S_ip: 192.168.1.1  D_ip : 192.168.2.254)在局域网中进行广播泛洪;由于局域网内的全部网络设备的IP地址都是:192.168.1. 0/24网段内的、无192.168.2.254的IP地址所对应的网络设备,因此导致整个局域网、广播域内无任何设备响应PC0发起的ARP请求包,进而PC0也就获取不到192.168.2.254等瞎配置的默认网关的mac地址,PC0也就无法将访问外网的数据包封装成帧,因此PC0也就无法访问外网。但PC0可以访问和自己在同一网段、物理网络内的网络设备。

四、实验总结

一、同一物理网络,主机IP地址配置错误、网关等选项配置正确的情况下,如果主机访问外网,触发ARP请求获取网关的MAC地址时,网关设备收到ARP请求包:

1、检查ARP发起者的源IP地址是否与接收到的ARP包接口的IP地址在相同网段内(相同广播域)---->如果不在,则丢弃ARP请求包。

2、检查ARP请求包目的IP地址,是否为自身接口的IP地址,如果不是则丢弃。以上两种情况同时满足的情况下,设备才会回复ARP请求包。

二、如果主机默认网关设置的并不是主机所在物理网络的真实网关设备的IP地址,那么主机就会因无法获取到设置的网关设备的MAC地址(ARP请求包的目的网关IP所在设备,因不在主机所在的物理网络内,而得不到响应)而无法进行访问外网。

@声明:“山月润无声”博主知识有限,以上内容如有不妥,小弟定当虚心受教!

你可能感兴趣的:(网络工程,tcp/ip,网络协议,wireshark,华为,运维,计算机网络)