在現實網絡中,經常會遇到需要跨VLAN相互訪問的情況。
很多網工通常會選擇一些方法,來實現不同VLAN間主機的相互訪問,例如單臂路由。
但是,單臂路由技術中由于存在一些局限性,比如帶寬、轉發效率等,使得這項技術應用較少。
三層交換機在原有二層交換機的基礎之上增加了路由功能,同時由于數據沒有像單臂路由那樣經過物理線路進行路由,很好地解決了帶寬瓶頸的問題,為網絡設計提供了一個靈活的解決方案。
今天這篇文章,我們會來盤點一下實現VLAN間路由的幾種方法,希望可以幫到你。
今日文章閱讀福利:《TCP-IP路由技術(第1卷)(第2版)》
需要深入學習路由技術的小友,可以私信我,備注“路由技術”,前20名私信的小友送出該經典網工書籍資源。
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-Ethe.NET0/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相連。
現需要讓該公司所有三臺主機都能實現互相訪問,網絡管理員將通過配置三層交換機來實現。
01 實驗拓撲
利用三層交換機實現VLAN間路由的拓撲如圖3-6所示。
02 實驗步驟
1. 基本配置
根據實驗編址表在PC上進行相應的基本IP地址配置,三層交換機S1上暫先不做配置。
配置完成后,測試銷售部兩臺終端PC-1與PC-2間的連通性。
可以觀察到,通信正常。
測試銷售部PC-1與客服部PC-3間的連通性。
PC-1與PC-3間無法正常通信,下面簡要分析主機PC-1.發出數據包,直至反饋目的無法到達的整個過程:
主機發出數據包前,將會查看數據包中的目的IP地址。
如果目的IP地址和本機IP地址在同-一個網段上,主機會直接發出一個ARP請求數據包來請求對方主機的mac地址,封裝數據包,繼而發送該數據包。
但如果目的IP地址與本機IP地址不在同一個網段,那么主機也會發出一個ARP數據包請求網關的MAC地址,收到網關ARP回復后,繼而封裝數據包后發送。
所以,銷售部主機PC-1在訪問192.168.2.1 這個IP地址時發現這個目的IP地址與本機IP地址不在同一個IP 地址段上,PC-1 便會發出ARP數據包請求網關192.168.1.254的MAC地址。
但由于交換機沒有做任何IP配置,因此沒有設備應答該ARP請求,導致銷售部主機PC-1無法正常封裝數據包,因此無法與客服部PC-3正常通信。
2. 配置三層交換機實現VLAN間通信
通過在交換機上設置不同的VLAN使得主機實現相互隔離。在三層交換機S1上創建VLAN 10和VLAN 20,把銷售部的主機全部劃入VLAN 10中,客服部的主機劃入VLAN20中。
現在需要通過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。
配置完成后,查看接口狀態。
可以觀察到,兩個VLANIF接口已經生效。再次測試PC-1與PC-3間的連通性。
可見通信正常,實現了銷售部終端與客服部終端間的通信。PC-2上的測試省略。
在PC-1上查看ARP信息。
可以觀察到,目前PC上ARP解析到的地址只有交換機的VLANIF 10 的地址,而沒有對端的地址,PC-1 先將數據包發送至網關,即對應的VLANIF 10 接口,再由網關轉發到對端。
整理:老楊丨10年資深網絡工程師,更多網工提升干貨,請關注公眾號:網絡工程師俱樂部