路由表:如何解决bgp路由在igp路由表中抖动



           as9806                                      as4808
     R1------------------------------------------R2
         1.1.1.1/24           1.1.1.2/24
     lo0:10.10.10.10/32                   lo0:20.20.20.20/32
                                                   lo1:20.20.20.21/32
  基本配置:
  r1:
  
  
  router bgp 9806
  nei 20.20.20.20 remote-as 4808
  bgp router-id 1.1.1.1
  
  
  r2:
  
  
  router bgp 4808
  nei 1.1.1.1 remote-as 9806
  nei 1.1.1.1 update-source lo0
  bgp router-id 20.20.20.20
  network 20.20.20.21 mask 255.255.255.255
  
  只有以上配置r1和r2bgp邻居关系是建立不起来定要记住还需在r1上配置
  
  
  nei 20.20.20.20 ebgp-multihop
  
  此时r1还需可达20.20.20.20因此在r1配置
  
  
  ip route 0.0.0.0 0.0.0.0 1.1.1.2 //as9806是个末节点所以只配置了默认这也是导致下面问题出现原因
  
  配置以上命令后bgp邻居关系成功建立r2把20.20.20.21/32(next-hop:20.20.20.20) update发送给r1r1收到更新把20.20.20.21/32后放入bgp和igp表此后r1会在查询igp路由表20.20.20.21跳20.20.20.20是否可达发现20.20.20.20可通过默认路由到达最终20.20.20.21/32(next-hop:20.20.20.20)会保留在igp路由表中
  
  问题出现!!!
  这时管理员为了让r2为了便于管理就把r2loopback0通过bgp发布出去
  
  
  network 20.20.20.20 mask 255.255.255.255
  
  r2向r1发布新update20.20.20.20/32(next-hop:20.20.20.20)r1收到update后把路由装入bgp和igp路由表此时r1在igp路由表中查询20.20.20.20/32跳仍为20.20.20.20(最长匹配因此也就不会再继续查询默认路由了)这明显不合乎逻辑(自己不能信任自己)因此将所有下跳为20.20.20.20路由从igp路由表中删除也就是20.20.20.20/32和20.20.20.21/32会r2仍会发送新updater1又会重复刚才动作最终导致了通过bgp学到路由在igp路由表中直振荡
  
  解决办法:
  在r1上配置
  
  
  ip route 20.20.20.20 255.255.255.255 1.1.1.2
  
  当r1在收到20.20.20.20/32update后装入bgp和igp路由表查询20.20.20.20跳通过上面配置静态路由可达r1保持此路由在igp路由表中因此就不会出现上面bgp路由在igp路由表中振荡结果了
  
  最后注意:
  1.当对方用来和自己建立bgp邻居关系用接口和自己不是直连时定要配置条静态路由指向对方bgp neighbor地址
  2.对方使用loopback建立bgp邻居关系时自己定要配置条ebgp-multihop
Tags:  ros路由表 路由表配置 电信路由表 路由表

延伸阅读

最新评论

发表评论