首页/网络/BGP 与广域网速查/table-map:BGP 表下发 RIB 时的过滤与改写
路由过滤与重分发66 条

table-map:BGP 表下发 RIB 时的过滤与改写

table-map 在 BGP 路由下发给 RIB(路由表)时生效,可过滤或改写属性;与影响邻居通告的出策略不在同一处理点,常用于联动 IGP 度量。

BGP 与广域网速查网络更新于 2026-10-13

table-map 的作用点

BGP 的路由要经过多个处理点:从邻居收进来是入方向策略,发给邻居是出方向策略,而从 BGP 表安装到本地 RIB(路由表)又是另一个处理点——table-map 就作用在这里。因为处理点不同,它的效果很容易被误解:table-map 里过滤掉的前缀不会装进本地路由表,也就不会被转发使用,但 BGP 表里依然存在,向邻居通告的内容也不受影响。反过来,通过它 set metric 修改的度量会随路由一起进入 RIB,被 IGP 引用或用于本地选路判断。典型用法是控制哪些 BGP 路由能进入路由表,以及给它们设置一个便于 IGP 引用的度量。

基本信息

平台Cisco IOS/IOS-XE,router bgp 下配置
语法router bgp 下 table-map <route-map 名>
作用点BGP 表到 RIB 的下发阶段
可做动作过滤前缀、改写度量等属性
不影响Adj-RIB-Out,即向邻居通告的内容
查看show ip bgp 与 show ip route 对照

典型使用场景

  • 只把核心网段装进路由表:明细路由留在 BGP 表但不参与转发
  • 为路由设置度量,供 IGP 或静态路由联动引用
  • 与 IGP 引入配合:控制哪些 BGP 路由可以被引入内部路由域
  • 故障隔离:临时阻止某类前缀进入 RIB,避免影响转发
  • 排障核对:确认路由存在于 BGP 表但未装表的原因

配置示例

配置示例
route-map RM-TABLE permit 10
 match ip address prefix-list PFX-OK
 set metric 100
! 不匹配的前缀被隐式拒绝,不会装进 RIB
route-map RM-TABLE deny 100
router bgp 65001
 table-map RM-TABLE
! 对照核对:BGP 表有,但路由表可能没有
show ip bgp 10.1.0.0/16
show ip route 10.1.0.0
! 查看已配置的 table-map
show running-config | include table-map

与相邻机制对照

机制作用点对邻居通告的影响
入方向策略接收邻居路由时会影响后续通告内容
出方向策略向邻居发送时直接决定通告内容
table-mapBGP 到 RIB 下发时无影响
aggregate-address生成汇总时改变通告内容
table-map 只影响本地 RIB 安装,不影响 Adj-RIB-Out 通告;排查对端看不到路由时不要在这里找原因。
route-map 末尾的隐式拒绝很容易被忽略:若只写了 permit 序列而没有兜底序列,未匹配的前缀全部不会装表。

易错点

  • 把 table-map 当成出方向策略:配置改了但邻居收到的路由完全没变,误判为配置未生效
  • 忘记 route-map 末尾隐式拒绝:大量路由没进路由表,业务不通却查不到明显错误
  • set metric 的值与 IGP 口径不匹配:引入后度量异常,影响选路
  • 变更后用 BGP 表核对效果:应该看路由表,BGP 表本身不会因此变化
  • 在生产环境直接调整前缀列表:范围一旦放宽或收紧,多段流量可能同时受影响

数据来源与参考

  • Cisco: table-map 命令参考
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌