今天来为大家分享思科路由器映射表控制BGP路径的方法和实例。下面的配置的要求是:从R2发出数据包时,总是选择走速度高的以太网,即从R1出去,导致经过R3的这条链 路处于空闲状态,带宽不能有效利用,在R2上做适当配置,让目的地为 192.168.1.0 和 192.168.3.0 网段的流量经过R3,其他流量仍走以 太网,已达到有效利用带宽。
一、建立IBGP和EBGP关系
R1配置:
Router(config)#ho r1
r1(config)#int s2/1
r1(config-if)#ip add 12.0.0.1 255.255.255.0
r1(config-if)#no sh
r1(config-if)#int fa0/0
r1(config-if)#ip add 14.0.0.1 255.255.255.0
r1(config-if)#no sh
r1(config)#router bgp 100
r1(config-router)#nei 12.0.0.2 remote-as 100 //建立IBGP邻居
r1(config-router)#nei 12.0.0.2 next-hop-self //修改下一条属性
r1(config-router)#nei 14.0.0.4 remote-as 200 //建立EBGP邻居
R2配置:
Router(config)#ho r2
r2(config)#int s2/1
r2(config-if)#ip add 12.0.0.2 255.255.255.0
r2(config-if)#no sh
r2(config-if)#int s2/2
r2(config-if)#ip add 23.0.0.2 255.255.255.0
r2(config-if)#no sh
r2(config-if)#exit
r2(config)#router bgp 100
r2(config-router)#nei 12.0.0.1 remote 100 //建立IBGP
r2(config-router)#nei 23.0.0.3 remote 100 //建立EBGP
R3配置
Router(config)#ho r3
r3(config)#int s2/1
r3(config-if)#ip add 23.0.0.3 255.255.255.0
r3(config-if)#no sh
r3(config-if)#int s2/2
r3(config-if)#int s2/2
r3(config-if)#ip add 34.0.0.3 255.255.255.0
r3(config-if)#no sh
r3(config)#router bgp 100
r3(config-router)#nei 23.0.0.2 remote 100 //建立IBGP邻居
r3(config-router)#nei 23.0.0.2 next-hop-self //修改下一条属性
r3(config-router)#nei 34.0.0.4 remote 200 //建立EBGP邻居
R4配置:
Router(config)#ho r4
r4(config)#int s2/1
r4(config-if)#ip add 34.0.0.4 255.255.255.0
r4(config-if)#no sh
r4(config-if)#int s2/2
r4(config-if)#ip add 45.0.0.4 255.255.255.0
r4(config-if)#no sh
r4(config-if)#int f0/0
r4(config-if)#ip add 14.0.0.4 255.255.255.0
r4(config-if)#no sh
r4(config-if)#exit
r4(config)#router bgp 200
r4(config-router)#nei 14.0.0.1 remote 100 //建立EBGP邻居
r4(config-router)#nei 34.0.0.3 remote 100 //建立EBGP邻居
r4(config-router)#nei 45.0.0.5 remote 200 //建立IBGP邻居
r4(config-router)#exit
r4(config)#int lo1
r4(config-if)#ip add 192.168.1.1 255.255.255.0
r4(config-if)#int lo2
r4(config-if)#ip add 192.168.2.1 255.255.255.0
r4(config-if)#int lo3
r4(config-if)#ip add 192.168.3.1 255.255.255.0
r4(config-if)#int lo4
r4(config-if)#ip add 192.168.4.1 255.255.255.0
r4(config-if)#exit
r4(config)#router bgp 200
r4(config-router)#net 192.168.1.0 mask 255.255.255.0
r4(config-router)#net 192.168.2.0 mask 255.255.255.0
r4(config-router)#net 192.168.3.0 mask 255.255.255.0
r4(config-router)#net 192.168.4.0 mask 255.255.255.0
R5配置:
Router(config)#ho r5
r5(config)#int s2/2
r5(config-if)#ip add 45.0.0.5 255.255.255.0
r5(config-if)#no sh
r5(config-if)#exit
r5(config)#router bgp 200
r5(config-router)#neighbor 45.0.0.4 remote-as 200 //建立IBGP邻居
二、分析:
r2(config)#do sh ip bgp
BGP table version is 5, local router ID is 23.0.0.2
Network Next Hop Metric LocPrf Weight Path
* i192.168.1.0 23.0.0.3 0 100 0 200 i
*>i 12.0.0.1 0 100 0 200 i
* i192.168.2.0 23.0.0.3 0 100 0 200 i
*>i 12.0.0.1 0 100 0 200 i
* i192.168.3.0 23.0.0.3 0 100 0 200 i
*>i 12.0.0.1 0 100 0 200 i
* i192.168.4.0 23.0.0.3 0 100 0 200 i
*>i 12.0.0.1 0 100 0 200 i
r2(config)#do sh ip rou
Gateway of last resort is not set
23.0.0.0/24 is subnetted, 1 subnets
C 23.0.0.0 is directly connected, Serial2/2
B 192.168.4.0/24 [200/0] via 12.0.0.1, 00:06:12
12.0.0.0/24 is subnetted, 1 subnets
C 12.0.0.0 is directly connected, Serial2/1
B 192.168.1.0/24 [200/0] via 12.0.0.1, 00:07:12
B 192.168.2.0/24 [200/0] via 12.0.0.1, 00:06:12
B 192.168.3.0/24 [200/0] via 12.0.0.1, 00:06:12
//所有流量下一跳都为12.0.0.1,即都从r1发出去,到23.0.0.3(r3)没 有流量经过,没有合理利用资源,可以利用本地优先级控制选路,把邻居r3的优先级改得大点,也可以用MED控制选路,把选择一部分流量从r3上发出去,增 大带宽利用率。
三、使用路由映射表修改本地优先级:
r2(config)#access-list 1 per 192.168.1.0 0.0.2.255 //源地址为192.168.1.1和192.168.1.3流量被允许
r2(config)#route-map aa per 10 //利用route-map修改本地优先级
r2(config-route-map)#match ip add 1
r2(config-route-map)#set local-preference 200 //设置本地优先级为200
r2(config)#router bgp 100
r2(config-router)#nei 23.0.0.3 route-map aa in //R2收到邻居23.0.0.3(R3)的更新后,根据路由映射表aa对其进行处理,并再将网络加入到BGP转发表中,相应地设置其本地优先。
四、验证:
r2(config)#do sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*>i192.168.1.0 23.0.0.3 0 200 0 200 i
* i 12.0.0.1 0 100 0 200 i
*>i192.168.2.0 12.0.0.1 0 100 0 200 i
*>i192.168.3.0 23.0.0.3 0 200 0 200 i
* i 12.0.0.1 0 100 0 200 i
*>i192.168.4.0 12.0.0.1 0 100 0 200 i
r2(config)#do sh ip rou
Gateway of last resort is not set
23.0.0.0/24 is subnetted, 1 subnets
C 23.0.0.0 is directly connected, Serial2/2
B 192.168.4.0/24 [200/0] via 12.0.0.1, 00:07:20
12.0.0.0/24 is subnetted, 1 subnets
C 12.0.0.0 is directly connected, Serial2/1
B 192.168.1.0/24 [200/0] via 23.0.0.3, 00:00:42
B 192.168.2.0/24 [200/0] via 12.0.0.1, 00:07:20
B 192.168.3.0/24 [200/0] via 23.0.0.3, 00:00:42
五、使用使用路由映射表修改MED
r1(config)#access-list 1 permit 192.168.1.0 0.0.2.255 //源地址为192.168.1.1和192.168.1.3流量被允许
r1(config)#route-map med permit 10
r1(config-route-map)# match ip address 1
r1(config-route-map)# set metric 10 //设置度量值为10
r1(config-route-map)#route-map med permit 20
r1(config)#router bgp 100
r1(config-router)# neighbor 12.0.0.2 route-map med out //收到邻居12.0.0.1(R1)更新后,根据路由映射表med行处理,并再将网络加入到BGP转发表中,相应地设置度量值。
六、验证
r2(config-router)#do sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* i192.168.1.0 12.0.0.1 10 100 0 200 i
*>i 23.0.0.3 0 100 0 200 i
*>i192.168.2.0 12.0.0.1 0 100 0 200 i
* i 23.0.0.3 0 100 0 200 i
* i192.168.3.0 12.0.0.1 10 100 0 200 i
*>i 23.0.0.3 0 100 0 200 i
*>i192.168.4.0 12.0.0.1 0 100 0 200 i
* i 23.0.0.3 0 100 0 200 i
r2(config-router)#do sh ip route
23.0.0.0/24 is subnetted, 1 subnets
C 23.0.0.0 is directly connected, Serial2/2
B 192.168.4.0/24 [200/0] via 12.0.0.1, 00:06:21
12.0.0.0/24 is subnetted, 1 subnets
C 12.0.0.0 is directly connected, Serial2/1
B 192.168.1.0/24 [200/0] via 23.0.0.3, 00:06:27
B 192.168.2.0/24 [200/0] via 12.0.0.1, 00:06:21
B 192.168.3.0/24 [200/0] via 23.0.0.3, 00:06:27
总结:
本地优先级只被AS内的IBGP路由器用来选择离开当前AS前往外部网络的最佳路径,其默认 值为100,本地优先级越高,路径越有先。
MED被用来选择进入AS时的最佳路径,即控制数据流进入AS的方式,默认值为0,MED越 小,路径越优先。