大小型網絡構建-BGP加實驗驗證
BGP
-定義
-概述
-原理
#建立鄰居表
#同步數據庫 :
network {精確的路由條目}
import-route {protocol}
BGP數據庫中每個條目的狀態,必須是:
, 表示的是“best -- 最好的”。
1.嘗試着放入自己的路由表;
2.發送給自己的 BGP 鄰居;
#計算路由表-報文
open :包含BGP建立鄰居時需要協商的參數
update:包含的是 BGP 路由條目
keep-alive : 用於週期性的發送,維護鄰居關係;
notification : 通知報文。用於通知報錯信息
BGP的結構和功能
#BGP用於在不同的自治系統(AS)之間交換路由信息。當兩個AS需要交換路由信息時,每個AS都必須指定 一個運行BGP的節點,來代表AS與其他的AS交換路由信息。這個節點可以是一個主機。但通常是路由器來執行BGP。兩個AS中利用BGP交換信息的路由器也被稱爲邊界網關(Border Gateway)或邊界路由器(Border Router)
#由於可能與不同的AS相連,在一個AS內部可能存在多個運行BGP的邊界路由器。同一個自治系統(AS)中的兩個或多個對等實體之間運行的BGP 被稱爲 IBGP(Internal/Interior BGP)。歸屬不同的AS的對等實體之間運行的BGP稱爲EBGP (External/Exterior BGP)。在AS邊界上與其他AS交換信息的路由器被稱作邊界路由器(border/edge router)。在互聯網操作系統(Cisco IOS)中,IBGP通告的路由的距離爲200,優先級比EBGP和任何內部網關協議(IGP)通告的路由都低。其他的路由器實現中,優先級順序也是EBGP高於IGP,而IGP又高於IBGP。
#BGP屬於外部網關路由協議,可以實現自治系統間無環路的域間路由。BGP是溝通Internet廣域網的主用路由協議,例如不同省份、不同國家之間的路由大多要依靠BGP協議。BGP可分爲IBGP(Internal BGP)和EBGP(External BGP)。BGP的鄰居關係(或稱通信對端/對等實體)是通過人工配置實現的,對等實體之間通過TCP(端口179)會話交互數據。BGP路由器會週期地發送19字節的保持存活keep-alive消息來維護連接(默認週期爲30秒)。在路由協議中,只有BGP使用TCP作爲傳輸層協議。
BGP peer :
IBGP 鄰居
EBGP 鄰居
#通過直連端口建立鄰居; -- 不太穩定;
#通過非直連接口建立鄰居;-- 非常穩定;
- “更新源檢測”機制 - IBGP 與 EBGP 都需要考慮
- “直連檢測機制” - 僅僅當建立非直連的EBGP
鄰居時,才需要考慮。
即 EBGP 鄰居建立時,兩個路由器之間必須使用
直連的物理接口的IP地址;
(1.ebgp鄰居之間的報文的 TTL 爲1;)
(2.直連檢測機制:去往對方的地址時)
( 必須使用“直連路由”。)
R1的配置
undo ter mo
system-v
sysname R1
interface loopback 0
ip address 10.10.1.1 255.255.255.255
q
interface gi0/0/0
ip address 192.168.12.1 255.255.255.0
q
R2的配置
undo ter mo
system-v
sysname R2
interface loopback 0
ip address 10.10.2.2 255.255.255.255
q
interface gi0/0/1
ip address 192.168.12.2 255.255.255.0
q
inter gi0/0/0
ip address 192.168.23.2 255.255.255.0
q
R3的配置
undo ter mo
system-v
sysname R3
interface loopback 0
ip address 10.10.3.3 255.255.255.255
q
interface gi0/0/1
ip address 192.168.23.3 255.255.255.0
q
inter gi0/0/0
ip address 192.168.34.3 255.255.255.0
q
R4的配置
undo ter mo
system-v
sysname R4
interface loopback 0
ip address 10.10.4.4 255.255.255.255
q
interface gi0/0/1
ip address 192.168.34.4 255.255.255.0
q
inter gi0/0/0
ip address 192.168.45.4 255.255.255.0
q
R5的配置
undo ter mo
system-v
sysname R5
interface loopback 0
ip address 50.50.50.50 255.255.255.255
q
interface gi0/0/1
ip address 192.168.45.5 255.255.255.0
q
~~~~~ AS 234 內部配置 ~~~~~
1.配置IGP=RIP ;
R2:
rip
version 2
network 192.168.23.0
network 10.0.0.0
q
R3:
rip
version 2
network 192.168.23.0
network 192.168.34.0
network 10.0.0.0
q
R4:
rip
version 2
network 192.168.34.0
network 10.0.0.0
q
2.BGP的配置: 非直連的IBGP鄰居關係 - R2<--->R4
R2:
bgp 234
router-id 2.2.2.2
peer 10.10.4.4 as-number 234
peer 10.10.4.4 connect-interface loopback 0
R4:
bgp 234
router-id 4.4.4.4
peer 10.10.2.2 as-number 234
peer 10.10.2.2 connect-interface loopback 0
~~~~~ AS 234 與 AS 500 ~~~~~
1.BGP的配置 : R4--R5 之間的“直連” EBGP
R4:
bgp 234
peer 192.168.45.5 as-number 500
R5:
bgp 500
router-id 5.5.5.5
peer 192.168.45.4 as-number 234
2.R5通過 Network的方式宣告路由
bgp 500
network 50.50.50.50 255.255.255.255
~~~~~ AS 234 與 AS 100 ~~~~~~~
1.創建loopback 12 ,用於建立 非直連的 EBGP 鄰居關係
R2:
interface loopback 12
ip address 10.12.12.2 255.255.255.255
quit
ip route-static 10.12.12.1 255.255.255.255 192.168.12.1
R1:
interface loopback 12
ip address 10.12.12.1 255.255.255.255
quit
ip route-static 10.12.12.2 255.255.255.255 192.168.12.2
2.創建 非直連的 EBGP 鄰居關係:
R1:
bgp 100
peer 10.12.12.2 as-number 234
peer 10.12.12.2 connect-interface loopback 12
peer 10.12.12.2 ebgp-max-hop 20
R2:
bgp 234
peer 10.12.12.1 as-number 100
peer 10.12.12.1 connect-interface loopback 12
peer 10.12.12.1 ebgp-max-hop 20
3.在 R1 上通過 import-route 的方式宣告路由
R1:
bgp 100
import-route direct ->宣告 10.10.1.1/32進入BGP;
~~~ AS 100 與 AS 500 之間的路由傳遞 ~~
在接下來的配置命令之前,應該首先去查看 :
display bgp routing-table ->查看BGP的數據庫
R2 上面的 BGP 數據庫中的 50.50.50.50/32的狀態,不優;
R4 上面的 BGP 數據庫中的 10.10.1.1/32 的狀態,不優;
原因:
-
對於 R2 的 BGP 數據庫中的 50.50.50.50/32 而言,
它的下一跳IP地址: 192.168.45.5 ,是路由不可達的; -
對於 R4 的 BGP 數據庫中的 10.10.1.1/ 32 而言,
它的下一跳IP地址: 10.12.12.1 ,是路由不可達的;解決辦法:
1.在 R4 做配置:
rip
import-route direct ->目的是爲了引入 192.168.45.0/242.在 R2 做配置:
rip
import-route static ->目的是爲了引入 10.12.12.1/32