单臂路由是什么
单臂路由(router-on-a-stick)在路由器或三层设备的一个物理接口上创建多个 dot1Q 子接口,每个子接口终结一个 VLAN 的 Tag 并充当该 VLAN 的网关。多个 VLAN 的跨网段流量都经这一条链路往返,因此链路带宽与单点故障是它的主要限制,多用于小规模组网或过渡阶段。
基本信息
| 适用平台 | Cisco IOS 子接口、华为子接口、Linux vlan 子接口 |
|---|---|
| 承载方式 | 一个物理口 + 多个 dot1Q 子接口 |
| 关键配置 | encapsulation dot1Q <vlan>(Cisco) |
| 主要限制 | 全部跨 VLAN 流量共用单条链路 |
典型使用场景
- 只有二层交换机和一台路由器时,先用子接口打通 VLAN 间通信
- 搬迁过渡期新三层交换机未到位,用路由器临时充当各 VLAN 网关
- 边界路由器为多个内网 VLAN 提供网关与 NAT 上网
- 需要安全设备检查 VLAN 间流量时,把各 VLAN 终结后集中送入检查
- 实验室验证多 VLAN 路由、ACL 与策略效果
Cisco 子接口示例
Cisco 子接口示例
interface GigabitEthernet0/0
no shutdown # 物理口保持开启
interface GigabitEthernet0/0.10
encapsulation dot1Q 10 # 终结 VLAN 10 的 Tag
ip address 192.168.10.1 255.255.255.0 # 该 VLAN 的网关
interface GigabitEthernet0/0.20
encapsulation dot1Q 20
ip address 192.168.20.1 255.255.255.0
show ip interface brief # 确认各子接口已 up关键点速查
| 项目 | 要求 | 不满足的后果 |
|---|---|---|
| 交换机侧链路 | Trunk 且放行所有子接口 VLAN | 漏放行的 VLAN 网关不可达 |
| 子接口封装 | 与 VLAN ID 一一对应 | 封错 VLAN 号等于给错网关 |
| native VLAN | 无 Tag 帧不进带封装的子接口 | 该 VLAN 直接不可达,需单独处理 |
| 子接口 ARP | 华为侧需 arp broadcast enable | 漏配时 ping 不通网关 |
华为的对应做法是子接口下 dot1q termination vid,且子接口默认不转发 ARP 广播,需要额外执行 arp broadcast enable;Cisco 子接口无此要求,跨厂商割接文档里要把这一差异写清楚。
子接口编号与 VLAN 号保持一致(如 .10 对应 VLAN 10)能让排障时按编号直接定位,也便于脚本批量核对,避免编号与 VLAN 交叉造成误配。