🧠 一句话说人话:
路由器只有一个物理口,却要管两个不同VLAN的网关,怎么办?
给它穿两个“马甲”,一个马甲写“VLAN 10”,一个写“VLAN 20”,然后交换机和它之间开一条“多车道高速路(Trunk)”,让带标签的包自由通行。这就是单臂路由。
🎬 情景剧:你是一栋楼的物业(路由器)
你只有一扇大门(一个物理接口),但楼里有两个独立房间:
房间A(VLAN 10,技术部)、房间B(VLAN 20,市场部)。住户要找你要门牌号(网关),你必须在门口举两个牌子:
牌子10:“我是A房间的网关,找我!”
牌子20:“我是B房间的网关,找我!”
这两个牌子就是子接口。但你还得跟楼道管理员(交换机)约定:“以后A房间的人出来,给他们衣服上别个红色的徽章(VLAN标签10);B房间的人别蓝色徽章(VLAN标签20)。”
这个约定就是Trunk口:允许带徽章的人通过。等你收到一个带红色徽章的人问路,你就知道他是A房间的,用牌子10回复;蓝色徽章同理。
这样你一个门口,就同时服务两个房间——单臂路由。
⚙️ 配置三步走(用键盘敲就行)
交换机上:把连路由器的口改成Trunk,允许VLAN 10和20通过
bash
interface g0/0/24 port link-type trunk port trunk allow-pass vlan 10 20
路由器上:同一个物理口下创建两个子接口,一个管VLAN 10,一个管VLAN 20
bash
interface g0/0/0.10 dot1q termination vid 10 ip address 192.168.10.254 24 arp broadcast enable # 这句超重要!华为必须敲,否则PC找不到网关 interface g0/0/0.20 dot1q termination vid 20 ip address 192.168.20.254 24 arp broadcast enable
验证:
PC1 ping 192.168.10.254 → 通
PC2 ping 192.168.20.254 → 通
PC1 ping 192.168.20.10 → 通(跨VLAN神功练成)
💥 我踩过的大坑(分享给你,你别再踩)
| 现象 | 原因 | 解决方法 |
|---|---|---|
| PC ping 不通自己网关 | 忘了敲arp broadcast enable | 进子接口补上 |
| 交换机端口都配对了,还是不通 | Trunk口没allow-pass指定VLAN | port trunk allow-pass vlan 10 20 |
| 路由器子接口起不来 | 物理接口shutdown了 | interface g0/0/0→undo shutdown |
| 第一个ping包超时,后面通 | ARP学习正常现象 | 不用管,连续ping就行 |
🌟 一句话总结
一个物理口,穿两个马甲,配一条Trunk,就让不同VLAN的电脑互ping通。
这就是单臂路由,也是华为数通HCIA必会实验。
我凌晨23:58敲通的,你可以比我早。