【交换机在江湖】第十四章 VLAN通信篇

前两期小编介绍了VLAN的基础知识以及如何划分VLAN,之后不断有读者询问: VLAN划分后,同一VLAN用户可以二层互通,不同VLAN用户则二层隔离,可有些场合不同VLAN用户又想互通,肿么办呢?

请大家先回忆一下:VLAN是广播域,而广播域之间来往的数据包一般由路由器中继的。因此,VLAN间的通信通常要用到路由功能,这被称作“VLAN间路由”。VLAN间路由,可以使用普通的路由器,也可以使用三层交换机。有了这个初步认识,接下来小编就开始介绍使用三层交换机进行VLAN间通信的主要场景和技术。

VLAN间通信场景一:不同VLAN不同网段用户间的通信,用户通过三层交换机互联

使用技术VLANIF 

基本原理:前面提到,要实现VLAN间互通,就要建立VLAN间路由,此场景用户直连在三层交换机上,只需直连路由即可。而VLANIF接口是一个三层的逻辑接口,在其上配置IP地址为用户的网关地址后,它就在三层交换机上生成直连路由,同时,可作为用户的网关。这样,发往各VLAN网段的报文,就可在路由表中分别找到其出接口---VLANIF接口,从而实现三层转发。

江湖小贴士:VLANIF只生成直连路由,只能使得相邻设备互通。现网中用户间可能会跨多台三层交换机(如三层网络),此时,除配置VLANIF外,还要借助静态路由或路由协议才能实现互通。

VLAN间通信场景二:不同VLAN不同网段用户间的通信,用户通过二层交换机互联,仅通过一台三层交换机实现VLAN间通信

使用技术子接口(又称单臂路由)

 

基本原理:跟VLANIF一样,子接口也是三层逻辑接口。在子接口上配置IP地址为用户的网关地址后,在三层交换机上同样形成直连路由,VLAN内的用户同样将网关指向对应的子接口(如图中VLAN2内用户的网关为Port1.1,VLAN3内用户的网关为Port2.1),进而实现三层通信。

江湖小贴士:通过子接口实现三层互通,虽然可减少物理接口占有量,不过由于发送的流量会争用物理主接口的带宽,网络繁忙时,会导致通信瓶颈哟。

VLAN间通信场景三:不同VLAN相同网段用户间的通信

使用技术Super VLAN(又称VLAN聚合)

如下图所示,因IP地址有限,不同VLAN用户共用一网段,但又需要互通以及访问外网。

 

基本原理:通过定义Super-VLAN和Sub-VLAN, Super-VLAN只用来建立三层VLANIF接口,与网关对应,不包含物理接口;Sub-VLAN只包含物理接口,不建立三层VLANIF接口,用来隔离广播域,一个Super-VLAN可以包含一个或多个Sub-VLAN。

我们可以这样看,每一个普通VLAN都有一个三层逻辑接口和若干物理接口。而Super VLAN把这两部分剥离开来:Sub-VLAN只映射物理接口,负责保留各自独立的广播域;而Super-VLAN负责实现所有Sub-VLAN共享同一个三层接口的需求,使不同Sub-VLAN内的主机可以共用同一个网关;然后再通过建立Super-VLAN和Sub-VLAN间的映射关系,把三层逻辑接口和物理接口这两部分有机的结合起来,从而在实现普通VLAN功能的同时,达到节省IP地址的目的。

江湖小贴士:Sub-VLAN内主机与外网间的通信,跟使用VLANIF通信原理类似,只不过多了一步查找Sub-VLAN与Super-VLAN的映射关系;但Sub-VLAN间的通信,需要借助Proxy-ARP才能实现,这是为什么呢?这是因为Sub-VLAN内的主机同属一个网关,彼此通信时只会做二层转发,而不会通过网关进行三层转发,但不同Sub-VLAN的主机在二层是相互隔离的,这就造成了Sub-VLAN间无法通信,需要借助Proxy-ARP才能实现。

上述组网中,VLAN间用户均是通过三层交换机实现三层互通,三层互通需要查找路由表,转发效率较低。而二层转发效率高,那VLAN间能否实现二层互通呢?

答案是可以的哦,那就是通过VLAN Switch或VLAN Mapping实现。

VLAN间通信场景四:不同VLAN用户跨一台或多台交换机互联

使用技术VLAN Switch

 

基本原理: 预先在各交换节点(如图中的Switch)上建立一条静态转发路径(即VLAN Switch表,指定VLAN转换关系和出接口)。这样,Switch根据VLAN Switch表将Port2上收到报文中的VLAN2转换为VLAN3,并从Port3发出;将Port3上收到报文的VLAN3将转换为VLAN2,并从Port2发出,从而实现VLAN2和VLAN3间的二层互通。

江湖小贴士:VLAN Switch转发查的是VLAN Switch表,而不是MAC表,这就使得VLAN Switch转发效率较高。但VLAN Switch是否就因此而可大量应用呢?否,因为VLAN Switch需要在途经的每个交换节点都要为每个VLAN用户配置静态转发路径,这就限制了其使用范围,当有大量VLAN用户接入,或用户跨运营商网络时就不再适用。

VLAN间通信场景五:不同VLAN用户跨运营商网络互联

使用技术VLAN Mapping

 

基本原理:预先在需要VLAN转换的两端设备(如图中SwitchA和SwitchB)配置VLAN映射关系,但不需像VLAN Switch那样指定出接口。配置后,SwitchA接收到VLAN10~50报文后,根据VLAN映射表将报文中的VLAN转换为VLAN100,根据MAC表查到VLAN100对应出接口Port2,VLAN100报文穿越运营商网络到达SwitchB的Port2接口时,找到其出接口Port1,在从出接口发出前,将VLAN100转换为VLAN60~90,进而可通过分支2的接入交换机二层转发到目的主机。因为只需在VLAN转换的两端设备配置,运营商网络无需改变其配置,大大简化了配置。

江湖小贴士:VLAN Mapping虽然大大简化配置,但VLAN Mapping需要通过查MAC表转发,转发效率上较VLAN Switch低些,并且易引入广播风暴以及收到MAC攻击。



接下来就跟大家讲解如何配置,由于篇幅限制,小编仅选一种常用的技术—VLANIF来讲解。

配置案例一:如下图所示,PC1和PC2分属研发部和质量部,两部门通过一台三层交换机互联,两部门有业务往来,需要二层隔离,三层通信。

 

配置思路

此场景配置简单,只需将连接PC的接口加入VLAN,然后创建VLANIF,并配置IP地址为对应用户的网关即可。

操作步骤

l  Switch上的配置如下:

#

sysname Switch
#
vlan batch 10 20
#
interface Vlanif10
 ip address 10.1.1.1 255.255.255.0  //此IP地址为PC1对应网关地址
#
interface Vlanif20
 ip address 10.1.2.1 255.255.255.0   //此IP地址为PC2对应网关地址
#
interface GigabitEthernet0/0/1     //将PC1划分到VLAN10中
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/2    //将PC2划分到VLAN20中
 port link-type access
 port default vlan 20

配置完成后,我们使用命令display ip routing-table查看设备上的路由:

 

可以看到,路由表中有了到达VLAN10、VLAN20网段的直连路由。下面我们就验证一下,PC1、PC2是否可以互相Ping通。

在验证之前,先设置PC1的IP地址为10.1.1.2 ,网关为10.1.1.1/24;设置PC2的IP地址为10.1.2.2 ,网关为10.1.2.1/24,然后互Ping,结果如下:

 

可以看到,互Ping成功,表明配置成功

典型案例二:如下图所示,为安全及便于管理,企业为服务器专门划分VLAN,用户属于VLAN10,服务器属于VLAN20,用户与服务器间跨接入、汇聚和核心交换机,其中,接入是二层交换机,汇聚、核心是三层交换机。由于业务需要,用户与服务器间需要互通。

 

配置思路:

此场景用户与服务器间跨越多台二层、三层交换机,可以配置VLANIF,将汇聚交换机AGG作为用户PC的网关,核心交换机作为服务器Server的网关。但VLANIF只生成直连路由,只能使得相邻设备互通,要使User与服务器互通,还需要配置从AGG到VLAN20网段以及从CORE到VLAN10网段的路由,可以使用静态路由,也可以使用动态路由,本示例采用静态路由。

操作步骤

1.  配置ACC、AGG、CORE的各接口,并将接口加入VLAN,使VLAN10的用户报文透传到AGG,VLAN20的Server报文透传到CORE

l  ACC1的配置如下:

#
sysname ACC1
#
vlan batch 10
#
interface GigabitEthernet0/0/1     //将User划分到VLAN10中
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/2    //透传VLAN10到AGG
 port link-type trunk
 port trunk allow-pass vlan 10
ACC2与此类似,只不过接口加入、透传的VLAN是VLAN20。

l  AGG的配置如下:

#
sysname AGG
#
vlan batch 10 30
#
interface GigabitEthernet0/0/1     //透传VLAN10,以转发User报文
 port link-type trunk
 port trunk allow-pass vlan 10
#
interface GigabitEthernet0/0/2  //透传互联VLAN30,以转发互联报文
 port link-type trunk
 port trunk allow-pass vlan 30

l  CORE的配置如下:

#
sysname CORE
#
vlan batch 20 30
#
interface GigabitEthernet0/0/1     //透传VLAN20,以转发Server报文
 port link-type trunk
 port trunk allow-pass vlan 20
#
interface GigabitEthernet0/0/2  //透传VLAN30,以转发互联报文
 port link-type trunk
 port trunk allow-pass vlan 30

2.  在AGG上配置VLANIF10和IP地址,作为用户的网关;在CORE上配置VLANIF20,作为Server的网关,同时配置互联VLANIF30,使AGG与CORE互通

AGG的配置如下:
#
interface Vlanif10
 ip address 10.1.1.1 255.255.255.0  //此IP地址为User对应网关地址
#
interface Vlanif30
 ip address 10.10.30.1 255.255.255.0 //互联IP地址,不能与User、Server的IP网段冲突
CORE的配置如下:
#
interface Vlanif20
 ip address 192.168.1.1 255.255.255.0  //此IP地址为Server对应网关地址
#
interface Vlanif30
 ip address 10.10.30.2 255.255.255.0 //互联IP地址,不能与User、Server的IP网段冲突
配置至此,我们验证一下User是否能Ping通Server:
可以看到,User此时Ping不通Server,这是因为AGG上没有到达Server网段192.168.1.0/24的路由: 

3.  AGGCORE上配置静态路由

AGG的配置如下:

#

ip route-static 192.168.1.0 255.255.255.0 10.10.30.2

CORE的配置如下:

#

ip route-static 10.1.1.0 255.255.255.0 10.10.30.1

江湖小贴士:对于VLANIF、Eth-Trunk这样的逻辑接口,静态路由必须采用下一跳,而不能是出接口,因为这些逻辑接口会有多个成员口,会出现多个下一跳,无法唯一确定下一跳。
配置完成后,我们再来用User Ping Server,结果如下:

可以看到,User可以Ping通Server,配置成功。

本期的VLAN通信,小编就介绍到这里。诸位如要了解其他VLAN间通信的配置方法,请点击配置指南-以太网交换获取。

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值