背景資訊
bgp協議本身不發現路由,因此需要將其他路由(如igp路由等)引入到bgp路由表中,從而將這些路由在as之內和as之間傳播。
1、配置bgp引入路由
bgp協議支援通過以下兩種方式引入路由:
import方式:按協議型別,將rip路由、ospf路由、isis路由等協議的路由引入到bgp路由表中。為了保證引入的igp路由的有效性,import方式還可以引入靜態路由和直連路由。
network方式:逐條將ip路由表中已經存在的路由引入到bgp路由表中,比import方式更精確。
2、配置md5認證
bgp使用tcp作為傳輸協議,只要tcp資料報的源位址、目的位址、源埠、目的埠和tcp序號是正確的,bgp就會認為這個資料報有效,但資料報的大部分引數對於攻擊者來說是不難獲得的。為了保證bgp協議免受攻擊,可以在bgp鄰居之間使用md5認證或者keychain認證來降低被攻擊的可能性。其中md5演算法配置簡單,配置後生成單一密碼,需要人為干預才可以更換密碼。
執行命令peer password ,配置md5認證密碼。
3、配置bgp gtsm功能
為防止攻擊者模擬真實的bgp協議報文對裝置進行攻擊,可以配置gtsm功能檢測ip報文頭中的ttl值。根據實際組網的需要,對於不符合ttl值範圍的報文,gtsm可以設定為通過或丟棄。當配置gtsm預設動作為丟棄時,可以根據網路拓撲選擇合適的ttl有效範圍,不符合ttl值範圍的報文會被介面板直接丟棄,這樣就避免了網路攻擊者模擬的「合法」bgp報文攻擊裝置。
4、配置bgp路由反射器
在as內部,為保證ibgp對等體之間的連通性,需要在ibgp對等體之間建立全連線關係。當ibgp對等體數目很多時,建立全連線網路的開銷很大。使用路由反射器rr(route reflector)可以解決這個問題。
集群id用於防止集群內多個路由反射器和集群間的路由環路。當乙個集群裡有多個路由反射器時,必須為同乙個集群內的所有路由反射器配置相同的集群id。
如果路由反射器的客戶機之間重新建立了ibgp全連線關係,那麼客戶機之間的路由反射就是沒有必要的,而且還占用頻寬資源。此時可以配置禁止客戶機之間的路由反射,減輕網路負擔。
在乙個as內,rr主要有路由傳遞和流量**兩個作用。當rr連線了很多客戶機和非客戶機時,同時進行路由傳遞和流量**會使cpu資源消耗很大,影響路由傳遞的效率。如果需要保證路由傳遞的效率,可以在該rr上禁止bgp將優選的路由下發到ip路由表,使rr主要用來傳遞路由。
*屬性*
origin屬性
origin屬性用來定義路徑資訊的**,標記一條路由是怎麼成為bgp路由的。它有以下3種型別:
igp:具有最高的優先順序。通過network命令注入到bgp路由表的路由,其origin屬性為igp。
egp:優先順序次之。通過egp得到的路由資訊,其origin屬性為egp。
incomplete:優先順序最低。通過其他方式學習到的路由資訊。比如bgp通過import-route命令引入的路由,其origin屬性為incomplete。
as_path屬性
as_path屬性按向量順序記錄了某條路由從本地到目的位址所要經過的所有as編號。在接收路由時,裝置如果發現as_path列表中有本as號,則不接收該路由,從而避免了as間的路由環路。
當bgp speaker傳播自身引入的路由時:
當bgp speaker將這條路由通告到ebgp對等體時,便會在update報文中建立乙個攜帶本地as號的as_path列表。
當bgp speaker將這條路由通告給ibgp對等體時,便會在update報文中建立乙個空的as_path列表。
當bgp speaker傳播從其他bgp speaker的update報文中學習到的路由時:
當bgp speaker將這條路由通告給ebgp對等體時,便會把本地as編號新增在as_path列表的最前面(最左面)。收到此路由的bgp裝置根據as_path屬性就可以知道去目的位址所要經過的as。離本地as最近的相鄰as號排在前面,其他as號按順序依次排列。
當bgp speaker將這條路由通告給ibgp對等體時,不會改變這條路由相關的as_path屬性。
next_hop屬性
next_hop屬性記錄了路由的下一跳資訊。bgp的下一跳屬性和igp的有所不同,不一定就是鄰居裝置的ip位址。通常情況下,next_hop屬性遵循下面的規則:
bgp speaker在向ebgp對等體發布某條路由時,會把該路由資訊的下一跳屬性設定為本地與對端建立bgp鄰居關係的介面位址。
bgp speaker將本地始發路由發布給ibgp對等體時,會把該路由資訊的下一跳屬性設定為本地與對端建立bgp鄰居關係的介面位址。
bgp speaker在向ibgp對等體發布從ebgp對等體學來的路由時,並不改變該路由資訊的下一跳屬性。
配置調整bgp網路的收斂速度
通過配置bgp定時器、去使能ebgp連線快速復位和路由振盪抑制可以提高bgp網路的收斂速度,提高bgp的穩定性。
有關棧的小知識
include int main 引用於 c專家程式設計 在我的ubuntu14.04 64位作業系統中輸出 the stack top is near 0x7ffc5643981c 符合64位虛擬記憶體管理 2.linux棧的大小 首先用ulimit s可以檢視棧大小 輸出 8192。單位是k。也...
有關於死鎖的知識
1 打個比方,假設有 p1 和 p2 兩個程序,都需要 a 和 b 兩個資源,現在 p1 持有 a 等 待 b 資源,而 p2 持有 b 等待 a 資源,兩個都等待另乙個資源而不肯釋放資源,就 這樣無限等待中,這就形成死鎖,這也是死鎖的一種情況。給死鎖下個定義,如 果一組程序中每乙個程序都在等待僅由...
有關scanf函式小知識
1.scanf 函式是有返回值的,它的返回值可以分成三種情況 1 正整數,表示正確輸入引數的個數。例如執行 scanf d d a,b 如果使用者輸入 3 4 可以正確輸入,返回2 正確輸入了兩個變數 如果使用者輸入 3,4 可以正確輸入a,無法輸入b,返回1 正確輸入了乙個變數 2 0,表示使用者...