前綴列表 匹配路由網絡
prefix-list 負載均衡
ip prefix-list {list-name | list-number} [seq number] {deny network/length | permit network/length} [ge ge-length] [le le-length]ide
- prefix-list 原本就是爲BGP 設計的。能夠匹配路由條目的網絡地址部分和掩碼部分 atom
- 能夠使用distribute-list 直接調用prefix-listspa
ip prefix-list NAME permit 172.16.0.0/22 ge 24 le 24設計
- /22 前綴22bit相同的blog
- ge 24 掩碼範圍最小24位,當沒有ge,掩碼範圍最小值跟前綴相同進程
- le 24 掩碼範圍最大24位圖片
- 若是沒寫 leip
1, 當沒有ge , le 值跟前綴相同
2, 當有ge, 沒有指定le, le=32
例子:
- 172.16.0.0/26
ip prefix-list test seq 5 permit 172.16.0.0/26 ge 26 le 26
- 172.16.1.0/26
ip prefix-list test seq 10 permit 172.16.1.0/26 ge 26 le 26
- 172.16.2.0/26
ip prefix-list test seq 15 permit 172.16.2.0/26 ge 26 le26
- 172.16.3.0/26
ip prefix-list test seq 20 permit 172.16.3.0/26 ge 26 le 26
-用一條 ip prefix-list test permit 172.16.0.0/22 ge 26 le 26 不精確
特殊:
全部32位主機路由 ip prefix-list A permit 0.0.0.0/0 ge 32
ip prefix-list A permit 128.0.0.0/2 ge 17
全部路由 ip prefix-list A permit 0.0.0.0/0 le 32
默認路由 ip prefix-list A permit 0.0.0.0/0
############################################################################### BGP 的路徑屬性
- BGP 的度量是屬性
- 屬性分爲:4類
{ 強制
公認 {
{ 自由決定
{ 傳遞
可選 {
{ 非傳遞
公認屬性:每一個運行BGP的路由器都必須支持和識別的;
傳播給其餘鄰居
公認強制屬性:在更新消息中必須有的
AS-path next-hop origin(路由怎樣加入到BGP)
公認自由屬性:在更新消息中能夠沒有
local preference (本地優先級) atomiic aggregate(鏈路聚合)
可選屬性:是公認屬性的補充(多是私有),可是能夠沒必要被全部BGP路由器所支持
可用屬性根據其含義來傳遞給其餘鄰居
可選傳遞屬性:若是不支持,原封不動的傳給其餘鄰居
aggregator community
可選非傳遞屬性:若是不支持,就忽略此屬性;而且次路由不傳遞給鄰居
MED
BGP 屬性:
- AS path *
- next-hop *
- origin *
- local preference
- MED
- others
AS-Path
- 就是一個到達目的地全部要通過的自治系統列表(每離開一個AS就加上一個AS-path屬性)
next-hop
- EBGP之間傳遞時纔會改變(下一跳指向EBGP鄰居的IP)IBGP傳遞不改變next-hop,能夠用
next-hop-self 使得路由再IBGP傳遞時也更改下一跳
origin 起源屬性
- IGP (i)
network 命令宣告的
聚合產生
- Incomplete(?)
從IGP或靜態路由重分佈過來的
- 起源屬性,用來告知AS內 全部路由器,一個網絡前綴是如何引入BGP的
以上屬性 能夠經過 sho ip bgp查看
local preference 本地優先級屬性
- 選擇local preference 高的路徑
@ local preference 通告給本地IBGP鄰居,指導數據如何離開本AS
@ 指向 IBGP 鄰居發送(即只在AS內部)
@ local preference 默認爲100
@ 公認自由決定屬性,選路用
MED
- 選擇MED 低的路徑(能夠想象爲度量值)
- 通告給相鄰EBGP鄰居,指導數據如何進入本AS
- 默認 0
- 可選非傳遞屬性
經過本地設置來影響EBGP鄰居到達本地路徑選擇
上圖,A發送給B C的路由帶上MED值,數據從B到A路徑就是B->A,從C到A路徑 就是C->B>A
weight 屬性(cisco私有)
- 選擇 weigh 高的路徑
@ 不發送給任何BGP 鄰居;路由器本地有效
BGP路徑選擇
- 在BGP表一般有不少到達同一目的地的路徑
- BGP 默認不負載均衡
路徑選擇基於屬性
並不基於帶寬等因素
- BGP根據屬性在不少路徑選擇一條最佳路徑
- 最佳路徑提交到路由表管理進程。並對其餘路由協議一樣到達相同目的地的路由進行評價 (根 據 AD值)
路徑決策過程
1,更高的 weigh (本地路由器)
2,更高的 local preference (本AS)
3,起源於本身的路由 (下一跳=0.0.0.0)
4,更短的 AS-path 列表
5,比起源屬性 (IGP < EGP < incomplete)
6,更小的MED (比較相鄰AS之間)
7, EBPG 比 IBGP 更好
8,選擇最近的 BGP 鄰居路由
9,若是配置了 maximum-path ,會負載均衡
10,對應 EBGP 路徑 ,選擇最老路由
11,更低的鄰居 IBGP 路由器ID
12,更短的 cluster-list
13,更低的鄰居IP
待續。。。。。。。