当前位置:网站首页>BGP 鄰居
BGP 鄰居
2022-04-21 07:37:00 【费】
路由協議通常分為內部網關協議(IGP:Interior Gateway Protocol)和外部網關協議(EGP:Exterior Gateway Protocol)兩大類。一般來講,IGP用於自治系統AS(Autonomous System)內部,EGP用於AS之間。當前使用版本是BGP-4(RFC4271)。BGP-4作為事實上的互聯網外部路由協議標准,已被廣泛應用於ISP(Internet Service Provider)之間。
BGP是一種動態路由協議,但它實際上不產生路由、不發現路由、不計算路由,其主要功能是完成最佳路由的選擇並在BGP鄰居之間進行最佳路由的傳遞。BGP選擇了TCP作為傳輸協議,端口號為179
BGP支持無類域間路由CIDR(Classless Inter-Domain Routing),並且采用了觸發增量更新方式,這大大减少了BGP在傳播路由信息時所占用的帶寬,特別適用於在互聯網上傳播大量的路由信息
BGP提供了豐富的路由屬性(Attribute),通過對這些屬性的操作和控制,BGP能够非常容易的實現豐富而靈活的路由策略。BGP還具有良好的擴展性,支持 Multicast、VPN、IPv6 等多種特性。
BGP鄰居關系分為IBGP(Internal BGP)和 EBGP(External BGP)兩種:當兩臺路由器比特於同一AS時(AS編號相同),它們的鄰居關系為IBGP 鄰居關系;當兩臺BGP路由器比特於不同的AS時(AS編號不同),它們的鄰居關系為EBGP鄰居關系。BGP沒有自動建立鄰居關系的能力,鄰居關系必須通過手動配置來建立。
R1與R2屬於同一個運營商網絡 ,AS編號為100,R1與R2之間的鄰居關系為IBGP鄰居關系。R3屬於另一個運營商網絡,AS編號為200,R3與R2之間的鄰居關系為EBGP鄰居關系。路由器分別采用物理接口和Loopback接口來進行IBGP和EBGP鄰居關系的建立

配置IBGP鄰居。
在R1、R2上使用直連物理接口來配置IBGP鄰居關系。為了實現鏈路冗餘,R1與R2之間部署了兩條鏈路,當其中一條鏈路出現故障,另一條物理鏈路可以提供連通性。
接口配置不贅述。


在R2上使用 display bgp peer 命令查看BGP鄰居關系

可以看,R2現在有兩個BGP鄰居分別使用了R1的GE0/0/0和GE0/0/1接口地址來錶示,AS編號為100,與R2自己的AS編號相同,因此R2與R1為IBGP鄰居,當前鄰居狀態為 Established,錶示鄰居關系已經完全建立。
在R1上將Loopback 0接口地址通告到BGP進程中。
[R1]bgp 100
[R1-bgp]network 10.0.1.1 32
查看R2的BGP路由錶。

可以看到R2的BGP路由錶中包含了兩條去往10.0.1.1/32的路由,下一跳分別為10.0.12.1,10.0.21.1,這是因為R1與R2之間建立了兩個IBGP鄰居關系,BGP路由實現了冗餘。
BGP是運行在TCP之上的,如果能讓R1的 Loopback 0 接口與R2的 Loopback 0 接口建立起TCP會話,並使用 Loopback 0 接口的IP地址來建立BGP鄰居關系,則可以讓R1和R2只維護一個BGP鄰居關系即可。當R1與R2之間的一條鏈路出現故障時,TCP可以通告另外一條物理鏈路繼續維持會話關系,這種方法在網絡的穩定性方面和網絡資源的節省上比直接使用物理接口來建立BGP鄰居關系更具優勢。
為了能使R1的 Loopback 0 接口與R2的 Loopback 0 接口建立起TCP會話,需要在R1和R2上配置能到達對方 Loopback 0 接口的靜態路由。
[R1]ip route-static 10.0.2.2 32 10.0.12.2
[R1]ip route-static 10.0.2.2 32 10.0.21.2
[R2]ip route-static 10.0.1.1 32 10.0.12.1
[R2]ip route-static 10.0.1.1 32 10.0.21.1
删除之前采用物理接口配置 IBGP 鄰居的命令,並使用 Loopback 0 接口重新建立 IBGP 鄰居關系。
[R1]bgp 100
[R1-bgp]undo peer 10.0.12.2
[R1-bgp]undo peer 10.0.21.2
[R1-bgp]peer 10.0.2.2 as-number 100
[R2]bgp 100
[R2-bgp]undo peer 10.0.12.1
[R2-bgp]undo peer 10.0.21.1
[R2-bgp]peer 10.0.1.1 as-number 100
查看R1的BGP鄰居關系。

可以看到R1與R2的鄰居關系停留在 Active 狀態,而非 Established,這說明R1與R2尚未正常建立起IBGP鄰居關系。
在配置BGP鄰居時所使用的IP地址,應該互為BGP報文的源IP地址和目的IP地址。默認情况下,BGP會使用去往鄰居路由器的出接口的IP地址作為BGP報文的源地址。在上面的配置中,R2向R1發送BGP報文的源IP地址和R1上指定的鄰居地址10.0.2.2不一致,從而導致了R1無法和R2正常建立BGP鄰居關系。解决此問題的方法是通過命令來强制指定路由器發送BGP報文時所使用的源IP地址。
在R1上使用命令 peer 10.0.2.2 connect-interface Loopback 0,指定R1使用自己的 Loopback 0 接口地址作為發送BGP報文時的源IP地址;R2上也需要使用類似的命令。
[R1]bgp 100
[R1-bgp]peer 10.0.2.2 connect-int loopback 0
[R2]bgp 100
[R2-bgp]peer 10.0.1.1 connect-int loopback 0
查看R2的BGP鄰居。

可以看到R2現在只與10.0.1.1有一個IBGP鄰居關系,狀態為 Established。
查看R2的BGP路由錶。

可以看到R2的BGP路由錶中只有一條去往10.0.1.1/32的路由,下一跳為10.0.1.1。
再看R2的IP路由錶。

可以看到R2去往10.0.1.1的路由有兩條,下一跳分別為10.0.12.1和10.0.21.1,因此當10.0.12.0/24這條鏈路不可用時,R1和R2之間的鄰居關系不會收到影響,相應的BGP路由也不會收到影響。
總之,使用 Loopback 接口建立BGP鄰居關系與使用物理接口來建立鄰居關系相比較,前者具有更好的穩定性,且能够减少設備資源的開銷。
配置EBGP鄰居
使用物理接口來建立R和1R2的BGP鄰居關系時,配置相對簡單,並且能够實現鄰居關系的冗餘。但是,這樣的配置也會產生兩個TCP會話和兩個BGP鄰居關系,當有路由需要彼此通告時,會通告這兩個鄰居關系分別進行通告,因此比較消耗設備資源,並且鏈路不穩定也會導致BGP鄰居關系的不穩定。
接下來在R2和R3上使用 Loopback 0 接口來建立EBGP鄰居關系。
[R2]bgp 100
[R2-bgp]peer 10.0.3.3 as-number 200
[R3]bgp 200
[R3-bgp]router-id 10.0.3.3
[R3-bgp]peer 10.0.2.2 as-number 100
查看R3的BGP鄰居關系。

可以看到R2與R3的鄰居狀態一直停留在 Idle 狀態,說明鄰居關系未能正常建立。BGP鄰居關系建立的前提條件是要能够建立起TCP會話,而目前R2和R3上都不存在去往對方的 Loopback 0 接口的路由,因此無法建立TCP會話。為了解决這個問題,可以在R2和R3上配置到達對方的 Loopback 0 接口的靜態路由。
[R2]ip route-static 10.0.3.3 32 10.0.23.3
[R2]ip route-static 10.0.3.3 32 10.0.32.3
[R3]ip route-static 10.0.2.2 32 10.0.23.2
[R3]ip route-static 10.0.2.2 32 10.0.32.2
查看R3上的BGP鄰居關系。

可以看到R2與R3之間的鄰居關系一直停留在 Active 狀態,說明鄰居關系還是未能正常建立起來。 前面說過解决此問題的方法通過命令來强制指定路由器發送BGP報文時所使用的源IP地址。
[R2-bgp]peer 10.0.3.3 connect-int loopback 0
[R3-bgp]peer 10.0.2.2 connect-int loopback 0
查看R3的BGP鄰居關系。

可以看到R3的鄰居狀態是Idle,說明R2與R3之間的EBGP鄰居關系仍然未能正常建立。
在默認情况下,EBGP鄰居之間在發送BGP報文時,TTL值為1,所以EBGP默認要求鄰居之間必須物理直連。但是,當R2和R3使用 Loopback 0 接口建立鄰居關系時,由於使用的不是物理直連的接口,所以TTL值會被多减一次,成為0,最終使得BGP報文會被丟弃,從而導致鄰居關系無法建立。為解决這一問題,可以修改EBGP鄰居發送BGP報文的TTL值,使報文的TTL值大於1。
在R2和R3上使用命令 peer ebgp-max-hop 2,配置BGP報文的TTL值為2。
[R2]bgp 100
[R2-bgp]peer 10.0.3.3 ebgp-max-hop 2
[R3]bgp 200
[R3-bgp]peer 10.0.2.2 ebgp-max-hop 2
在R3上查看BGP鄰居關系。

可以看到R2與R3已經建立起了EBGP鄰居關系。
注意:在實際場景中,通常使用 Loopback 接口來建立IBGP鄰居關系,使用物理接口建立EBGP鄰居關系。
版权声明
本文为[费]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204210625303691.html
边栏推荐
- 字体图标网站---常用汇总
- Clock IC, ins5101a, I2C low-power RTC real-time clock chip, replace hym8563, replace (NXP) PCF8563, tcs8563, I2C low-power RTC real-time clock chip
- 国产首发USBhub大全,USB HUB2.0,HUB3.0,旺玖PROLIFIC、PL2586、MA8601,和芯润德SL2.2A、SL2.2S,替换汤铭的FE1.1、FE1.1S、、威锋VL810
- 神经网络——基础思想
- How to use keil5 to develop MSP430 and TIVA series development boards
- Ms12 020 vulnérabilité
- CTF-RSA解密脚本
- thymleaf引擎中 checkbox的使用
- Detailed explanation of the whole evolution process and architecture design of large websites
- Blind guess account password
猜你喜欢

nodered连接数据库

国产首发USBhub大全,USB HUB2.0,HUB3.0,旺玖PROLIFIC、PL2586、MA8601,和芯润德SL2.2A、SL2.2S,替换汤铭的FE1.1、FE1.1S、、威锋VL810

Activity 的四种启动模式

【无标题】国腾GM系列,GM8284DD(GM8284DR,LT8218A)、 GM8285C、GM7123C,LVDSTTL转TTL,TTL转成单路LVDS,TTL数字信号转换成VGA

机器学习——欠拟合、过拟合与正则化

Build a deep learning server and environment configuration from scratch

致翔OA漏洞复现手册

类和对象的相关知识

RTSP未授权访问

Guanghuaxin audio codec Daquan cjc4344, cjc8988, cjc5340, cjc6811 guanghuaxin audio codec, cjc4344, cjc8988, cs5340
随机推荐
Core source: ry3408 and ry3410. Main replacement: silijie sy8088 and sy8089, tlv62568 and tlv62565 of Ti, mp2161, mp2128 and mp2105 of core source
Word XML space character
点击某个标签 跳到指定 ID 内容DIV块
Detailed explanation of the whole evolution process and architecture design of large websites
MS12_020漏洞
Echars control legend all or none - simple case
word xml 空格符
时钟IC,INS5101A,I2C低功耗 RTC 实时时钟芯片,替换HYM8563,替换(NXP)PCF8563,TCS8563,I2C低功耗 RTC 实时时钟芯片
OSS upload
jfinal框架easyexcel插件导出带图片
[intensive reading] deep surface normal estimation with hierarchical rgb-d fusion
蓝桥杯——十六进制转八进制
Mask + RGB for background subtraction
Guanghuaxin audio codec Daquan cjc4344, cjc8988, cjc5340, cjc6811 guanghuaxin audio codec, cjc4344, cjc8988, cs5340
蓝桥杯——回文数与特殊回文数
ConvergenceWarning: Liblinear failed to converge, increase the number of iterations解决办法
JS不同时间格式转换
Hardware codec acceleration CSI interface camera on TX2
华润微功放CS3850EO,2×40W D 类音频功率放大电路,替换:智浦芯CS8673,TI的TAS5780、TAS5754,国产功放
Nmap扫描和Scapy项目