华为设备BGP中的路由控制与实验

一、ip-prefix在BGP中的应用

在BGP中,ip-prefix除了可以配合filter-policy或者route-policy使用以外,还可以被peer命令直接调用,这也是BGP不同于其他路由协议的地方。通过peer命令调用的时候,仅对这一个对等体生效,因此BGP对路由的控制能做到更加精准。我们看下面这个举例。
在这里插入图片描述
需求描述:
如图所示,LSW1、LSW2、LSW3三个交换机分别属于不同的AS,他们之间维持EBGP邻居关系,在LSW1上通过BGP发布两条路由。现在LSW3上由于某种业务需求,要求禁止10.1.2.0/24这条路由,允许其他的路由。

配置方法:
上述需求可以在LSW3的BGP进程中,通过peer命令调用ip-prefix进行过滤。

LSW3上的关键配置如下:
ip ip-prefix huawei index 10 deny 10.1.2.0 24 //定义ip-prefix,禁止目标路由
ip ip-prefix huawei index 20 permit 0.0.0.0 0 less-equal 32 //允许其他所有路由

bgp 300
router-id 3.3.3.3
peer 192.168.23.1 as-number 200

ipv4-family unicast
undo synchronization
peer 192.168.23.1 enable
peer 192.168.23.1 ip-prefix huawei import //在import方向关联ip-prefix。

当然,也可以在LSW2的export方向关联ip-prefix进行路由过滤,效果是一样的,大家可以自行试一下,这里不再赘述。

结果验证:
完成上述配置后,查看LSW3的BGP路由表,可以看到,只有10.1.1.0/24这条路由,10.1.2.0/24已经被过滤掉。

完成上述配置后,查看LSW3的BGP路由表,可以看到,只有10.1.1.0/24这条路由,10.1.2.0/24已经被过滤掉。

[LSW3] display bgp routing-table 

BGP Local router ID is 3.3.3.3
Status codes: * - valid, > - best, d - damped,
           h - history,  i - internal, s - suppressed, S - Stale
           Origin : i - IGP, e - EGP, ? - incomplete


Total Number of Routes: 1
  Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

*>   10.1.1.0/24        192.168.23.1                          0      200 100i

二、filter-policy在BGP中的应用

filter-policy这个过滤工具我们前面曾经介绍过,我们知道filter-policy应用在距离矢量路由协议和链路状态路由协议的时候,过滤规则是不一样的,BGP属于一种距离矢量路由协议。
filter-policy在BGP中有两种应用方式:

  1. 在BGP视图下对全局应用,对所有对等体生效。
  2. 通过peer命令应用,仅对这一个对等体生效。

相对于其他路由协议,BGP可以针对某个对等体单独应用filter-policy,这样也保证了BGP对路由的控制更加灵活、精确。下面我们来看一个具体的举例。
在这里插入图片描述
需求描述:
如图2所示,LSW1、LSW2、LSW3三个交换机分别属于不同的AS,他们之间维持EBGP邻居关系,在LSW1上通过BGP发布两条路由。现在LSW3上由于某种业务需求,要求禁止10.1.2.0/24这条路由,允许其他的路由。

配置方法:
方法一:在BGP视图下对全局应用,对所有对等体生效。
LSW3的关键配置如下:

acl number 2001 //定义ACL,用于匹配目标路由
rule 5 deny source 10.1.2.0 0 //拒绝10.1.2.0这条路由
rule 10 permit source any //允许所有

bgp 300
router-id 3.3.3.3
peer 192.168.23.1 as-number 200

ipv4-family unicast
undo synchronization
filter-policy 2001 import //对所有对等体使用filter-policy过滤路由
peer 192.168.23.1 enable

方法二:通过peer命令应用,仅对这一个对等体生效。
LSW3的关键配置如下:

acl number 2001 //定义ACL,用于匹配目标路由
rule 5 deny source 10.1.2.0 0 //拒绝10.1.2.0这条路由
rule 10 permit source any //允许所有

bgp 300
router-id 3.3.3.3
peer 192.168.23.1 as-number 200

ipv4-family unicast
undo synchronization
peer 192.168.23.1 enable
peer 192.168.23.1 filter-policy 2001 import //对单个对等体使用filter-policy

三、 route-policy在BGP中的应用

route-policy在前面我们也详细介绍过了,在BGP中,route-policy同样是一个非常重要的工具,可以用来设置路由的属性,对路由进行过滤等。

我们再通过一个举例来看一下在BGP中调用route-policy的方法。
在这里插入图片描述
需求描述:
如图所示,LSW1和LSW2两个交换机分别属于不同的AS,他们之间维持EBGP邻居关系,在LSW1上通过BGP发布两条路由。现在由于某种业务需求,需要对LSW1发布的两条路由分别设置不通的团体属性值,10.1.1.0/24这条路由设置团体属性值为100:1,10.1.2.0/24这条路由设置团体属性值为100:2。

配置方法:

方法一:通过network命令调用route-policy。
这种配置方法是在通过network命令发布路由的时候直接调用route-policy,设置相应的团体属性值以后再发布给对等体。
LSW1的关键配置如下:

ip ip-prefix 1 index 10 permit 10.1.1.0 24 //定义前缀列表,匹配目标路由
ip ip-prefix 2 index 10 permit 10.1.2.0 24

route-policy huawei permit node 10 //为不同的路由设置不同的团体属性值
if-match ip-prefix 1
apply community 100:1

route-policy huawei permit node 20
if-match ip-prefix 2
apply community 100:2

route-policy huawei permit node 30 //允许剩余所有路由

bgp 100
router-id 1.1.1.1
peer 192.168.12.2 as-number 200

ipv4-family unicast
undo synchronization
network 10.1.1.0 255.255.255.0 route-policy huawei
network 10.1.2.0 255.255.255.0 route-policy huawei
peer 192.168.12.2 enable
peer 192.168.12.2 advertise-community

方法二:通过peer命令调用route-policy。
这种配置方法,在通过network命令发布路由的时候不使用route-policy,但是通过peer命令针对对等体使用route-policy,这样路由在发布之前先通过route-policy的过滤,通过并设置相应的团体属性值以后再发布给对等体。
LSW1的关键配置如下:

ip ip-prefix 1 index 10 permit 10.1.1.0 24 //定义前缀列表,匹配目标路由
ip ip-prefix 2 index 10 permit 10.1.2.0 24

route-policy huawei permit node 10 //为不同的路由设置不同的团体属性值
if-match ip-prefix 1
apply community 100:1

route-policy huawei permit node 20
if-match ip-prefix 2
apply community 100:2

route-policy huawei permit node 30 //允许剩余所有路由

bgp 100
router-id 1.1.1.1
peer 192.168.12.2 as-number 200

ipv4-family unicast
undo synchronization
network 10.1.1.0 255.255.255.0
network 10.1.2.0 255.255.255.0
peer 192.168.12.2 enable
peer 192.168.12.2 route-policy huawei export
peer 192.168.12.2 advertise-community

结果验证:
上述两种配置方法虽然不一样,但是对于这个场景,都可以实现10.1.1.0/24这条路由设置团体属性值为100:1,10.1.2.0/24这条路由设置团体属性值为100:2。完成配置后,在LSW2上查看一下BGP路由表,可以看到已实现上述需求。

[LSW2] display bgp routing-table community  

 BGP Local router ID is 2.2.2.2
 Status codes: * - valid, > - best, d - damped,
           h - history,  i - internal, s - suppressed, S - Stale
           Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 2
  Network            NextHop        MED        LocPrf    PrefVal Community

 *>   10.1.1.0/24        192.168.12.1    0                     0      <100:1>
 *>   10.1.2.0/24        192.168.12.1    0                     0      <100:2>

相对于其他路由协议,BGP中应用route-policy的命令会更多一点,更具体一点。常见的调用route-policy的命令有下面这些:

  1. network
  2. peer
  3. import-route
  4. dampening

资料整理来源《交换机在江湖》

猜你喜欢

转载自blog.csdn.net/tushanpeipei/article/details/112909533