eNSP-利用单臂路由实现VLAN 间路由
原理概述
以太网中, 通常会使用VLAN 技术隔离二层广播域来减少广播的影响,并增强网络的安全性和可管理性。其缺点是同时也严格地隔离了不同VLAN 之间的任何二层流量,使分属于不同VLAN 的用户不能直接互相通信。在现实中, 经常会出现某些用户需要跨越VLAN 实现通信的情况,单臂路由技术就是解决VLAN 间通信的一种方法。
单臂路由的原理是通过一台路由器,使VLAN 间互通数据通过路由器进行三层转发。如果在路由器上为每个VLAN 分配一个单独的路由器物理接口,随着VLAN数量的增加, 必然需要更多的接口,而路由器能提供的接口数昼比较有限,所以在路由器的一个物理接口上通过配置子接口(即逻辑接口)的方式来实现以一当多的功能,将是一种非常好的方式。路由器同一物理接口的不同子接口作为不同VLAN 的默认网关,当不同VLAN 间的用户主机需要通信时,只需将数据包发送给网关,网关处理后再发送至目的主机所在VLAN, 从而实现VLAN 间通信。由于从拓扑结构图上看,在交换机与路由器之间,数据仅通过一条物理链路传输,故被形象地称之为“ 单臂路由“。
实验目的
• 理解单臂路由的应用场景
• 掌握路由器子接口的配置方法
• 掌握子接口封装VLAN 的配置方法
• 理解单臂路由的工作原理
实验内容
本实验模拟公司网络场景。路由器R1是公司的出口网关,员工PC 通过接入层交换机(如S2 和S3) 接入公司网络,接入层交换机又通过汇聚交换机S1 与路由器R 1相连。公司内部网络通过划分不同的VLAN 隔离了不同部门之间的二层通信,保证各部门间的信息安全,但是由于业务需要,经理、市场部和人事部之间需要能实现跨VLAN 通信,网络管理员决定借助路由器的三层功能,通过配置单臂路由来实现。
实验拓扑
利用单臂路由实现VLAN 间路由拓扑如图
实验编址
我们配置一下相关信息
设备 | 接口 | IP地址 | 子网掩码 | 默认网关 |
R1 (AR2220) | GE 0/0/1.1 | 192.168.1.254 | 255.255.255.0 | N/A |
GE 0/0/1.2 | 192.168.2.254 | 255.255.255.0 | N/A | |
GE 0/0/1.3 | 192.168.3.254 | 255.255.255.0 | N/A | |
PC-1 | Ethernet0/0/1 | 192.168.1.1 | 255.255.255.0 | 192.168.1.254 |
PC-2 | Ethernet0/0/1 | 192.168.1.2 | 255.255.255.0 | 192.168.2.254 |
PC-3 | Ethernet0/0/1 | 192.168.1.3 | 255.255.255.0 | 192.168.3.254 |
实验步骤
1、创建VLAN 并配置Access 、Trunk 接口
公司为保障各部门的信息安全,需保证隔离不同部门间的二层通信,规划各部门的终端属于不同的VLAN,并为PC 配置相应IP 地址。
在S2 上创建VLAN 10 和VLAN20, 把连接PC-1 的E 0/0/1 和连接PC-2 的E 0/0/2接口配置为Access 类型接口,并分别划分到相应的VLAN 中。
在S3 上创建VLAN 30, 把连接PC-3 的E 0/0/ 1 接口配置为Access 类型接口, 并划分到VLAN30 。
交换机之间或交换机和路由器之间相连的接口需要传递多个VLAN 信息,需要配置成Trunk 接口。
将S2 和S3 的GE 0/0/2 接口配置成Trunk 类型接口,并允许所有VLAN 通过。
在S1 上创建VLAN 10 、VLAN20 和VLAN30 , 并配置交换机和路由器相连的接口为Trunk, 允许所有VLAN 通过。
2、配置路由器子接口和IP 地址
由于路由器R1只有一个实际的物理接口与交换机S1 相连,可以在路由器上配置不同的逻辑子接口来作为不同VLAN 的网关,从而达到节省路由器接口的目的。
在R1 上创建子接口GE 0/0/1.1, 配置IP 地址192 . 168.1.254/24, 作为人事部网关地址。
在R1 上创建子接口GE 0/0/1.2, 配置IP 地址192 . 168.2.254/24, 作为市场部网关地址。
在R1 上创建子接口GE 0/0/1.3, 配置IP 地址192 .168.3.254/24, 作为经理的网关地址。
在PC-1 、PC-2 和PC-3 上配置1P 和相应的网关地址后,在PC-1 上测试与PC-2 和PC-3 间的连通性。可以观察到,通信仍然无法建立。
3. 配置路由器子接口封装VLAN
虽然目前已经创建了不同的子接口,并配置了相关IP 地址, 但是仍然无法通信。这是由于处于不同VLAN 下,不同网段的PC 间要实现互相通信,数据包必须通过路由器进行中转。由S1发送到R1的数据都加上了VLAN 标签,而路由器作为三层设备,默认无法处理带了VLAN 标签的数据包。因此需要在路由器上的子接口下配置对应VLAN 的封装,使路由器能够识别和处理VLAN 标签,包括剥离和封装VLAN标签。
在R1的子接口GE 0/0/1.1 上封装VLAN 10, 在子接口GE 0/0/1.2 上封装VLAN20,在子接口GE 0/0/ 1.3 上封装VLAN30, 并开启子接口的ARP 广播功能。
使用dot1q termination vid 命令配置子接口对一层tag 报文的终结功能。即配置该命令后,路由器子接口在接收带有VLAN tag 的报文时,将剥掉tag 进行三层转发,在发送报文时, 会将与该子接口对应VLAN 的VLAN tag 添加到报文中。
使用arp broadcast enable 命令开启子接口的ARP 广播功能。如果不配置该命令,将会导致该子接口无法主动发送ARP 广播报文, 以及向外转发IP 报文。
同理配置R1 的子接口GE 0/0/ 1.2 和GE 0/0/1.3 。
配置完成后,在路由器R1 上查看接口状态。可以观察到, 3 个子接口的物理状态和协议状态都正常。
查看路由器R1 的路由表。
[R1]display ip routing-table Route Flags: R - relay, D - download to fib Routing Tables: Public Destinations : 13 Routes : 13
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0 127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0 127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0 192.168.1.0/24 Direct 0 0 D 192.168.1.254 GigabitEthernet0/0/1.1 192.168.1.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1.1 192.168.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1.1 192.168.2.0/24 Direct 0 0 D 192.168.2.254 GigabitEthernet0/0/1.2 192.168.2.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1.2 192.168.2.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1.2 192.168.3.0/24 Direct 0 0 D 192.168.3.254 GigabitEthernet0/0/1.3 192.168.3.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1.3 192.168.3.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1.3 255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0 |
可以观察到,路由表中已经有了192.168.1.0/24 、192.168.2.0/24 、192.168.3.0/24 的路由条目,并且都是路由器R1 的直连路由, 类似于路由器上的直连物理接口。
在PC- 1 上分别测试与网关地址192.168.1.254 和PC-2 间的连通性。可以观察到,通信正常。
在PC-1 上Tracert PC-2 。
可以观察到PC-1 先把ping 包发送给自身的网关192.168.1.254, 然后再由网关发送到PC-2 。
现以PC-1 ping PC-2 为例,分析单臂路由的整个运作过程。
两台PC 由于处于不同的网络中,这时PC-1 会将数据包发往自己的网关,即路由器R1的子接口GE 0/0/1.1 的地址192.168.1.254 。
数据包到达路由器R1 后,由于路由器的子接口GE 0/0/1.l 已经配置了VLAN 封装,当接收到PC-1 发送的VLAN 10 的数据帧时,发现数据帧的VLANID 跟自身GE0/0/1.1 接口配置的VLAN ID 一样,便会剥离掉数据帧的VLAN 标签后通过三层路由转发。
通过查找路由表后,发现数据包中的目的地址192.168.2. 1 所属的192. 168 .2.0/24 网段的路由条目,已经是路由器R1 上的直连路由,且出接口为GE 0/0/1.2, 便将该数据包发送至GE 0/0/1.2 接口。
当GE 0/0/1 .2 接口接收到一个没有带VLAN 标签的数据帧时,便会加上自身接口所配置的VLAN ID20 后再进行转发,然后通过交换机将数据帧顺利转发给PC-2 。