单臂路由

一、原理概述

以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响,并增强网络的安全性和可管理性。其缺点时同时也严格地隔离了不同VLAN之间的任何二层流量,使分属于不同VLAN的用户不能直接互相通信。在现实中,经常会出现某些用户需要跨越VLAN实现通信的情况,单臂路由技术就是解决VLAN间通信的一种方法。

单臂路由的原理是通过一台路由器,使VLAN间互通数据通过路由器进行三层转发。如果在路由器上为每个VLAN分配一个单独的路由器网络接口,随着VLAN数量的增加,必然需要更多的接口,而路由器没那么多接口,所以会在路由器的一个物理接口上通过配置子接口(即逻辑接口)的方式来实现以一当多的功能。路由器同一物理接口的不同子接口作为不同VLAN的默认网关,当不同VLAN间的用户主机需要通信时,只需要将数据包发送给网关,网关处理后在发送至目的主机所在的VLAN,从而实现VLAN间通信。

由于从拓扑图结构图上看,在交换机与路由器之间,数据仅通过一条物理链路传输,故被形象地成为“单臂路由”。

二、实验拓扑图

单臂路由 双vlan vlan单臂路由原理_路由器

三、配置步骤
1、配置PC,创建VLAN并配置Access、trunk接口

在LSW输入如下命令:

sys
vlan batch 2 3
inter e0/0/1
port link-type access 
port default vlan 2
inter e0/0/2
port link-type access
port default vlan 3
inter g0/0/1
port link-type trunk 
port trunk allow-pass vlan all
2、配置路由器子接口和IP地址

由于路由器Router只有一个实际的物理接口与交换机LSW相连,可以在路由器上配置不同的逻辑子接口来作为不同VLAN网关,从而达到节省路由器接口的目的。

在Router输入如下命令:

sys
inter g0/0/0.1
ip address 192.168.2.254 24
inter g0/0/0.2
ip address 192.168.3.254 24

虽然目前已经创建了不同的子接口,并配置了相关IP地址,但依然PC1和PC2是无法通信的。这是由于处于不同VLAN下,不同网段的PC间要实现互相通信,数据包必须通过路由器进行中转。Router接口到的数据加上了VLAN标签,而路由器作为三层设备,默认无法处理带VLAN标签的数据包。因此需要在路由器上的子接口下配置对应VLAN的封装,使路由器能够识别和处理VLAN标签,包括剥离和封装VLAN标签。

3、配置路由器子接口封装VLAN

使用dot1q termination vid命令配置子接口对一层tag报文的终结功能。即配置该命令后,路由器子接口在接受带有VLAN tag的报文时,将剥掉tag进行三层转发,在发送报文时,会将与子接口对应VLAN的VLAN tag添加到报文中。

使用arp broadcast enable 命令开启子接口的ARP广播功能。如果不配置该命令,将会导致该子接口无法主动发送ARP广播报文,以及向外转发IP报文。

在Router输入如下命令:

inter g0/0/0.1
dot1q termination vid 2
arp broadcast enable 
inter g0/0/0.2
dot1q termination vid 3
arp broadcast enable

四、测试

查看路由器Router的接口状态:


单臂路由 双vlan vlan单臂路由原理_单臂路由 双vlan_02


查看路由器Router的路由表:


单臂路由 双vlan vlan单臂路由原理_网络_03


在PC1 ping PC2:


单臂路由 双vlan vlan单臂路由原理_单臂路由 双vlan_04