<返回更多

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

2019-10-09    
加入收藏

我们都知道不同网段的PC之间要实现互通,中间必须要接个具有三层功能的设备,因为只有三层设备(通常是路由器)才能在不同的网段之间查找路由,实现跨网段互访,如下图所示:

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

PC通过路由器实现跨网段通信

但是如果将拓扑图中的路由器换成二层交换机,就没有办法互访了,小伙伴有没有想过其中的原因呢?我也是回答了一个悟空问答,梳理它们之间的通信流程以后才知道的,今天和大家分享一下!

不同网段之间通信

拓扑

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

PC和二层交换机连接图

  1. PC1和PC2配置不同的网段,PC1的网段是192.168.1.0/24, PC2的网段是192.168.2.0/24;
  2. PC1配置的网关是192.168.1.1,PC2配置的网关是192.168.2.1;
  3. PC1想要访问PC2。

相关配置

PC1配置:只配置IP、网关、掩码;

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

PC1配置

PC2配置:和PC1类似,只是网段不同;

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

PC2配置

二层交换机配置:将和PC1、PC2相连的接口配置在同一个VLAN里(VLAN2);

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

同一个VLAN

访问过程

当PC1访问PC2,发现PC2和自己不在同一个网段,所以就会把报文发送给网关。PC1配置的网关地址是192.168.1.1,PC1首先会在自己的ARP表项中查询192.168.1.1对应的mac地址,如果下图所示:

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

 

结果发现PC1中没有网关对应的MAC,就会发送ARP Request去请求其MAC,格式如下:

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

ARP 请求

此时网络中没有任何设备配置为192.168.1.1,所以没有人回复。

这样PC1永远都获取不到网关的MAC,而获取不到网关的MAC,就没有办法给网关发送数据,因为发送数据需要二层MAC封装三层数据

这样就进入一个死循环,PC1在第一步获取网关MAC地址时就被阻塞了,根本还没有给PC2发送任何数据,更谈不上通信。

访问结果

PC1和PC2不能互通,不同网段之间使用二层交换机不能通信。

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

无法访问

疑问解惑

估计有的小伙伴看到这里,会有疑问,交换机收到PC1发送的ARP请求以后,会转发给PC2,PC2回复不就行了。的确PC2能够收到PC1发送的ARP报文,但是这个ARP请求报文,请求的target IP对象并不是PC2,而是网关,所以PC2肯定不会回复,不然世界就乱了。

还有小伙伴会说:如果PC1能够直接请求PC2的MAC,那么这两台PC之间不就可以通信了?这想法是好的,但是PC1却不会这么做,因为按照规则,不同网段之间的通信,必须要通过网关,不会直接向PC2发送请求的。

查看交换机的MAC地址表,已经学习到PC1的MAC地址。

告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到

交换机MAC地址表

总结

各位小伙伴看到这里明白了吗?不同的网段之间的PC通过二层交换机通信,直接在获取网关的时候就阻塞了,后面更不可能通信了,这点应该好多人想不到:)

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>