盘点几个实现VLAN间路由的好方法!

2023-06-15 06:38:41


在真实的网络中,常常需要跨VLAN通信。

许多网络工作者通常选择一些方法来实现不同VLAN中的主机之间的相互访问,如单臂路由。

然而,由于单臂路由技术的一些限制,如带宽和转发效率,这种技术是很少使用。

三层交换机在原有二层交换机的基础上增加了路由功能。同时,由于数据不像单臂路由那样通过物理线路进行路由,解决了带宽瓶颈问题,提供了灵活的网络设计。解决方案。


01

路由器的物理连接分配给VLAN



第一步,PC设置IP地址和网关


192.168.2.2/24 网关是192.168.2.1

192.168.3.2/24 网关是192.168.3.1


第二步,交换机创建VLAN并划分VLAN


[sw]vlan batch 2 3
[sw]int e0/0/1
[sw-Ethernet0/0/1]port lin ac
[sw-Ethernet0/0/1]port def vlan 2
[sw-Ethernet0/0/1]int e0/0/2
[sw-Ethernet0/0/2]port lin ac
[sw-Ethernet0/0/2]port def vlan 2
[sw-Ethernet0/0/2]int e0/0/3
[sw-Ethernet0/0/3]port lin ac
[sw-Ethernet0/0/3]port def vlan 3
[sw-Ethernet0/0/3]int e0/0/4
[sw-Ethernet0/0/4]port lin ac

[sw-Ethernet0/0/4]port def vlan 3


第三步,路由器配置接口地址


[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.2.1 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 192.168.3.1 24


02

单臂路由

路由器子接口是VLAN网关



第一步,PC设置IP地址和网关


192.168.2.2/24 网关是192.168.2.1

192.168.3.2/24 网关是192.168.3.1


第二步,交换机创建VLAN,划分VLAN


[sw]vlan batch 2 3
[sw-Ethernet0/0/1]int e0/0/2
[sw-Ethernet0/0/2]port lin ac
[sw-Ethernet0/0/2]port def vlan 2
[sw-Ethernet0/0/2]int e0/0/3
[sw-Ethernet0/0/3]port lin ac

[sw-Ethernet0/0/3]port def vlan 3


第三步,交换机连接路由器的端口设置为trunk模式


[sw]int e0/0/1
[sw-Ethernet0/0/1]port lin tr

[sw-Ethernet0/0/1]port tr al vlan all


第四步,路由器配置子接口


[Huawei]int g0/0/0.20 这个编号是随意的
[Huawei-GigabitEthernet0/0/0.20]dot1q termination vid 2 封装的VLAN,你为VLAN服务,就封装VLAN
[Huawei-GigabitEthernet0/0/0.20]ip add 192.168.2.1 24 这个地址就是网关地址
[Huawei-GigabitEthernet0/0/0.20]arp broadcast enable 允许ARP广播
[Huawei-GigabitEthernet0/0/0.20]int g0/0/0.30
[Huawei-GigabitEthernet0/0/0.30]d t v 3
[Huawei-GigabitEthernet0/0/0.30]ip add 192.168.3.1 24

[Huawei-GigabitEthernet0/0/0.30]arp be

03

用多层交换机实现



简单来说,你可以分三步走:


第一步,PC设置地址和网关


第二步,交换机创建一个VLAN并将端口添加到VLAN中。


[Huawei]sys sw
[sw]vlan b 2 3
[sw]int g0/0/1
[sw-GigabitEthernet0/0/1]port lin ac
[sw-GigabitEthernet0/0/1]port def vlan 2
[sw-GigabitEthernet0/0/1]int g0/0/2
[sw-GigabitEthernet0/0/2]port lin ac
[sw-GigabitEthernet0/0/2]port def vlan 3


第三步,在交换机上创建SVI接口(交换虚拟接口)有几个VLAN就创建几个,这个接口就是VLAN的网关地址。


[sw-GigabitEthernet0/0/2]int vlan 2
[sw-Vlanif2]ip add 192.168.2.1 24
[sw-Vlanif2]int vlan 3
[sw-Vlanif3]ip add 192.168.3.1 24


接下来,基于三层交换机,模拟企业网场景,查看整个具体实现流程。

公司有两个部门,销售部和客户服务部,计划分别使用VLAN 10和VLAN 20。

其中,销售部下设两个终端PC—1和PC—2,客服部下设一个终端PC—3。所有终端均通过核心三层交换机S1。

现在有必要允许公司的所有三台主机彼此通信,网络管理员将通过配置第3层交换机来实现这一点。

01实验拓扑

图3-6显示了使用第三层交换机的VLAN间路由的拓扑结构。



02实验步骤

①基本配置。

根据实验地址表,在PC上配置相应的基本IP地址,暂不在三层交换机S1上配置。。

配置完成后,测试销售部两个终端PC-1和PC-2之间的连通性。

PC>ping 192.168.1.1

Ping 192.168.1.1:32 data bytes,Press Ctrl C to break

From 192.168.1.1:bytes=32seq=1ttl=128time=31ms

From192.168.1.1:bytes=32seq=2ttl-128time=15ms

From 192.168.1.1:bytes=32seq=3ttl=128time<1ms

From 192.168.1.1:bytes=32 seq=4ttl=128 time<1 ms

From 192.168.1.1:bytes=32seq=5ttl=128 time<1ms

---192.168.1.1 ping statistics---

5 packet(s) transmitted

5 packet(s) received

0.00% packet loss

round-tripmin/avg/max=0/9/31ms


可以观察到,通信是正常的。

测试销售部门的PC-1和客户服务部门的PC-3之间的连接。

PC>ping 192.168.2.1

Ping192.168.2.1:32 data bytes,Press Ctrl C to break

From192.168.1.1:Destination host unreachable

From 192.168.1.1:Destination host unreachable

From 192.168.1.1:Destination host unreachable

From 192.168.1.1:Destination host unreachable

From 192.168.1.1:Destination host unreachable

.....


PC-1和PC-3之间无法正常通信。

下面简要分析主机PC-1发送数据包直到不能达到反馈目的的全过程:

主机在发送数据包之前,会检查数据包中的目的IP地址。

如果目的IP地址和本地IP地址在同一个网段上,主机会直接发送一个ARP请求包,请求对方主机的MAC地址,把包封装起来,然后把包。

但是,如果目的IP地址和本地IP地址不在同一个网段,主机也会发送一个ARP包来请求网关的MAC地址。在收到网关的ARP回复后,主机将封装数据包并发送给。

因此,当营业部的主机PC—1访问IP地址192.168.2.1时,发现目的IP地址与本地IP地址不在同一个IP地址段中时,PC—1将发送一个ARP包,请求网关192.168.1.254 MAC地址。

但是由于交换机没有做任何IP配置,没有设备响应ARP请求,所以销售部的主机PC-1无法正常封装数据包,因此无法与客服部PC-3正常通信。

②配置第3层交换机以实现VLAN之间得通信。

通过在交换机上设置不同的VLAN,主机相互隔离。在第三层交换机S1上创建VLAN 10和VLAN 20,将销售部门的所有主机分配到VLAN 10,将客户服务部门的主机分配到VLAN 20。

[S1]vlan 10

[S1-vlan10]vlan 20

[S1-vlan20]interface GigabitEthernet0/0/1

[S1-GigabitEthernet0/0/1]port link-type access

[S1-GigabitEthernet0/0/1]port default VLAN 10

[S1-GigabitEthernet0/0/1]interface GigabitEthernet0/0/2

[S1-GigabitEthernet0/0/2]port link-type access

[S1-GigabitEthernet0/0/2]port default VLAN 10

[S1-GigabitEthernet0/0/2]interface GigabitEthernet0/0/3

[S1-GigabitEthernet0/0/3]port link-type access

[S1-GigabitEthernet0/0/3]port default VLAN 20

现在有必要通过VLAN间路由实现通信,并在三层交换机上配置VLANIF接口。

在S1上使用interface VLANif命令创建一个VLANIF接口,将VLANIF接口对应的VLAN ID指定为10,进入VLANIF接口视图,在接口视图中配置IP地址192.168.1.254/24。然后创建一个与VLAN 20相对应的VLANIF接口,地址配置为192.168.2.254/24。

[S1]interface VLANif 10

[S1-VLANif10]ip address 192.168.1.254 24

[S1-VLANif10]interface VLANif20

[S1-VLANif20]ip address 192.168.2.25424

配置完成后,检查接口状态。

[S1]display ip interface brief

*down: administratively down

......

Interface IP Address/Mask Physical Protocol

MEth0/0/1 unassigned down down

NULLO unassigned up up(s)

VLANif1 unassigned down down

VLANif10 192.168.1.254/24 up up

VLANif20 192,168.2.254/24 up up

可以观察到,两个VLANIF接口已经生效。再次测试PC-1和PC-3之间的连接。

PC>ping 192.168.2.1

Ping 192.168.2.1: 32 data bytes,Press Ctrl C to break

From 192.168.2.1:bytes=32seq=1ttl=127time--61765ms

From 192.168.2.1:bytes=32seq=2ttl=127time--61781ms

From 192.168.2.1:bytes=32seq=3 ttl-127time--61766ms

From 192.168.2.1:bytes=32seq=4ttl=127 time--61766 ms

From192.168.2.1:bytes=32seq=5ttl=127time=-61781ms

---192.168.2.1 ping statistics--

5 packet(s) transmitted

5 packet(s)received

0.00% packet loss

round-tripmin/avg/max--61781/858931687/-61765ms

可以看出,通信正常,已经实现了销售部终端与客户服务部终端的通信。PC-2上的测试遗漏。

查看PC-1上的ARP信息。


PC>arp-a

192.168.1.254 4C-1F-CC-63-AB-09 dynamic

Internet Address Physical Address Type


可以观察到,在PC机上ARP解析的地址只是交换机的VLANIF 10地址,而不是对等端的地址。PC-1 先将数据包发送至网关,即对应的VLANIF 10 接口,再由网关转发到对端。