BGP網絡學習總結

一、前言html

     雲計算在中國發展愈來愈快,企業逐步開始將業務遷移到公有云中,方便運維,節省成本。公有云最複雜的地方是網絡,客戶對網絡的需求千奇百怪,形成網絡環境極其複雜,稍有不慎,就會出現網絡連通性問題。所以大部分雲計算廠商機房網絡類型的運營商接入均爲 BGP 多線路,保證線路質量。公有云中網絡安全也是很是重要,例如DDos攻擊,域名未備案封堵系統。我在工做中接觸到了BGP高仿和域名未備案封堵系統,今天總結一下本身對BGP網絡的理解,涉及的內容有什麼是BGP,BGP用來解決什麼問題,雲計算廠商中BGP機房有啥優點,BGP高防如何作到引流和回注,域名未備案系統是怎麼實現的。linux

二、BGP網絡介紹算法

  目前中國境內主要分爲網通、電信、移動、聯通、教育網、科技網、衛通等網絡,因爲這些公司獨立運做,形成國內長久以來整個互聯網處於沒法快速互聯互通的局面,如何將各個AS自制系統連通起來,就須要搭建BGP網絡。安全

在介紹BGP協議以前,先介紹幾個概念:網絡

  (1) AS(Autonomous system):自治系統,指在一個(有時是多個)組織管轄下的全部IP網絡和路由器的全體,它們對互聯網執行共同的路由策略。也就是說,對於互聯網來講,一個AS是一個獨立的總體網絡。而BGP實現的網絡自治也是指各個AS自治。每一個AS有本身惟一的編號。運維

  (2)IGP(Interior Gateway Protocol):內部網關協議,在一個AS內部所使用的一種路由協議。一個AS內部也能夠有多個路由器管理多個網絡。各個路由器之間須要路由信息以知道子網絡的可達信息。IGP就是用來管理這些路由。表明的實現有RIP和OSPF。優化

       (3)EGP(Exterior Gateway Protocol):外部網關協議,在多個AS之間使用的一種路由協議,如今已經淘汰,被BGP取而代之。雲計算

       BGP(Border Gateway Protocol)主要用於互聯網AS(自治系統)之間的互聯,BGP的最主要功能在於控制路由的傳播和選擇最佳路徑。全國各大網絡運營商多數都是經過BGP協議與自身的AS號來實現多線互聯的。使用BGP協議互聯後,網絡運營商的全部骨幹路由設備將會判斷到IDC機房IP段的最佳路由,以保證不一樣網絡運營商用戶的高速訪問。spa

  動態BGP多線網絡,路由表項是經過相互鏈接的路由器之間交換彼此路由信息,而後按照必定的算法優化出來的,而這些路由信息是在必定時間間隙裏不斷更新,以適應不斷變化的網絡,以隨時得到最優的尋路效果。爲了實現IP分組的高效尋路,IETF制定了多種尋路協議。也就是說,當靜態BGP中的網絡結構發生變化,運營商是沒法在第一時間自動調整網絡設置以保障用戶的體驗度。而動態BGP可根據設定的尋路協議第一時間自動優化網絡結構,以保持客戶使用的網絡持續穩定、高效。因此,動態BGP網絡被稱爲真正意義上的BGP。htm

知乎上有一個很是=通俗易懂的例子講解爲何須要BGP網絡,https://zhuanlan.zhihu.com/p/25433049

三、BGP流量引流和回注

  雲計算廠商須要保證客戶網絡的正常,一般會爲單個公網IP提供數G的防禦能力,當超過默認的閾值,公網IP備遷移到黑洞中,進行封堵。這樣致使用戶的服務不可訪問了,客戶爲了正常訪問服務,就須要接入BGP高防,防禦能力高達數百G,來保護服務正常。高防的費用是很是高的,一般雲廠商本身搭建高防系統,經過BGP協議將流量引流到高防清洗系統,將異常流量清洗掉,將正常流量回注給客戶。參考華爲的DDos防禦系統http://forum.huawei.com/enterprise/thread-388785-1-1.html

四、搭建BGP引流和回注

  使用Linux下開源的Quagga開源搭建基於BGP協議的路由器,Quagga守護進程負責BGP的服務叫bgpd。關於如何使用Quagga搭建一個BGP路由器,能夠參考:

https://linux.cn/article-4609-1.html

路由器A和路由器B使用100.100.0.0/30子網來鏈接到對方。

  技術實現目前可使用Intel開源的DPDK網絡開發包快速開發,使用KNI新建一個虛擬網卡,配置好與上層交互機創建BGP,而後經過虛擬網絡將流量引入,分析流量事後,使用回注口將報文使用二層MAC送回到交換機。關於DPDK的介紹能夠參考:https://www.jianshu.com/p/0ff8cb4deaef

相關文章
相關標籤/搜索