「BGP」- AS Number Substitution and SoO(MPLS VPN)

  CREATED BY JENKINSBOT

AS Number Substitution

问题描述

在 MPLS VPN 中,若 PE 与 CE 间运行 EBGP 交互路由信息,则可能会出现两个 Site 的 AS-Number 相同的情况。

Site-1 与 Site-2 具有相同的 AS Number,当路由从 Site-1 传递到 Site-2 的时候。此时 BGP AS-PATH 防环,导致 CE2 拒收来自 Site-1 的路由条目。

解决方案

最直接的解决方案就是进行 AS Number 替换;

华为交换机提供相关命令:可以在 PE 上执行 peer substitute-as 命令使能 AS Number Substitution 功能,即 PE 用 Local AS Number 替换收到的私网路由中 CE 所在 VPN 站点的 AS-Number ,这样对端 CE 就不会因为 AS-Number 重复而丢弃路由了。

配置命令:

[PE1] bgp 123
[PE1-bgp] ipv4-family vpn-instance vpn1
[PE1-bgp-vpn1] peer 192.168.100.1 substitute-as

SoO, Site of Origin

问题描述

新的解决方案通常会引入新的问题:在 CE 多归属场景,若使能 BGP AS Number Substitution 功能,可能会引起路由环路。

CE1 与 CE3 处于 Site-1 站点;CE2 位于 Site-2 站点;
站点 Site-1 和 Site-2 所在的 AS-Number=65001;
在 PE 与 CE 间,运行的都是 EBGP 协议,以进行路由传递;

为了 Site-1 和 Site 2 间的路由可以正常学习,需要在 PE1 和 PE2 上配置 AS-Number Substitution 功能。

但是,路由传递,CE1⇒PE1⇒CE3,鉴于配置 AS-Number 替换,AS-Number=123,导致 CE3 会接收该路由,可能会导致产生路由环路;

解决方案

需要 SoO(Site of Origin)特性来避免环路。

配置 BGP 邻居的 SoO 特性后:
1)接收到该邻居的 BGP-Route 时,会在 Path-Attr 中携带该 SoO 属性并通告给其他 BGP 邻居;
2)向该邻居通告 BGP-Route 前,会检查路由中的 SoO 属性是否与配置的 SoO 值相同,若相同则不通告,避免引起环路。