BGP:通过Med与As-Path选举路径实验

一. Med与As-Path的概念

  1. As-Path (自治区域系统路径):路由在被通告给EBGP对等体时,路由器会在该路由的AS_Path追加上本地的AS;路由被通告给IBGP对等体时,AS_Path不会发生改变.

    防环机制:BGP通过AS-Path检测环路,如果某路由的AS-Path包含本地AS号,则丢弃该路由3。
    路径选择:AS-Path长度影响路由优选,通常路径越短越优先(如AS100 > AS100 200)
     
  2. Med(多出口鉴别器):可选非过度属性,代表度量值,表示外部对等体进入本地AS内的首选路径,值越小越优先

二.实验目标

  1. 通过IP前缀列表对相关路由条目进行匹配,并使用Route-Policy为过滤后的路由信息设置路由属性
  2. 使用BGP建立邻居对等体
  3. 通过Route-Policy对路由信息进行Med与As-Path属性进行修改

三.实验需求

  1. R1优先通过R2来访问R3的3.3.3.0路由,R1优先通过R3来访问R2的2.2.2.0路由,通过Med属性进行修改 
  2. R1通过修改As-Path属性优先通过R3访问172.16.2.0网段,R1优先通过R2来访问172.16.3.0网段

四.实验配置

第一步:设置接口IP地址并配置BGP
R1:

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 172.16.10.1 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 172.16.30.1 24
[R1-GigabitEthernet0/0/1]int loopback0
[R1-LoopBack0]ip add 1.1.1.1 24
[R1-LoopBack0]bgp 100
[R1-bgp]peer 172.16.10.2 as-number 200
[R1-bgp]peer 172.16.30.2 as-number 200
[R1-bgp]network 1.1.1.0 24

与R2与R3建立EBGP关系,并在bgp内宣告1.1.1.0/24网段

R2: 

[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 172.16.10.2 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 172.16.20.1 24
[R2]int loopback0
[R2-LoopBack0]ip add 2.2.2.2 24
[R2-LoopBack0]bgp 200
[R2-bgp]peer 172.16.10.1 as-number 100
[R2-bgp]peer 172.16.20.2 as-number 200
[R2-bgp]network 2.2.2.0 24


与R1建立EBGP邻居关系,与R3建立IBGP邻居关系,并宣告2.2.2.0/24网段

R3

[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 172.16.30.2 24
[R3-GigabitEthernet0/0/0]int g0/0/1
[R3-GigabitEthernet0/0/1]ip add 172.16.20.2 24
[R3-GigabitEthernet0/0/1]int loopback0
[R3-LoopBack0]ip add 3.3.3.3 24
[R3-LoopBack0]bgp 200
[R3-bgp]peer 172.16.30.1 as-number 100
[R3-bgp]peer 172.16.20.1 as-number 200
[R3-bgp]network 3.3.3.0 24

与R1建立IBGP邻居关系,与R2建立EBGP邻居关系,并宣告3.3.3.0/24网段

在R1中查看BGP邻居:

172.16.10.2     4         200        3        6     0 00:00:35 Established    
   1
  172.16.30.2     4         200        3        6     0 00:00:09 Established    
   1

显示Established    代表对等体关系建立成功

此时查看R1的BGP路由表,发现到达2.2.2.0与3.3.3.0的网段都会从R2(172.16.10.2)方向走

在R1中disp bgp routing-table 2.2.2.0 这个网段
 

BGP选路优先级为:

1.优选Preferred-Value属性值最大的路由
2.优选Local_Preference属性值最大的路由
3.本地始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的。
4.优选AS_Path属性值最短的路由。
5.优选Origin属性最优的路由。Origin属性值按优先级从高到低的排列是:IGPEGPIncomplete
6.优选MED属性值最小的路由
7.优选从EBGP对等体学来的路由(EBGP路由优先级高于IBGP路由)
8.优选到Next_HopIGP度量值最小的路由
9.优选Cluster_List最短的路由。
10.优选Router IDOrginator_ID)最小的设备通告的路由。

优选具有最小IP地址的对等体通告的路由。
因为R2与R3的前9项均为默认没有配置,则会看第10项比较Router-ID,R2Router-id为172.16.10.2,R3为172.16.30.2,R2>R3,所以R1到3.3.3.0这个网段也会从R2进入


第二步:配置IP前缀列表修改Med值

R1配置IP前缀列表并修改Med值

[R1]ip ip-prefix 1 index 10 permit 2.2.2.0 24
[R1]ip ip-prefix 2 index 10 permit 3.3.3.0 24
//先定义两个前缀列表对网段进行匹配

[R1]route-policy med_r2 permit node 10
[R1-route-policy]if-match ip-prefix 1 
[R1-route-policy]apply cost 20
[R1-route-policy]route-policy med_r2 permit node 20
[R1-route-policy]if-match ip-prefix 2
[R1-route-policy]apply cost 10
[R1-route-policy]route-policy med_r2 permit node 1000

//再通过route-policy对ip前缀列表进行匹配,设置med值,实现R1到3.3.3.0优先从R2,到2.2.2.0优先从R3通过
//Med是bgp路由优选的第6项

[R1-route-policy]route-policy med_r3 permit node 10
[R1-route-policy]if-match ip-prefix 1
[R1-route-policy]apply cost 10
[R1-route-policy]route-policy med_r3 permit node 20
[R1-route-policy]if-match ip-prefix 2
[R1-route-policy]apply cost 20
[R1-route-policy]route-policy med_r3 permit node 1000


[R1]bgp 100
[R1-bgp]peer 172.16.10.2 route-policy med_r2 import
[R1-bgp]peer 172.16.30.2 route-policy med_r3 import
//应用route-policy,接受路由时执行

在R1查看BGP路由表,发现路径成功被修改
 


第三步:配置IP前缀列表修改As-Path

在因为BGP在接收路由时,优先选择AS-Path途径路径少的,所以可以通过添加As-Path值将路由优先级降低

R2与R3配置:
 

//R2再定义一个逻辑接口,然后宣告
[R2]int loopback 1
[R2-LoopBack1]ip add 172.16.2.1 24
[R2-LoopBack1]bgp 200
[R2-bgp]network 172.16.2.0 24

//R3再定义一个逻辑接口,然后宣告
[R3]int loopback 1
[R3-LoopBack1]ip add 172.16.3.1 24
[R3]bgp 200
[R3-bgp]network 172.16.3.0 24

R1查看配置: 

依旧是到达3.0与2.0网段还是走的R2,因为之前的前缀列表并未定义该两个网段,之后再配置一下前缀列表并且添加as-path

R1配置前缀列表并修改As-Path值: 
 


[R1]ip ip-prefix 3 index 10 permit 172.16.2.0 24
[R1]ip ip-prefix 4 index 10 permit 172.16.3.0 24

//应用路由策略,添加as-path值
[R1]route-policy med_r2 permit node 30
[R1-route-policy]if-match ip-prefix 3
[R1-route-policy]apply as-path 200 200 200 add

[R1-route-policy]route-policy med_r3 permit node 30
[R1-route-policy]if-match ip-prefix 4
[R1-route-policy]apply as-path 200 200 200 add

查看BGP路由表
Total Number of Routes: 9
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   1.1.1.0/24         0.0.0.0         0                     0      i
 *>   2.2.2.0/24         172.16.30.2     10                    0      200i
 *                       172.16.10.2     20                    0      200i
 *>   3.3.3.0/24         172.16.10.2     10                    0      200i
 *                       172.16.30.2     20                    0      200i
 *>   172.16.2.0/24      172.16.30.2                           0      200i
 *                       172.16.10.2     0                     0      200 200 200 200i
 *>   172.16.3.0/24      172.16.10.2                           0      200i
 *                       172.16.30.2     0                     0      200 200 200 200i

到达172.16.2.0网段时,在发送172.16.10.2路由信息的R2上添加了3个as-path,所以R1到达172.16.2.0这个网段会优先走as-path值少的,也就是R3
到达172.16.3.0原理也如此


结语:

BGP的路由管理十分强大,BGP在通告路由时会携带丰富的路径属性,这些属性描述了路由的特征,同时在某些场景下也会影响BGP的路由优选。

如有错误,欢迎批正

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值