设为首页收藏本站language 语言切换
查看: 3275|回复: 0
收起左侧

[分享] 分享案例:MPLS解决BGP路由黑洞问题

[复制链接]
发表于 2022-12-30 10:15:03 | 显示全部楼层 |阅读模式
一、拓扑图:

                               
登录/注册后可看大图
二、网络环境描述:
   1.所有路由器运行OSPF,同属Area 0,在各自的物理直连接口和LoopBack 0接口激活OSPF,网段10.1.1.1/32、10.2.2.2/32不宣告入OSPF;
   2.只有R1、R4运行BGP(AS=100),使用各自的LoopBack 0接口建立邻居,并使用Import-route direct方式分别将各自后方网络10.1.1.1/32和10.2.2.2/32引入到BGP中,R1的BGP 100可以获得10.2.2.2/32路由信息,R2的BGP 100可以获得10.1.1.1/32路由信息。

三、问题:
R1上使用ping命令测试到目的网段10.2.2.2/32不通,经分析R2没有去往10.2.2.2/32的路由信息,无法转发来自R1的ping包,该情况属于路由黑洞问题。

四、解决方法:
本案例采用MPLS方式解决路由黑洞问题。具体思路如下:
   1.在所有路由器及其物理互连接口上激活MPLS,MPLS采用LDP动态建立对等体。
   2.完成1.配置后,各路由器的LDP会话建立成功,各自生成其内的各FEC(路由前缀)对应的Label,并相互交换到上游设备,形成各FEC的Label映射信息表。
   3.在R1上新建ip-prefix 1,允许10.2.2.2/32,并执行route recursive-lookup tunnel调用该ip-prefix;R4上同理。

注:
recursive-lookup tunnel命令是用来使能迭代(递归)隧道功能。由于当R1发往10.2.2.2/32时,根据下一跳是4.4.4.4,默认情况下会递归查询4.4.4.4的路由(即使配置了MPLS LDP但依旧会采用IP路由方式进行转发),即匹配到OSPF学习到的4.4.4.4/32路由并转发给R2,路由黑洞依然没有解决(因为R2不运行BGP,不存在10.2.2.2/32路由信息)。因此使用route recursive-lookup tunnel命令(调用ip-prefix筛选出10.2.2.2/32网段)使查询转发10.2.2.2/32网段(该网段称为非标签公网BGP路由)时优先递归查询MPLS LSP而不是IP路由信息(利用与4.4.4.4/32的Tunnel ID建立对应关系),实现去往10.2.2.2/32网段的数据包使用MPLS LSP Tunnel进行传递,解决了路由黑洞问题。

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-3 21:47 , Processed in 0.082876 second(s), 10 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表