5.1 BGP屬性特點描述
BGP路由屬性是一套參數,它是對特定的路由進一步的描述。簡單來說就是一組描述BGP前綴特性的參數。
公認必遵(Well-know mandatory)
• 所有BGP路由器都可以識別,且必須存在於Update消息中
• 如果缺少這種屬性,路由信息就會出錯
公認任意(Well-know discretionary)
• 所有BGP路由器都可以識別,但不要求必須存在於Update消息中
• 即就算缺少這類屬性,路由信息也不會出錯
可選過渡(Optional transitive)
• 在AS之間具有可傳遞性的屬性
• BGP路由器可以不支持此屬性,但它仍然會接收這類屬性,並傳遞給其他對等體
可選非過渡(Optional non-transitive)
• 如果BGP路由器不支持此屬性,則相應的這類屬性會被忽略,且不會傳遞給其
他對等體
5.2 BGP屬性與分類對應關係
公認必遵(Well-know mandatory)
Origin、AS-PATH、Next hop
公認任意(Well-know discretionary)
Local_Pref、Atomic_Aggregate
可選過渡(Optional transitive)
Aggregator、Community
可選非過渡(Optional non-transitive)
Multi_Exit_Disc、Originator ID、Cluster List
5.3 BGP屬性與實驗
Origin屬性用來定義路徑信息的來源,該屬性為公認必遵
IGP
• 通過路由始發AS的IGP得到的路由信息
• 標識符為“i”
EGP
• 通過EGP得到的路由信息
• 標識符為“e”
Incomplete
• 通過其他方式學習到的路由信息
• 標識符為“?”
Network進來的路由,屬性都為“i”
做一個route policy單獨import一條111.111.111.111/32的路由
在AS300中觀察這條引入的直連路由,看它的AS-PATH,起始的AS號在右邊。
從EBGP學來的路由,默認下一跳是不改變的,是建立EBGP對等體的接口地址,R2從R1學來的111.111.111.111/32路由,下一跳是10.1.12.1,傳遞給R3時,仍然不變,這個信息由Next hop屬性攜帶,由於下一跳不可達,這條路由也不會被優選。
在R2上指定next-hop-local,下一跳變為IBGP對等體的地址,下一跳可達路由被優選
Local_Pref屬性表明路由器的BGP優先級,用於判斷流量離開AS時的最佳路由。
R7去往111.111.111.111的路由優選R5,Local_pre為默認值100
我們在R6上做一條route policy,將111.111.111.111/32的路由Local_pre值調為400。可以看出路由的local_preference的值已經調整,並且路由也從R5變為R6,這個屬性值是影響流量如何出路由器的,值越大越優先。
MED屬性相當於IGP的代價值,用於判斷流量進入AS時的最佳路由,即用來影響鄰居AS流量進入本AS的最佳路徑,該屬性為可選非過渡。
可以看到R5向對等體發佈路由的時候將MED調整為100生效,MED越小越優先,路由下一跳從R5切換至R6,R6沒有變動,保持默認值為0
可選過渡屬性community的坑,默認BGP向對等體是不發佈community屬性的,所以必須通過配置才能將community屬性傳遞過去