1
、介绍
BGP
属性
1
)分类
(
1
)知名
VS
可选
--->
认识
(
2
)强制
VS
自决
--->
携带
(
3
)传输
VS
不传输
(
4
)部分
2
)
组合
(
1
)
公认必遵
:
as-path next-hop origin
(
2
)
公认自决
:
local-preference
(
3
)
可选传递
:
community
(
4
)可选非传递:
MED
3
)每种属性掌握
(
1
)作用
(
2
)传播范围
(
3
)默认值:大?小?
(
4
)
如何调整
2
、调整工具
---->
三步曲
(
prefix---->route-map---->
应用
)
1
)
匹配路由
(1)acl:
192.168.1.0/24
acl 1 permit 192.168.1.0 0.0.0.255/24 /25 /26 ....
acl 100 permit ip 192.168.1.0 0.0.0.0 255.255.255.0 0.0.0.0
(2)prefix-list
精确匹配及范围匹配
ip prefix-list chuyue100 per 192.168.1.0/24
ge le
缺省路由:
ip prefix-list a permit 0.0.0.0/0
所有路由:
ip prefix-list b permit 0.0.0.0/0 le 32
2
)设置属性
route-map chuyue100 permit 10
match ip add prefix-list a
set
route-map chuyue100 permit 20--->
空语句
3
)应用到邻居
nei x.x.x.x route-map chuyue100 in/out
3
、
AS-PATH
1)
作用:
BGP
路由经过
AS
的一个列表。起到防止
环路
作用
2)
传播范围:整个
BGP
3
)默认值:比较长短,短则优
4
)调整:只能加长
R1(config)#router bgp 134
R1(config-router)#bgp router-id 1.1.1.1
R1(config-router)#nei 12.1.1.2 remote-as 2
R1(config-router)#nei 3.3.3.3 remote-as 134
R1(config-router)#nei 3.3.3.3 up lo 0
R1(config-router)#nei 3.3.3.3 next-hop-self
R1(config-router)#nei 4.4.4.4 remote-as 134
R1(config-router)#nei 4.4.4.4 up lo 0
R1(config-router)#nei 4.4.4.4 next-hop-self
R2(config)#router bgp 2
R2(config-router)#nei 12.1.1.1 remote-as 134
R2(config-router)#nei 24.1.1.4 remote-as 134
R2(config-router)#net 2.2.2.0mask 255.255.255.0
R3(config)#router bgp 134
R3(config-router)#nei 1.1.1.1 remote-as 134
R3(config-router)#nei 1.1.1.1 up lo 0
R3(config-router)#nei 1.1.1.1 next-hop-self
R3(config-router)#nei 4.4.4.4 remote-as 134
R3(config-router)#nei 4.4.4.4 up lo 0
R3(config-router)#nei 4.4.4.4 next-hop-self
R4(config)#router bgp 134
R4(config-router)#nei 24.1.1.2 remote-as 2
R4(config-router)#nei 1.1.1.1 remote-as 134
R4(config-router)#nei 1.1.1.1 up lo 0
R4(config-router)#nei 1.1.1.1 next-hop-self
R4(config-router)#nei 3.3.3.3 remote-as 134
R4(config-router)#nei 3.3.3.3 next-hop-self
R4(config-router)#nei 3.3.3.3 up lo 0
1
、匹配流量
R2(config)#ip prefix-list as-path per 2.2.2.0/24
2
、
route-map
R2(config)#route-map as-path per 10
R2(config-route-map)#match ip add prefix-list as-path
R2(config-route-map)#set as-path pre 7 8 9
//out
方向:先加这几个
AS
,再加本来的
AS
,
In
:先加本来的
AS
再加这几个
R2(config)#route-map as-path per 20
3
、应用
R2(config-route-map)#router bgp 2
R2(config-router)#nei 12.1.1.1 route-map as-path out
4
、查看
R1(config-router)#do clear ip bgp * s
R1(config-router)#do sh ip bgp
也可以在
in
操作
R1(config-router)#ip prefix-list as-path seq 5 permit 2.2.2.0/24
R1(config)#route-map as-path permit 10
R1(config-route-map)# match ip address prefix-list as-path
R1(config-route-map)# set as-path prepend 7 8 9
R1(config-route-map)#!
R1(config-route-map)#route-map as-path permit 20
R1(config-route-map)#router bgp 134
R1(config-router)#nei 12.1.1.2 route-map as-path in
4
、
orgin
1)
作用:起源
i:
通过
network
发布
e
:通过
EGP
发布
?:
通过重发布,不完整
i>e>?
是一种公认必遵守
2
)传播范围:整个
BGP
3
)默认值:
i>e>?
4
)调整
R1(config)#ip pre origin per 2.2.2.0/24
R1(config)#route-map origin per 10
R1(config-route-map)#match ip add pre origin
R1(config-route-map)#set origin in
R1(config)#route-map origin per 20
R1(config-route-map)#router bgp 134
R1(config-router)#nei 4.4.4.4 route-map origin in
R1(config-router)#do clear ip bgp * s
R1(config-router)#do sh ip bgp
5
、
local-preference
1
)作用:本
AS
数据出口
2
)传播范围:本
AS
有效
3
)默认值:
100
大则优
4
)调整
R1(config-router)#bgp default local-preference 200//
可直接在路由协议上全局启用
使用三步曲
R1(config)#ip pre local per 2.2.2.0/24
R1(config)#route-map local per 10
R1(config-route-map)#match ip add pre local
R1(config-route-map)#set local 150
R1(config)#route-map local per 20
R1(config-router)#nei 12.1.1.2 route-map local in
R1(config-router)#do clear ip bgp * s
对于
route-map
使用:对
1
个
peer
的
1
个方向只能应用
1
个
route-map
6
、
weight---->Cisco
私有
1)
作用:控制本路由器选择出口
2)
传播范围:本路由器有效
3)
默认值:本路由器产生
32768
,从别的路由器接收的
=0
4)
调整:
R1(config-router)#neighbor 4.4.4.4 weight 1
//
可直接改
三步曲:
R1(config)#ip pre wei per 2.2.2.0/24
R1(config)#route-map wei per 10
R1(config-route-map)#match ip add pre wei
R1(config-route-map)#set wei 2
R1(config)#route-map wei per 20
R1(config)#router bgp 134
R1(config-router)#nei 12.1.1.2 route-map wei in
7
、
MED=metric
1)
作用:
2
)传播范围:只能影响
邻居
AS
,不能跨
AS
传递
3
)默认值:
0
小则优
4
)调整
R1(config)#ip pre med per 2.2.2.0/24
R1(config)#route-map med per 10
R1(config-route-map)#match ip add pre med
R1(config-route-map)#set metric 1000
R1(config)#route-map med per 20
R1(config)#router bgp 134
R1(config-router)#nei 12.1.1.2 route-map med in
以上的例子作用和
local-preference
功能类似
R2(config)#ip pre med per 2.2.2.0/24
R2(config)#route-map med per 10
R2(config-route-map)#match ip add pre med
R2(config-route-map)#set metric 10000
R2(config)#route-map med per 20
R2(config)#router bgp 2
R2(config-router)#nei 12.1.1.1 route-map med out
ping
的
record
功能
注意:默认情况下,只能比较来自相同
AS
的
MED
值
要想比较来自不同
AS
的
MED
值
R2(config-router)#bgp always-compare-med
1
、
BGP
路由选择条件:
1
)同步
2
)无环
3
)下一跳可达
2
、选路顺序
1)
最高权重
------------>c
2
)最高
local preference ---->L
3
)本地产生比宣告要优
4
)最短
as-path --->a
5)
最小的
origin code i>e>?----->o
6)
最小的
med --->m
7)EBGP>IBGP --->e
8)
最近的
IGP
邻居
---->n
9
)最老的
EBGP
路由
10
)最小的
BGP RID
11
)最小邻居
IP
c laomen
3
、比较最小的邻居
IP
R1(config-router)#int s1/1
R1(config-if)#ip add 11.1.1.1 255.255.255.0 sec
R1(config-if)#router bgp 1
R1(config-router)#nei 11.1.1.3 remote-as 345
R3(config)#int s1/1
R3(config-if)#ip add 11.1.1.3 255.255.255.0 sec
R3(config-if)#router bgp 345
R3(config-router)#nei 11.1.1.1 remote-as 1
Network Next Hop Metric LocPrf Weight Path
*> 1.1.1.0/24 11.1.1.1 0 0 1 i
* 13.1.1.1 0 0 1 i
4
、比较最小的
BGP RID
*>i1.1.1.0/24 3.3.3.3 0 100 0 1 i
* i 4.4.4.4 0 100 0 1 i
R3(config-router)# bgp router-id 6.6.6.6
* i1.1.1.0/24 3.3.3.3 0 100 0 1 i
*>i 4.4.4.4 0 100 0 1 i
5
、比较最近的
IGP
邻居
* i1.1.1.0/24 3.3.3.3 0 100 0 1 i
*>i 4.4.4.4 0 100 0 1 i
R5(config)#int s1/3
R5(config-if)#ip ospf cost 100
*>i1.1.1.0/24 3.3.3.3 0 100 0 1 i
* i 4.4.4.4 0 100 0 1 i
6
、
EBGP>IBGP
*> 1.1.1.0/24 13.1.1.1 0 0 1 i
* i 4.4.4.4 0 100 0 1 i
7
、比较最小的
MED
值
*> 1.1.1.0/24 13.1.1.1 0 0 1 i
* i 4.4.4.4 0 100 0 1 i
R3(config)#ip prefix-list med per 1.1.1.0/24
R3(config)#route-map med per 10
R3(config-route-map)#match ip add pre med
R3(config-route-map)#set metric 1
R3(config)#route-map med per 20
R3(config-route-map)#router bgp 345
R3(config-router)#nei 13.1.1.1 route-map med in
R3(config-router)#do clear ip bgp * s
R3(config-router)#do sh ip bgp
* 1.1.1.0/24 13.1.1.1 1 0 1 i
*>i 4.4.4.4 0 100 0 1 i
8
、最小的
origin code
R3(config)#ip prefix-list origin per 1.1.1.0/24
R3(config)#route-map origin per 10
R3(config-route-map)#match ip add prefix origin
R3(config-route-map)#set origin egp 1
R3(config)#route-map origin per 20
R3(config)#router bgp 345
R3(config-router)#nei 4.4.4.4 route-map origin in
R3(config-router)#do clear ip bgp * s
R3(config-router)#do sh ip bgp
*> 1.1.1.0/24 13.1.1.1 1 0 1 i
* i 4.4.4.4 0 100 0 1 e
9
、最短
as-path
R3(config)#route-map med per 10
R3(config-route-map)#set as-path pre last 3
R3(config-route-map)#do clear ip bgp * s
R3(config-route-map)#do sh ip bgp
* 1.1.1.0/24 13.1.1.1 1 0 1 1 1 1 i
*>i 4.4.4.4 0 100 0 1 e
10
、比较最大的
local-preference
R3(config)#route-map med per 10
R3(config-route-map)#set local 101
*> 1.1.1.0/24 13.1.1.1 1 101 0 1 1 1 1 i
11
、比较最大的
weight
R3(config-router)#nei 4.4.4.4 wei 1
*>i1.1.1.0/24 4.4.4.4 0 100 1 1 e
* 13.1.1.1 1 101 0 1 1 1 1 i
12
、
BGP
负载均衡
IBGP
R5(config-router)#maximum-paths ibgp 2
EBGP
R1(config-router)#maximum-paths 3