VLAN实验四:利用单臂路由实现VLAN间路由
一、题目及要求:
二、实验原理:
利用单臂路由技术解决某些用户需要跨越VLAN实现通信的情况。
单臂路由通过一台路由器,使VLAN间互通数据通过路由器进行三层转发。在路由器的一个物理接口上通过配置子接口(逻辑接口)的方式来实现以一当多的功能。路由器同一物理接口的不同子接口作为不同VLAN的默认网关,当不同VLAN间的用户需要通信时,只需将数据包发送给网关,网关处理后再发送至目的主机所在VLAN,从而实现VLAN间的通信。在交换机与路由之间,数据仅通过一条物理链路传输。
三、实验步骤:
1.基本配置:
2.创建VLAN并配置Access、Trunk接口
在S2上创建VLAN 10和VLAN 20,把连接PC1的E 0/0/1和连接PC2的E 0/0/2接口配置为Access类型接口,并分别划分到相应的VLAN中。
命令:
[S2]vlan 10
[S2-vlan10]description HR
[S2-vlan10]vlan 20
[S2-vlan20]description Market
[S2-vlan20]interface Ethernet0/0/1
[S2-Ethernet0/0/1]port link-type access
[S2-Ethernet0/0/1]port default vlan 10
[S2-Ethernet0/0/1]interface Ethernet0/0/2
[S2-Ethernet0/0/2]port link-type access
[S2-Ethernet0/0/2]port default vlan 20
在S3上创建VLAN30,把连接PC3的E 0/0/1接口配置为Access类型接口,并划分到VLAN30。
命令:
[S3]vlan 30
[S3-vlan30]description Manager
[S3-vlan30]interface Ethernet0/0/1
[S3-Ethernet0/0/1]port link-type access
[S3-Ethernet0/0/1]port default vlan 30
交换机之间或交换机与路由器之间相连的接口需要传递多个VLAN信息,需要配置成Trunk接口。
将S2和S3的GE 0/0/2接口配置成Trunk类型接口,并允许所有VLAN通过。
命令:
[S2]interface GigabitEthernet0/0/2
[S2-GigabitEthernet0/0/2]port link-type trunk
[S2-GigabitEthernet0/0/2]port trunk all-pass vlan all
[S3]interface GigabitEthernet0/0/2
[S3-GigabitEthernet0/0/2]port link-type trunk
[S3-GigabitEthernet0/0/2]port trunk all-pass vlan all
在S1上创建VLAN10、VLAN20、VLAN30,并配置交换机和路由器相连的接口为Trunk,允许所有VLAN通过。
命令:
[S1]vlan 10
[S1-vlan10]vlan 20
[S1-vlan20]vlan 30
[S1-vlan30]interface GigabitEthernet0/0/2
[S3-GigabitEthernet0/0/2]port link-type trunk
[S3-GigabitEthernet0/0/2]port trunk all-pass vlan all
[S3-GigabitEthernet0/0/2]interface GigabitEthernet0/0/2
[S3-GigabitEthernet0/0/3]port link-type trunk
[S3-GigabitEthernet0/0/3]port trunk all-pass vlan all
[S3-GigabitEthernet0/0/3]interface GigabitEthernet0/0/1
[S3-GigabitEthernet0/0/1]port link-type trunk
[S3-GigabitEthernet0/0/1]port trunk all-pass vlan all
3.配置路由器子接口和IP地址
由于路由器R1只有一个实际的物理接口与交换机S1相连,可以在路由器上配置不同的逻辑子接口来作为不同的VLAN的网关,从而达到节省路由器接口的目的。
在R1上创建子接口GE 0/0/1.1,配置IP地址192.168.1.254/24,作为人事部网关地址。
命令:
[R1]interface GigabitEthernet0/0/1.1
[R1-GigabitEthernet0/0/1.1]ip address 192.168.1.254 24
在R1上创建子接口GE 0/0/1.2,配置IP地址192.168.2.254/24,作为市场部网关地址。
命令:
[R1]interface GigabitEthernet0/0/1.2
[R1-GigabitEthernet0/0/1.2]ip address 192.168.2.254 24
在R1上创建子接口GE 0/0/1.3,配置IP地址192.168.3.254/24,作为经理的网关地址。
命令:
[R1]interface GigabitEthernet0/0/1.3
[R1-GigabitEthernet0/0/1.3]ip address 192.168.3.254 24
在PC1,PC2,PC3上配置IP和相应网关地址后,在PC1上测试与PC2和PC3之间的连通性。
4.配置路由器子接口封装VLAN
虽然已经创建了不同的子接口,并配置了相关IP地址,但是仍然无法通信。是由于处于不同VLAN下,不同网段的PC之间要实现互相通信,数据包比赛通过路由器进行中转。由S1发送到R1的数据都加上了VLAN标签,而路由器作为三层设备,默认无法处理带VLAN标签的数据包。需要在路由器上的子接口下配置对应VLAN的封装,使路由器能够识别和处理VLAN标签,包括剥离和封装VLAN标签。
在R1的子接口GE 0/0/1.1上封装VLAN10,在子接口GE 0/0/1.2上封装VLAN20,在子接口GE 0/0/1.3上封装VLAN30,并开启子接口的ARP广播功能。
使用dotlq termination vid命令配置子接口对一层tag报文的终结功能,即配置该命令后,路由器子接口在接收带有VLAN tag的报文时,将剥掉tag进行三层转发,在发送报文时,会将与该子接口对应VLAN的VLAN tag添加到报文中。
命令:
[R1-GigabitEthernet0/0/1.1]dotlq termination vid 10
使用arp broadcast enable命令开启子接口的ARP广播功能。如果不配置该命令,将会导致该子接口无法主动发送ARP广播报文,以及向外转发IP报文。
命令:
[R1-GigabitEthernet0/0/1.1]arp broadcast enable
同理配置R1的子接口GE 0/0/1.2和GE 0/0/1.3。
[R1]interface GigabitEthernet0/0/1.2
[R1-GigabitEthernet0/0/1.2]dotlq termination vid 20
[R1-GigabitEthernet0/0/1.2]arp broadcast enable
[R1-GigabitEthernet0/0/1.2]interface GigabitEthernet0/0/1.3
[R1-GigabitEthernet0/0/1.3]dotlq termination vid 30
[R1-GigabitEthernet0/0/1.3]arp broadcast enable
配置完成后,在路由器R1上查看接口状态。
3个子接口的物理状态和协议状态都正常。
查看路由器R1的路由表。
路由表中已经有了192.168.1.0/24、192.168.2.0/24、192.168.3.0/24的路由条目,并且都是路由器R1的直连路由,类似于路由器上的直连物理接口。
在PC1上测试与网关地址192.168.1.254和PC2间的连通性。
均能正常通信。
5.以PC1 ping PC2为例,分析单臂路由整个运作过程。
两台PC由于处于不同的网络中,这时PC1会将数据包发往自己的网关,即路由器R1的子接口GE 0/0/1.1的地址192.168.1.254。
数据包到达路由器R1后,由于路由器的子接口GE 0/0/1.1已经配置了VLAN封装,当接收到PC1发送的VLAN10的数据帧时,发现数据帧的VLAN I0跟自身的GE 0/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 ID 20后再进行转发,然后通过交换机将数据帧顺利转发给PC2。
这是实验的全部内容。