早期52asus論壇有小夥伴咨詢華碩路由器如何 VLAN劃分,今天我們就具體說明一下。
就當時小夥伴 RT-AC86U VLAN劃分求助(單臂路由) 使用到的命令進行逐條分析,方便日後其他小夥伴使用。
使用命令如下:
vlanctl --mcast --if-create eth0 2
vlanctl --if eth0 --rx --tags 1 --filter-vid 2 0 --pop-tag --set-rxif eth0.v2 --rule-append
vlanctl --if eth0 --tx --tags 0 --filter-txif eth0.v2 --push-tag --set-vid 2 0 --rule-append
ifconfig eth0.v2 up
brctl addbr vlan2
brctl addif vlan2 eth0.v2
ifconfig vlan2 up
nvram set wan_ifnames=vlan2
nvram set wan_ifname=vlan2
nvram set wan0_ifname=vlan2
vlanctl --mcast --if-create eth0 1
vlanctl --if eth0 --rx --tags 0 --set-rxif eth0.v1 --rule-append
ifconfig eth0.v1 up
brctl addif br0 eth0.v1
具體說明:
vlanctl --mcast --if-create eth0 2
#基于eth0 (路由器WAN口)創建一個虛拟接口并且命名為eth0.2,這裡的2純粹是名字,與VLAN tag沒有任何關系,如果是為了方便了解後續解到的tag,名稱也可以與tag一緻。Mcast(multi cast protocal)是多播協議通信程序,用于測試在局域網或者三層交換機架構下進行通信測試
vlanctl --if eth0 --rx --tags 1 --filter-vid 2 0 --pop-tag --set-rxif eth0.v2 --rule-append
#如果接口eth0接收到的數據(--if eth0 --rx),有1個VLAN tag(--tags 1),并且第0個tag的VLAN ID是2(--filter-vid 2 0),則脫去tag(--pop-tag),并且設置接收接口為eth0.v2(--set-rxif eth0.v2),最後把這條規則添加到表中(--rule-append)
vlanctl --if eth0 --tx --tags 0 --filter-txif eth0.v2 --push-tag --set-vid 2 0 --rule-append
#接口 eth0 發送數據時 (--if eth0 --tx),如果 沒有 VLAN tag (--tags 0),并且 發送數據的虛拟接口是 eth0.v2 (--filter-txif eth0.v2),則 給數據(以太幀)加上一個 VLAN tag (--push-tag),并給第 0 個(剛加的)tag 設置 VLAN ID 為 2 (--set-vid 2 0)。把這條規則添加到表中 (--rule-append)。
ifconfig eth0.v2 up
#啟用這個虛拟接口eth0.v2。
brctl addbr vlan2
# 創建一個邏輯網段,名稱為vlan2
brctl addif vlan2 eth0.v2
#讓eth0.v2 成為 vlan2的一個端口
ifconfig vlan2 up
#啟用這個邏輯網段
nvram set wan_ifnames=vlan2
nvram set wan_ifname=vlan2
nvram set wan0_ifname=vlan2
# 通知系統上網接口被改變,需要設置nvram相關變量
# 是指 WAN 使用 vlan2 網絡介面來上網
vlanctl --mcast --if-create eth0 1
#基于eth0 (路由器WAN口)創建一個虛拟接口并且命名為eth0.1
vlanctl --if eth0 --rx --tags 0 --set-rxif eth0.v1 --rule-append
#如果接口eth0接收到的數據(--if eth0 --rx),沒有VLAN tag(--tags 0),并且設置接收接口為eth0.v1(--set-rxif eth0.v1),最後把這條規則添加到表中(--rule-append)
ifconfig eth0.v1 up
#啟用這個虛拟接口eth0.v1。
brctl addif br0 eth0.v1
#讓eth0.v1 成為 br0的一個端口
具體示例說明:
下面嘗試将RT-AC86U的WAN口與LAN 4口橋接到一起,實現WAN和 LAN4 的 VLAN 85聯通。
先确認路由器WAN與LAN4系統中分别對應的名稱,telnet連接到RT-AC86U 執行ifconfig,觀察系統中eth0對應名稱為WAN,eth1對應到LAN4。如下圖
再執行如下命令,如下圖效果
vlanctl --mcast --if-create eth0 85
vlanctl --if eth0 --rx --tags 1 --filter-vid 85 0 --pop-tag --set-rxif eth0.v85 --rule-append
vlanctl --if eth0 --tx --tags 0 --filter-txif eth0.v85 --push-tag --set-vid 85 0 --rule-append
ifconfig eth0.v85 up
vlanctl --mcast --if-create eth1 85
vlanctl --if eth1 --rx --tags 1 --filter-vid 85 0 --pop-tag --set-rxif eth1.v85 --rule-append
vlanctl --if eth1 --tx --tags 0 --filter-txif eth1.v85 --push-tag --set-vid 85 0 --rule-append
ifconfig eth1.v85 up
brctl addbr vlan85
brctl addif vlan85 eth0.v85
brctl addif vlan85 eth1.v85
ifconfig vlan85 up
至此全文結束,歡迎小夥伴留言交流。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!