bgp 邊界閘道器路由協議,管理as之間路由傳遞
距離向量型,分布式計算
採用tcp來傳遞路由資訊,埠號179,保障可靠性,但是這樣做了就會喪失鄰居自動發現的功能,只能單播建立鄰居,並且可以非直連建立鄰居關係。
bgp設計是用來處理as之間的路由協議重點處理as之間的路由,as之內的路由不作為重點,所以內部ad值是200,外部是20.
bgp使用as號作為識別不同as路由的標識,該as號需要具有唯一性,範圍1-65535,可以擴充套件為32位,解決as不夠使用的情況
bgp的使用單位是乙個路由器,所以每個路由器只能使用乙個bgp的程序。
由於bgp管理的路由資訊非常龐大,不能夠使用週期更新,只能觸發更新,並且bgp會認為一條路由時間越久越穩定,在這種情況下bgp必然不會使用複雜的演算法來處理bgp收到的路由資訊,又由於每個as情況不一致,管理範圍有限,必然需要豐富的管理引數,不能像之前的igp協議依靠ad,metric值。綜上所述,bgp必然需要多種引數共同來決定路由的選擇,並且不能依賴某種特定的全域性演算法,只能單獨去計算某一條路由不能全盤考慮,並且需要依賴所屬as管理員手工配置,路徑優先協議,通過給每乙個路由器設定大量的屬性引數來進行靈活的管理或者選路,並且這些屬性引數大量都需要人為來操控。
bgp鄰居狀態機制
idle state
配置了neighbor或重置了鄰居,bgp初始化所有資源開啟connect retry計時器,初始化鄰居的tcp連線,初始化資訊並將它的狀態轉到connect狀態。
為了防止差錯的持續出現造成bgp鄰居的擺動,connect retry計時器會呈現數級的增加,第一次60s,下一次就是120s,再下一次就是240s
connect state
bgp等到tcp連線完成以後再決定後續的動作
1.如果tcp同步完成,bgp將connect retry清零,完成初始化並傳送乙個open報文給鄰居並把狀態設定為open
2.如果失敗,繼續監聽鄰居發出的連線,重置計時器並轉移到active狀態
3.如果計時器超時,計時器重新開始,在試圖與鄰居建立tcp連線,bgp保持connect狀態,出現其他事件轉入idle狀態
active state
bgp試圖與鄰居建立乙個tcp的連線
1.如果tcp連線成功,bgp將connect retry計時器清零,完成初始化,給鄰居傳送open訊息並將狀態置為open,hold時間為4分鐘
2.如果在active狀態,connect retry計時器超時回到connect狀態並重置計時器
3.如果試圖與乙個未知ip建立tcp會話,同時計時器重置,連線拒絕並保持active
4.任何乙個事件都會導致重回idle狀態
open send state
在此狀態,已經傳送了open訊息,bgp等待鄰居傳送的open訊息
1.收到open訊息,如果發現差錯,給鄰居傳送乙個notification訊息並置為idle
2.如果收到正確的open訊息,將發生keepalive給鄰居,並建立ibgp或者ebgp狀態為open confire state
3.如果收到tcp斷開訊息則斷開bgp連線重置計時器,狀態置為active
open confire state
在此狀態下bgp會等待乙個keepalive訊息或者notification訊息
1.如果後收到乙個keepalive訊息狀態置為establish
2.如果收到notification訊息狀態置為idle斷開tcp連線
3.如果hold計時器超時,檢測到乙個差錯或者stop事件,bgp給鄰居傳送乙個notification並斷開連線,狀態置為idle
establish state
此狀態bgp對等體間的連線已經完全建立,可以交換updata,keepalive和notification訊息
bgp建立鄰居失敗的情況:
引數與配置:
1. neighbor 10.1.1.1 //代表向該位址傳送tcp埠為179的資料,並且自己也需要在發出位址上開啟tcp 179的監聽,該配置可以指定源位址也可以不指定源位址,不指定就是出介面位址,意外著得開啟該出介面關於tcp 179的監聽。
本端指的位址需要是對方的源位址,對方指的位址需要是本端的源位址
2. neighbor 10.1.1.1 remote-as xx,
對端建立鄰居的as號必須和本端remote-as號一致
3. 建立雙方保證資料tcp 179能夠傳送,不丟失,不被攔截
鄰居之間路由傳遞規則
bgp有兩種鄰居關係
ibgp鄰居關係,相同as路由器建立鄰居關係
ebgp鄰居關係,不同as路由器建立鄰居關係
1. bgp不管什麼鄰居關係只傳遞最優路由(不優不傳,優的標誌是》 )
2. ebgp鄰居關係路由傳遞,只要不違背環路原則或人工策略ebgp鄰居傳遞無限制的,前提必須優,ebgp之間傳遞路由會更新next-hop為自己的更新源位址
3. ibgp鄰居關係路由傳遞,ibgp自己產生的路由(自己宣告的,重發布進來的)和ebgp鄰居傳遞的都可以傳遞給他的ibgp鄰居,但不可以在ibgp之間中轉,也就是不能傳遞到鄰居的鄰居。
ibgp之間傳遞路由不會更新next-hop位址,只有next-hop為0.0.0.0的情況才會更新,或者建立鄰居的時候輸入neighbor x.x.x.x next-hop self 更新為自己的更新源位址
這個設定的好處:ibgp之間擁有了水平分割,從而避免了ibgp環路的產生,bgp也不必設定防環演算法。
這個設定的壞處:ibgp之間路由傳遞必須直接建立鄰居,導致ibgp鄰居關係是一種全互聯狀態。
bgp屬性
一共10個屬性(cisco 11 種),分為四類:
well-known mandatory
well-known discretionary
optional transitive
optional nontransitive
11條屬性:weight origin as-path next-hop local-pre atomic-aggregate
aggregator community med originator-id cluster-id
1.公認必尊
所有bgp路由器必須識別並遵守的原則:
origin as-path next-hop
2.公認可尊
所有路由器都能識別但是不一定要遵守
local-pref atomic-aggregate
3.可選傳遞
不是所有路由器都能識別,但是所有bgp可以傳遞
aggreator community
4.可選非傳遞
不是所有路由器都被識別,不能識別的就丟棄
med,originator-id cluster-id weight
配置:bgp的宣告是依賴路由表的,宣告滿足:
1.被宣告路由必須在路由表中
2.被宣告的路由必須和路由表中的字首掩碼一致
community 團體屬性,為了更好的標識bgp路由,標識格式為x:y
團體值的設定不能在ebgp之間,ibgp之間可以,傳遞可以在ibgp之間也可以在ebgp之間
設定:route-map p permit 10
match ip address prefix-list p
set community 111
route-map p permit 20
router bgp 1
neighbor x.x.x.x route-map p out
設定必須在ibgp之間可以in也可以out
傳遞設定:
standard 做路由識別符號 extended mpls vpn,可讀性好
neighbor x.x.x.x send-community both 團體屬性如果要傳遞必須開啟該指令(standard extended both)
匹配設定:
ip community-list ? //與acl一樣,標準與擴充套件
ip community-list expanded k permit 111
匹配完成後用route-map呼叫。
檢視:show ip bgp 10.1.1.1//檢視路由詳情可以看到團體值
show ip bgp community 檢視所有具有團體值的路由
show ip bgp community 111 檢視某個團體值的路由
子屬性bgp always-compare-med 開啟比較不同
ip bgp-community new-format 開啟擴充套件格式匹配
:internet 預設屬性,可以給任何bgp傳送,不對攜帶團體值的路由做任何限制
no export 只能在乙個as內傳遞,可以在聯盟內傳遞,該屬性就是限制攜帶團體屬性的路由傳遞給ebgp鄰居,聯盟ebgp除外
no advertise 不再ibgp ebgp鄰居間傳遞,禁止傳遞給任何鄰居
local-as 不向任何ebgp鄰居傳送包括聯盟ebgp鄰居
基礎理論知識(五)
1.s,d,f,2f的作用分別是什麼?4分 s 通用佔位符 d 整數型別佔位符 f 小數佔位符 2f 保留兩位小數 2.檔案讀寫的三個基本步驟是什麼?3分 open test.txt w 開啟檔案時,如果檔案不存在會有什麼結果?1分 open test.txt r 開啟檔案時,如果檔案不存在會有什麼...
BGP理論知識
三 bgp路由協議的特點 四 bgp分類 五 bgp工作原理 1 bgp的報文 5種報文 2 bgp狀態機 6種狀態 3 bgp對等體之間的互動原則 9個原則 自治系統,指的是在同乙個組織管理下,使用相同策略的裝置的集合 不同as通過as號區分,as號取值範圍1 65535,其中64512 6553...
爬蟲 基礎理論知識(一)
4.所有的目標url全部請求完畢,爬蟲結束 搜尋引擎需要遵守robot協議 搜尋引擎的缺點 b.搜尋引擎搜尋的結果千篇一律,沒有辦法根據特定的使用者,獲取特定的資料 c.搜尋引擎搜尋結果99 並沒用 目的 實現不同的系統互聯之間的資料通訊,實現資料的傳輸 2.表示層 3.會話層 4.傳輸層 5.網路...