華爲BGP動態路由協議理論+實驗

文章目錄

前言

一:BGP協議理論

1.1:概述

1.2:動態路由的分類

1.2.1:按自治系統分類

1.2.2:按協議類型分類

1.3:BGP的特色

1.4:BGP的工做原理

1.4.1:BGP報文

1.4.2:BGP數據庫

1.4.3:BGP的類型

二:BGP協議實驗

2.1:實驗環境

2.2:實驗目的

2.3:實驗拓撲圖

2.4:實驗過程

2.4.1:命令講解

2.4.2:實操

2.5:實驗驗證

2.6:實驗總結

一:BGP協議理論

1.1:概述

BGP是一種運行在AS與AS之間的動態路由協議,主要做用是在AS之間自動交換無環路由信息

以此來構建AS的拓撲圖,從而消除路由環路並實施用戶配置的路由策略。

目前公網網絡條目衆多,IGP協議沒法承載,而BGP能夠輕鬆應對,一般BGP協議用於ISP和ISP之間或跨域地域總、分公司之間的路由信息交換

自制系統編號

自治系統(AS)是由一個技術管理機構管理,使用統一選路策略的一組路由器集合

自治系統編號範圍:1-65535,其中1-64511是互聯網上註冊公有AS號,相似公網IP地址。

64512-65535是私有AS號,相似私網IP地址

www.inna.org,註冊網址(我的沒法註冊)

1.2:動態路由的分類

1.2.1:按自治系統分類

IGP

自治系統內部路由協議,主要:RIP1/RIP二、OSPF、ISIS、EIGRP(思科私有協議)

IGP是運行在AS內部的路由協議,主要解決AS內部的選路問題,發現、計算路由

EGP

自治系統之間的路由協議,一般:BGP

EGP是運行在AS與AS之間的路由協議,他解決AS之間選路問題。

1.2.2:按協議類型分類

距離矢量路由協議

rip1/二、BGP(路徑矢量協議)、EIGRP(高級距離矢量協議)

鏈路狀態路由協議

OSPF、ISIS:使用SPF最短路徑算法

1.3:BGP的特色

傳輸協議:TCP,端口號179

BGP是外部路由協議,用來在AS之間傳遞路由信息

是一種加強的路徑矢量路由協議

擁有可靠的路由更新機制

具有豐富的Metric度量方法

無環路協議設計

爲路由條目附帶多種屬性信息

支持CIDR(無類別域間選路)

豐富的路由過濾和路由策略

無需週期性更新

路由更新時只發送增量路由

週期性發送KeepAlive報文以保持 TCP連通性

1.4:BGP的工做原理

1.4.1:BGP報文

Open報文

OPen報文是TCP創建後發送的第一個報文,用於創建BGP對等體之間的鏈接關係,主要包含BGP版本號、本地AS編號、Holdtime等信息

UPdate報文

Update報文用來在BGP之間更新路由信息,Updata報文能夠通告多條屬性相同的可達路由信息,也能夠撤銷多條路由不可達的路由信息

Notification報文

報文的做用是當BGP檢測到錯誤狀態時候,當即向對等體發送NOtification報文,以後BGP就會中斷只要收到Notification報文就會返回idle狀態

Route-Refresh報文

用來告知對等體所支持路由的刷新能力,BGP的入口策略路由發生變化,本地的BGP路由會向對等體發送Route-Refresh報文,收到信息後,對等體將其路由信息從新發送給本地BGP路由器

KeepAlive報文

該報文在對等體之間週期的發送報文,用以保持鏈接的有效性並維護其鏈接,KeepAlive報文只有一個BGP報文頭,默認KeepAlive報文發送週期爲60S,保持時間180S,這個相似於OSPF中的Hello報文

1.4.2:BGP數據庫

IP路由表:全局路由信息庫,包括最優的IP路由信息

BGP路由表:BGP路由信息庫,包括本地BGPSpeak通告的路由信息,將其最優的添加到路由表中

鄰居表:對等體鄰居清單表,包括對等體兩端的鄰居信息及鄰居列表

Adi-RIB-In:對等體宣告給本地的Speak的未處理的路由信息庫

Adjust-RIB-OUT:本地Speak宣告給指定的對等體路由信息庫

1.4.3:BGP的類型

兩種鄰居:IBGP和EBGP

IBGP:同一個AS內部BGP鄰居關係,IBGP鄰居是指運行BGP協議的對等體兩端在同一個AS域內,屬於BGP AS內部

EBGP:AS之間的BGP鄰居關係,EBGP一般指運行BGP協議的對等體兩端在不一樣AS內部

二:BGP協議實驗

2.1:實驗環境

eNSP軟件

4臺路由器(R1,R2,R3,R5)

R1,R2,R4處於OSPF的area 0,也處於AS100中

R3處於AS200中

2.2:實驗目的

經過配置,實現全網互通

2.3:實驗拓撲圖

華爲BGP動態路由協議理論+實驗

2.4:實驗過程

2.4.1:命令講解

BGP配置思路

一、啓用BGP,後面跟AS系統號

二、宣告Route-id,創建鄰居關係用,因爲此中含有OSPF協議,因此router-id能夠在啓動BGP前宣告,減小一個操做步驟

三、宣告和誰創建鄰居關係

四、通告BGP路由,(network、import)

命令展現

'//創建鄰居關係'
[R1]router-id 1.1.1.1   '//宣告router-id'
[R1]bgp 100 '//啓動bgp'
[R1-bgp]peer 7.7.7.7 as-number 100  '//創建鄰居關係第一步,宣告要創建的as區域'
[R1-bgp]peer 7.7.7.7 connect-interface loo 0    '//創建鄰居關係第二步,使用loo 0地址創建 鄰居關係'
[R1-bgp]network 1.1.1.1 32  '//宣告網段'
'//查看命令'
[R1] display bgp peer       '//查看BGP鄰居'
[R1] display routing-table      '//查看BGP路由表'
[R1-bgp] import-route ospf 1    '//注入ospf/ISIS中的路由'
'//只有創建鄰居關係,注入的路由信息才能被鄰居學習到'

2.4.2:實操

配置的命令我直接給出結果了,具體的你們應該都會,若是有疑問能夠私聊我或者評論交流

R1配置

sysname R1      //修更名稱

router id 1.1.1.1       //宣告router id

int g0/0/0      //配置接口地址
ip add 12.0.0.1 30

int g0/0/1      //配置接口地址 
ip address 15.0.0.1 30

int loo 0           //配置接口地址
ip add 1.1.1.1 32

bgp 100         //啓動bgp,100爲進程號

peer 2.2.2.2 as-number 100      //和router id 爲2.2.2.2且as區域爲100的路由創建鄰居關係的第一步,指定對方
peer 2.2.2.2 connect-interface LoopBack0    //和router id 爲2.2.2.2的路由創建鄰居關係的第二步,用loo 0接口鏈接對方 
peer 4.4.4.4 as-number 100  //和router id 爲4.4.4.4且as區域爲100的路由創建鄰居關係的第一步,指定對方
peer 4.4.4.4 connect-interface LoopBack0    //和router id 爲4.4.4.的路由創建鄰居關係的第二步,用loo 0接口鏈接對方 

network 1.1.1.1 255.255.255.255 //宣告網段

ospf 1              //啓動ospf進程爲1
area 0.0.0.0            //宣告ospf區域 
network 1.1.1.1 0.0.0.0     //如下都爲宣告網段 
network 12.0.0.0 0.0.0.3

network 15.0.0.0 0.0.0.3

R2配置

sysname R2

router id 2.2.2.2

int g0/0/0
ip add 12.0.0.2 30

int g0/0/1
ip add 23.0.0.1 30

int loo 0
ip add 2.2.2.2 32

bgp 100
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 4.4.4.4 as-number 100
peer 4.4.4.4 connect-interface LoopBack0
peer 23.0.0.2 as-number 200     //直接使用23.0.0.2的物理地址和bgp200區域的路由器創建鏈接,不可使用虛擬接口地址

network 2.2.2.2 255.255.255.255
import-route ospf 1     //注入ospf 1 的路由條目,不然R3學習不到bgp100中的其餘路由條目,除了R2在BGP中宣告的2.2.2.2,其餘的都會學習不到,因此須要注入ospf 1 的路由條目'

ospf 1       
area 0.0.0.0    
network 2.2.2.2 0.0.0.0 
network 12.0.0.0 0.0.0.3

network 23.0.0.0 0.0.0.3

R3配置

sysname R3

router id 3.3.3.3

int g0/0/1
ip add 23.0.0.2 30

int loo 0
ip add 3.3.3.3 32

bgp 200
peer 23.0.0.1 as-number 100         //使用物理地址23.0.0.1和bgp100的路由器創建鄰居關係

network 3.3.3.3 255.255.255.255

R4配置

sysname R5

router id 4.4.4.4

int g0/0/1
ip add 15.0.0.2 30

int loo 0
ip add 4.4.4.4 32

int loo 1
ip add 202.0.0.1 24

int loo 2
ip add 202.0.1.1 24

bgp 100
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0

network 4.4.4.4 255.255.255.255

ospf 1
area 0
network 4.4.4.4 0.0.0.0
network 15.0.0.0 0.0.0.3
network 202.0.0.0 0.0.0.255
network 202.0.1.0 0.0.0.255

此時咱們使用dis ip routing-table便可發現已經相互學習到了全部的路由條目

2.5:實驗驗證

成功全網互通,用相同方法測試其餘幾臺路由器便可

華爲BGP動態路由協議理論+實驗

華爲BGP動態路由協議理論+實驗

2.6:實驗總結

跨自治域創建鄰居關係須要使用物理地址,不然學習不到對方的路由條目

跨自治域創建鄰居關係的兩個路由器,想要學習對方區域的全部路由條目,須要對方將ospf或者IS-IS的路由條目注入進來

跨自治域創建鄰居關係若是要使用虛擬迴環地址,須要添加靜態路由,並指向下一條爲兩跳

'//靜態路由的添加不在贅述'
##R2##
[R2] router id 2.2.2.2
[R2] bgp 100
[R2-bgp] peer 3.3.3.3 as-number 200
[R2-bgp] peer 3.3.3.3 connect-interface LoopBack 0
[R2-bgp] peer 3.3.3.3 ebgp-max-hop 2

##R3##
[R3] router id 3.3.3.3
[R3] bgp 200
[R3-bgp] peer 2.2.2.2 as-number 100
[R3-bgp] peer 2.2.2.2 connect-interface LoopBack 0
[R3-bgp] peer 2.2.2.2 ebgp-max-hop 2
相關文章
相關標籤/搜索