一、BGP(Border Gateway Protocol)是一種不一樣自治系統的路由設備之間進行通訊的外部網關協議(Exterior Gateway Protocol,EGP),其主要功能是在不一樣的自治系統(Autonomous Systems,AS)之間交換網絡可達信息,並經過協議自身機制來消除路由環路。BGP 使用TCP協議做爲傳輸協議,經過 TCP 協議的可靠傳輸機制保證 BGP 的傳輸可靠性。運行 BGP 協議的 Router稱爲 BGP Speaker,創建了 BGP 會話鏈接(BGP Session)的 BGP Speakers 之間被稱做對等體(BGP Peers)。web
二、BGP Speaker之間創建對等體的模式有兩種:IBGP(Internal BGP)和EBGP(External BGP)。IBGP 是指在相同 AS內創建的 BGP 鏈接,EBGP是指在不一樣 AS 之間創建的 BGP鏈接。兩者的做用簡而言之就是:EBGP 是完成不一樣 AS 之間路由信息的交換,IBGP是完成路由信息在本 AS內的傳遞。網絡
組建BGP網絡是爲了實現網絡中不一樣AS之間的通訊。配置BGP的基本功能是組建BGP網絡最基本的配置過程,主要包括三部分:app
一、建立BGP進程:只有先建立BGP進程,才能開始配置BGP的全部特性。ide
二、創建BGP對等體關係:只有成功創建了BGP對等體關係,設備之間才能交換BGP消息。oop
三、引入路由:BGP協議自己不發現路由,只有引入其餘協議的路由才能產生BGP路由。spa
1.拓撲圖設計
注意:缺省狀況下,BGP會自動選取系統視圖下的Router ID做爲BGP協議的Router ID。若是選中的Router ID是物理接口的IP地址,當IP地址發生變化時,會引發路由的振盪。爲了提升網絡的穩定性,能夠將Router ID手動配置爲Loopback接口地址。3d
2.實驗目的:orm
要使AS100網絡(R1:1.1.1.1)和AS200(R4:4.4.4.4)網絡路由可達。須要在全部router間運行BGP協議,R1和R二、R3之間創建EBGP鏈接,R二、R3和R4之間創建IBGP全鏈接。在AS200內,使用IGP協議來計算路由(該例使用OSPF做爲IGP協議)。router
3.配置思路:
1)搭建好拓撲圖環境,標出規劃好的IP地址
2)修改網絡設備默認名稱、配置好IP地址
3)配置基本OSPF(在AR二、AR三、AR4內作IBGP)
4)配置EBGP
4.配置過程:
步驟一:修改網絡設備默認名稱、配置好IP地址
1)配置各PC信息 (略)
2)配置路由器AR1默認名稱及接口IP
<Huawei>sys //進入系統視圖模式
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR1 //修改設備名稱
[AR1]int g0/0/0 //進入接口
[AR1-GigabitEthernet0/0/0]ip add 192.168.12.1 24 //給接口配IP
[AR1-GigabitEthernet0/0/0]int g0/0/1
[AR1-GigabitEthernet0/0/1]ip add 192.168.13.1 24
[AR1-GigabitEthernet0/0/1]int loopback 0
[AR1-LoopBack0]ip add 192.168.1.1 32
2)配置路由器AR2默認名稱及接口IP
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR2
[AR2]int g0/0/0
[AR2-GigabitEthernet0/0/0]ip add 192.168.12.2 24
[AR2-GigabitEthernet0/0/0]int g0/0/1
[AR2-GigabitEthernet0/0/1]ip add 192.168.24.2 24
[AR2-GigabitEthernet0/0/1]int loopback 0
[AR2-LoopBack0]ip add 192.168.2.2 32
3)配置路由器AR3默認名稱及接口IP
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR3
[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]ip add 192.168.13.3 24
[AR3-GigabitEthernet0/0/0]int g0/0/1
[AR3-GigabitEthernet0/0/1]ip add 192.168.34.3 24
[AR3-GigabitEthernet0/0/1]int loopback 0
[AR3-LoopBack0]ip add 192.168.3.3 32
4)配置路由器AR4默認名稱及接口IP
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR4
[AR4]int g0/0/0
[AR4-GigabitEthernet0/0/0]ip add 192.168.34.4 24
[AR4-GigabitEthernet0/0/0]int g0/0/1
[AR4-GigabitEthernet0/0/1]ip add 192.168.24.4 24
[AR4-GigabitEthernet0/0/1]int loopback 0
[AR4-LoopBack0]ip add 192.168.4.4 32
步驟2、配置基本OSPF(在AR二、AR三、AR4內作IBGP):
[if !supportLists]1) [endif]R2
[AR2]ospf router-id 2.2.2.2 //使能OSPF,並配置router-id
[AR2-ospf-1]area 0 //配置area區域
[AR2-ospf-1-area-0.0.0.0]network 192.168.24.0 0.0.0.255 //發佈AS內網段
[AR2-ospf-1-area-0.0.0.0]network 192.168.2.2 0.0.0.0
[if !supportLists]2) [endif]R3
[AR3]ospf router-id 3.3.3.3
[AR3-ospf-1]area 0
[AR3-ospf-1-area-0.0.0.0]network 192.168.34.0 0.0.0.255
[AR3-ospf-1-area-0.0.0.0]network 192.168.3.3 0.0.0.0
3)R4
[AR4]ospf router-id 4.4.4.4
[AR4-ospf-1]area 0
[AR4-ospf-1-area-0.0.0.0]network 192.168.24.0 0.0.0.255
[AR4-ospf-1-area-0.0.0.0]network 192.168.34.0 0.0.0.255
[AR4-ospf-1-area-0.0.0.0]network 192.168.4.4 0.0.0.0
4)配置驗證,配置IBGP後,同一個AS內的網段能夠互通,不一樣AS的網段不能互通
步驟3、配置EBGP
[if !supportLists]1) [endif]R1:
[AR1]bgp 100
[AR1-bgp]router-id 1.1.1.1
[AR1-bgp]peer 192.168.12.2 as-number 200
[AR1-bgp]peer 192.168.13.3 as-number 200
[AR1-bgp]network 192.168.1.1 32
[if !supportLists]2) [endif]R2:
[AR2]bgp 200 //建立bgp編號200 (AS200)
[AR2-bgp]router-id 2.2.2.2 //指定router-id
[AR2-bgp]peer 192.168.12.1 as-number 100 //和鄰居網絡創建鄰接關係
[AR2-bgp]peer 192.168.24.4 as-number 200 //和鄰居網絡創建鄰接關係
[AR2-bgp]peer 192.168.24.4 next-hop-local //要將BGP路由發送給192.168.24.4這個鄰居時,將路由的下一跳設置成本身的地址,這個地址是與192.168.24.4創建鄰居所使用的源地址
該提示信息說明BGP鄰居創建成功
[if !supportLists]3) [endif]R3:
[AR3]bgp 200
[AR3-bgp]router-id 3.3.3.3
[AR3-bgp]peer 192.168.13.1 as-number 100
[AR3-bgp]peer 192.168.34.4 as-number 200
[AR3-bgp]peer 192.168.34.4 next-hop-local
4)R4:
[AR4]bgp 200
[AR4-bgp]router-id 4.4.4.4
[AR4-bgp]peer 192.168.24.2 as-number 200
[AR4-bgp]peer 192.168.34.3 as-number 200
[AR4-bgp]network 192.168.4.4 32
加入交流羣696283186獲取更多實驗詳細配置
配置EBGP後,咱們發現由BGP控制選路後,從AR4到AR1的報文走的是AR2這條路徑
1)查看不一樣AS之間的連通性:
經過Ping命令結果,咱們發如今配置EBGP後,相同AS與不一樣AS之間均可以互相通訊
2)在AR1查看路由表:
在路由表能夠發現,EBGP目標地址是192.168.4.4,下一跳是192.168.12.2,說明192.168.1.1與192.168.4.4之間的通訊是通過的路由器AR2。
3)查看抓包信息:
在AR1與AR2相連的接口開啓抓包,能夠抓到AR4與AR1通訊的TCMP報文,同時咱們發現BGP的傳輸協議是TCP,端口號爲179
在AR1與AR3相連的接口上開啓抓包,發現,在這裏沒有AR4與AR1通訊的信息,說明,經過BGP選路以後,AR4要到AR1的數據會經過AR2發送。
至此,BGP實驗完成,咱們在實驗中講到,BGP自動完成了選路,那麼要怎麼手動控制選路呢?加入交流羣696283186獲取更多實驗詳細配置
總結:BGP具備如下幾個特性:
1) 傳輸協議:TCP,端口號179;
2) BGP是外部路由協議,用來在AS之間傳遞路由信息;
3) 是一種加強的路徑矢量路由協議;
4) 擁有可靠的路由更新機制;
5) 具有豐富的Metric度量方法;
6) 無環路協議設計;
7) 爲路由條目附帶多種屬性信息;
8) 支持CIDR(無類別域間選路);
9) 豐富的路由過濾和路由策略;
10) 無須週期性更新;
11) 路由更新時只發送增量路由;
12) 週期性發送KeepAlive報文,以保持TCP連通性;