第177篇:EVPN IRB(Integrated Routing and Bridging)
关键词:IRB、集成路由桥接、Vlanif、BD-VRF绑定、Type5路由、三层网关
一、引言
EVPN IRB(Integrated Routing and Bridging)是 EVPN 网络中实现二层到三层路由集成的核心技术。IRB 在同一个设备上同时运行二层桥接和三层路由功能,使 VXLAN overlay 网络能够作为三层网络的网关,实现不同 VNI(二层广播域)之间的三层路由以及 VXLAN 网络与外部物理网络的互联互通。IRB 是数据中心网络中 VXLAN 网关的标准实现方式。
二、核心概念
2.1 IRB 架构组件
| 组件 | 说明 |
|---|---|
| BD(Bridge Domain) | 二层桥接域,对应一个 VNI |
| VRF(VPN Instance) | 三层路由实例 |
| IRB 接口(Vlanif) | BD 与 VRF 之间的逻辑三层接口 |
| VNI | 24 位虚拟网络标识,标识二层广播域 |
2.2 IRB 数据流

2.3 IRB 与 EVPN 路由类型
| 路由类型 | 用途 | IRB 关联 |
|---|---|---|
| Type 1(ES) | 多归属 ES 通告 | 无直接关联 |
| Type 2(MAC/IP) | MAC 地址学习 | 网关 MAC 的 Type 2 通告 |
| Type 3(IMULT) | 泛洪域成员发现 | BUM 泛洪范围 |
| Type 5(IP Prefix) | IP 前缀路由 | IRB 接口的 IP 前缀 |
三、技术细节
3.1 IRB 跨 VNI 路由流程

3.2 IRB 网关 MAC 通告
IRB 网关的 MAC 地址通过 Type 2 路由通告到所有 VTEP:
| 步骤 | 操作 |
|---|---|
| 1 | VTEP 为 IRB 接口生成网关 MAC(或手动配置) |
| 2 | VTEP 通过 BGP 通告网关 MAC 的 Type 2 路由 |
| 3 | 所有 VTEP 学习网关 MAC → 本 VTEP |
| 4 | CE 的 ARP 请求由本地 VTEP 回复(无需泛洪) |
3.3 Type 5 路由生成
| 触发条件 | 行为 |
|---|---|
| IRB 接口 UP | 生成 Type 5 路由并通告 |
| IRB 接口 DOWN | 撤销 Type 5 路由 |
| VRF 路由变化 | 重新计算 Type 5 路由 |
四、实战配置/案例分析
4.1 华为 IRB 配置
# ========== IRB网关配置 ==========
[DGW-PE1] sysname IRB-GW
# 创建Bridge Domain
[IRB-GW] bridge-domain 100
[IRB-GW-bridge-domain-100] interface 100ge 1/0/1
# CE接口加入BD
[IRB-GW] bridge-domain 200
[IRB-GW-bridge-domain-200] interface 100ge 1/0/2
# 创建VRF并关联BD
[IRB-GW] vpn-instance OVERLAY
[IRB-GW-vpn-instance-OVERLAY] rd 10.1.1.1:100
[IRB-GW-vpn-instance-OVERLAY] route-target both evpn 100:100
[IRB-GW-vpn-instance-OVERLAY] bridge-domain 100 interface Vlanif 100
[IRB-GW-vpn-instance-OVERLAY] bridge-domain 200 interface Vlanif 200
# 配置IRB接口
[IRB-GW] interface Vlanif 100
[IRB-GW-Vlanif100] ip address 192.168.1.1 24
[IRB-GW-Vlanif100] ip binding vpn-instance OVERLAY
[IRB-GW] interface Vlanif 200
[IRB-GW-Vlanif200] ip address 192.168.2.1 24
[IRB-GW-Vlanif200] ip binding vpn-instance OVERLAY
# VXLAN VNI
[IRB-GW] vxlan vni 100
[IRB-GW-vxlan-vni-100] route-distinguisher 10.1.1.1:100
[IRB-GW-vxlan-vni-100] route-target both evpn 100:100
[IRB-GW-vxlan-vni-100] vxlan-source-interface LoopBack 0
[IRB-GW] vxlan vni 200
[IRB-GW-vxlan-vni-200] route-distinguisher 10.1.1.1:200
[IRB-GW-vxlan-vni-200] route-target both evpn 200:200
# BGP EVPN: 导入VRF路由生成Type5
[IRB-GW] bgp 65001
[IRB-GW-bgp-65001] address-family evpn
[IRB-GW-bgp-65001-evpn] import-route direct vpn-instance OVERLAY
[IRB-GW-bgp-65001-evpn] import-route bridge-domain 100 vpn-instance OVERLAY
[IRB-GW-bgp-65001-evpn] import-route bridge-domain 200 vpn-instance OVERLAY
4.2 验证IRB状态
# 查看VRF路由
<IRB-GW> display ip routing-table vpn-instance OVERLAY
192.168.1.0/24 Vlanif100 Direct
192.168.2.0/24 Vlanif200 Direct
# 查看Type5路由
<IRB-GW> display bgp evpn routing-table type 5
*> RD: 10.1.1.1:100
Prefix: 192.168.1.0/24
NextHop: 10.1.1.1
*> RD: 10.1.1.1:200
Prefix: 192.168.2.0/24
NextHop: 10.1.1.1
# 查看网关MAC路由(Type2)
<IRB-GW> display bgp evpn routing-table type 2
*> RD: 10.1.1.1:100
MAC: 00:1E:67:XX:XX:01 (Gateway MAC for VNI 100)
*> RD: 10.1.1.1:200
MAC: 00:1E:67:XX:XX:02 (Gateway MAC for VNI 200)
4.3 故障排查:IRB跨VNI路由失败
故障场景:VNI 100 的 CE 无法 ping 通 VNI 200 的 CE。
# Step 1: 检查VRF路由
<IRB-GW> display ip routing-table vpn-instance OVERLAY 192.168.2.20
192.168.2.0/24 Vlanif200 Direct # 路由存在
# Step 2: 检查Type5路由
<IRB-GW> display bgp evpn routing-table type 5
# 有192.168.2.0/24的Type5路由
# Step 3: 检查对端VTEP是否学习到Type5
<REMOTE-VTEP> display bgp evpn routing-table type 5
# 无192.168.1.0/24的Type5路由!
# Step 4: 检查BGP EVPN邻居
<REMOTE-VTEP> display bgp evpn peer 10.1.1.1
# Route-policy过滤了Type5路由
# Step 5: 修正route-policy
[REMOTE-VTEP-bgp-65001-evpn] undo route-policy TYPE5-FILTER import
四(续)、高级主题
4.4 IRB 网关 ARP 代理机制
IRB 网关的一个重要功能是 ARP 代理(ARP Proxy),它避免了 ARP 请求在 VXLAN -overlay 中泛洪:
| 步骤 | 操作 | 说明 |
|---|---|---|
| 1 | CE 发送 ARP Request 查询网关 MAC | ARP 到达 VTEP |
| 2 | VTEP 识别目标 IP 为 IRB 网关 IP | 匹配 IRB 接口地址 |
| 3 | VTEP 直接回复 ARP Reply | 携带网关 MAC |
| 4 | CE 学习到网关 MAC-IP 绑定 | 无需泛洪到远端 VTEP |
# 配置IRB接口ARP代理
[IRB-GW] interface Vlanif 100
[IRB-GW-Vlanif100] arp proxy enable
# 启用ARP代理
# 验证ARP代理
<IRB-GW> display arp interface Vlanif 100
Internet Address Physical Address Type Age
192.168.1.10 00:11:22:33:44:55 ARS 00:05:23
192.168.1.1 00:1E:67:XX:XX:01 Manual -
# 192.168.1.1为网关自身地址, 类型为Manual(静态)
4.5 IRB 多 VRF 隔离设计
当多个租户需要完全隔离的三层网络时,使用多 VRF 设计:
| 设计要素 | 租户 A | 租户 B |
|---|---|---|
| VRF 名称 | VRF-A | VRF-B |
| RD | 10.1.1.1:1000 | 10.1.1.1:2000 |
| RT Export | 1000:1000 | 2000:2000 |
| RT Import | 1000:1000 | 2000:2000 |
| BD | BD-100, BD-101 | BD-200, BD-201 |
| IRB | Vlanif 100, 101 | Vlanif 200, 201 |
# 多VRF配置
[IRB-GW] vpn-instance VRF-A
[IRB-GW-vpn-instance-VRF-A] rd 10.1.1.1:1000
[IRB-GW-vpn-instance-VRF-A] route-target both evpn 1000:1000
[IRB-GW-vpn-instance-VRF-A] bridge-domain 100 interface Vlanif 100
[IRB-GW-vpn-instance-VRF-A] bridge-domain 101 interface Vlanif 101
[IRB-GW] vpn-instance VRF-B
[IRB-GW-vpn-instance-VRF-B] rd 10.1.1.1:2000
[IRB-GW-vpn-instance-VRF-B] route-target both evpn 2000:2000
[IRB-GW-vpn-instance-VRF-B] bridge-domain 200 interface Vlanif 200
# VRF间路由(需要时)
[IRB-GW-vpn-instance-VRF-A] peer-vpn-instance VRF-B import-export POLICY-A-TO-B
4.6 IRB 与 DHCP 联动
| 组件 | 职责 |
|---|---|
| IRB 接口 | 作为 DHCP Relay 的下一跳(giaddr) |
| DHCP Relay | 转发 CE 的 DHCP Request 到 DHCP Server |
| DHCP Server | 分配 IP 地址、网关、DNS 等 |
| Option 82 | 插入子接口/BD 信息,实现精确地址分配 |
# 配置DHCP Relay联动
[IRB-GW] interface Vlanif 100
[IRB-GW-Vlanif100] dhcp select relay
[IRB-GW-Vlanif100] dhcp relay server-ip 10.100.1.100
# DHCP Server地址
[IRB-GW] dhcp relay
[IRB-GW-dhcp-relay] information option82 insert
# 在DHCP Request中插入Option82
4.7 IRB 性能调优
| 参数 | 默认值 | 推荐值(大规模) | 说明 |
|---|---|---|---|
| MAC 老化时间 | 300s | 60-120s | 缩短老化时间加速收敛 |
| ARP 超时时间 | 1200s | 300-600s | 缩短ARP缓存时间 |
| IRB 接口 MTU | 1500 | 9000(Jumbo Frame) | 支持大数据包 |
| BGP Hold Timer | 180s | 6s | 加速故障检测 |
| Type 5 路由聚合 | 关闭 | 开启 | 减少 BGP 表项 |
五、总结
| 项目 | 要点 |
|---|---|
| IRB | 集成二层桥接和三层路由,是 VXLAN 网关核心 |
| BD-VRF 绑定 | Bridge Domain 通过 IRB 接口关联 VRF |
| Type 2 路由 | 通告网关 MAC,使所有 VTEP 知道网关位置 |
| Type 5 路由 | 通告 IP 前缀,实现跨 VNI 三层路由 |
| ARP 优化 | 网关 MAC 通过 BGP 通告,消除 ARP 泛洪 |
思考
- IRB 接口的 MAC 地址是自动生成的还是可以手动指定?如果手动指定,需要注意什么?
- Type 5 路由的 RD 是基于 VNI 还是基于 VRF?同一 VRF 关联多个 BD 时,Type 5 路由的 RD 如何区分?
- 如果 IRB 接口 DOWN,Type 5 路由和 Type 2 路由(网关 MAC)会同时撤销吗?
下篇预告:第178篇:VXLAN 报文封装与 UDP 端口