BGP水平分割

一、BGP水平分割的作用及特点:

‌BGP水平分割的核心作用是防止路由环路,保障网络稳定,特点是分层防环、兼顾可靠性同时存在扩展限制‌,具体整理如下:

(一)、核心作用

  1. ‌最核心作用:防止路由环路‌:避免路由信息在不同自治系统(AS)之间、AS内部反复循环传递,导致路由计算错误、网络瘫痪。
  2. ‌减少资源浪费‌:阻断无效循环的路由更新,降低路由器CPU、带宽资源的无效消耗。
  3. ‌维持路由拓扑稳定‌:保证互联网庞大的路由体系始终保持无环状态,让数据包可以正常转发不迷路。

(二)、主要特点

  1. ‌分层设计,分场景防环‌:分为EBGP(跨AS)和IBGP(同AS内部)两种水平分割,分别解决不同场景下的环路问题:
  2. EBGP水平分割靠路由自带的AS_PATH路径标签防环,逻辑简单可靠
  3. IBGP水平分割因为同AS内无法靠标签防环,直接采用"从内部学的路由不再传给其他内部邻居"的规则,从传播层面阻断环路
  4. ‌规则简单可靠‌:实现逻辑清晰,防环有效性经过大规模互联网验证,是BGP默认开启的基础机制。
  5. ‌存在扩展性局限‌:IBGP水平分割会带来"路由无法完整传递"的问题,想要在大型AS内部署BGP,必须配合路由反射器或者BGP联邦才能使用。
  6. ‌兼容性强‌:和BGP其他机制(如路由聚合、选路规则)可以兼容工作,不会干扰其他功能的运行。

二、实验拓扑:

三、实验命令:

R1:

<Huawei>sys

Huaweiundo in en

Huaweisys R1

R1interface g0/0/0

R1-GigabitEthernet0/0/0ip add 12.1.1.1 24

R1-GigabitEthernet0/0/0quit

R1interface loopback 0

R1-LoopBack0ip address 1.1.1.1 32

R1-LoopBack0quit

R1ospf router-id 1.1.1.1

R1-ospf-1area 0

R1-ospf-1-area-0.0.0.0network 12.1.1.0 0.0.0.255

R1-ospf-1-area-0.0.0.0network 1.1.1.1 0.0.0.0

R1-ospf-1-area-0.0.0.0quit

R1-ospf-1q

R1bgp 123

R1-bgpundo summary automatic

R1-bgpundo synchronization

R1-bgprouter-id 1.1.1.1

R1-bgppeer 2.2.2.2 as-number 123

R1-bgppeer 2.2.2.2 connect-interface loopback

R1-bgpquit

R2:

<Huawei>sys

Huaweiun in en

Huaweisys R2

R2interface g0/0/1

R2-GigabitEthernet0/0/1ip add 12.1.1.2 24

R2-GigabitEthernet0/0/1quit

R2interface g0/0/0

R2-GigabitEthernet0/0/0ip add 23.1.1.2 24

R2-GigabitEthernet0/0/0quit

R2interface loopback 0

R2-LoopBack0ip address 2.2.2.2 32

R2-LoopBack0quit

R2ospf router-id 2.2.2.2

R2-ospf-1area 0

R2-ospf-1-area-0.0.0.0network 12.1.1.0 0.0.0.255

R2-ospf-1-area-0.0.0.0network 23.1.1.0 0.0.0.255

R2-ospf-1-area-0.0.0.0network 2.2.2.2 0.0.0.0

R2-ospf-1-area-0.0.0.0quit

R2-ospf-1q

R2bgp 123

R2-bgpundo synchronization

R2-bgpundo summary automatic

R2-bgppeer 1.1.1.1 as-number 123

R2-bgppeer 1.1.1.1 connect-interface loopback 0

R2-bgppeer 3.3.3.3 as-number 123

R2-bgppeer 3.3.3.3 connect-interface loopback 0

R2-bgpquit

R3:

<Huawei>sys

Huaweiundo info-center enable

Huaweisys R3

R3interface g0/0/1

R3-GigabitEthernet0/0/1ip add 23.1.1.3 24

R3-GigabitEthernet0/0/1quit

R3interface loopback 0

R3-LoopBack0ip add 3.3.3.3 32

R3-LoopBack0quit

R3ospf router-id 3.3.3.3

R3-ospf-1area 0

R3-ospf-1-area-0.0.0.0network 23.1.1.0 0.0.0.255

R3-ospf-1-area-0.0.0.0network 3.3.3.3 0.0.0.0

R3-ospf-1-area-0.0.0.0quit

R3-ospf-1q

R3bgp 123

R3-bgpundo synchronization

R3-bgpundo summary automatic

R3-bgprouter-id 3.3.3.3

R3-bgppeer 2.2.2.2 as-number 123

R3-bgppeer 2.2.2.2 connect-interface loopback 0

R3-bgpquit

四、实验测试:

在R2上查看BGP的对等体关系,可以看到R2已经和R1,R3建立了联系

在R1上创建一个环回接口,IP地址为100.100.100.100并宣告

R1interface loopback 100

R1-LoopBack100ip address 100.100.100.100 32

R1-LoopBack100quit

R1bgp 123

R1-bgpnetwork 100.100.100.100 32

R1-bgpquit

然后分别在R1,R2和R3上查看BGP路由表,可以看到R1和R2上的BGP路由表都有刚宣告的环回接口,R3上没有

R3上的路由表为空,这是因为BGP水平分割导致的,水平分割是从一个IBGP邻居学到的路由,不会再通告给其他IBGP邻居‌(俗称"内内不相传"),以此避免AS内部形成路由环路

下面我们在R2上使用路由反射来解决BGP水平分割的问题

R2bgp 123

R2-bgppeer 1.1.1.1 reflect-client

R2-bgpquit

然后再在R3上查看BGP路由表,可以看到R3上的BGP路由表里已经获取到了宣告的环回接口

五、总结:

‌BGP水平分割简单说就是BGP里防止路由绕圈子出bug的规则,一句话讲就是"不让消息绕回出发地"‌,分两种情况:

  1. 不同大网络(AS自治系统)之间

就像你给隔壁公司发通知,对方又把写了你的公司名的通知发回来给你,你一看这本来就是我发的,直接扔了不收------这就是靠路由自带的"路过名单"防绕圈,就是EBGP水平分割。

  1. 同一个大网络内部

就像公司里,你从同事A那收到了消息,不能再把这个消息转给另一个同事B,避免传来传去绕出死循环------本来要求公司所有人都得直接拿到消息,得每个人都互相打招呼,人多了根本忙不过来,后面就有了路由反射器(专门的消息中转站)来解决这个问题,这就是IBGP水平分割。

路由反射就是‌选一个人当"消息中转站"‌:所有人只需要跟这个中转站传递消息,中转站再把收到的消息转发给所有人,其他人不用挨个开会了,这个中转站就是路由反射器,来中转站传话的人就是‌客户端‌。

相关推荐
Logintern0933 分钟前
网络通讯协议—TCP/IP协议
网络·网络协议·tcp/ip
熊IT3 小时前
什么是原生住宅 IP?如何判断一个 IP 是否真正“原生”?
服务器·网络·tcp/ip
爱学习的小白柏3 小时前
【AI问数技术】多Agent协同架构:查询规划/SQL生成/洞察分析/报告生成
java·网络·人工智能·windows·sql·架构·llama
格尔曼Noah6 小时前
iPhone共享网络给电脑的方式
网络·电脑·iphone
好评1247 小时前
【Linux】Socket编程TCP
linux·网络·tcp/ip
夜来小雨8 小时前
异常Wi-Fi信号问题处理
网络
Lost of 程序猿8 小时前
Kubernetes 排障实战:从 CrashLoopBackOff 到网络不通
网络·容器·kubernetes
三垣网安9 小时前
记一次渗透测试 | 教育src漏洞分享(2)
网络·安全·web安全·网络安全
mengge.cloud9 小时前
Linux三剑客 grep sed awk 小白基础教程
linux·运维·服务器·网络
xiaoxiangsiyan11 小时前
全网IPv6规模化改造实战指南
运维·网络·笔记·云原生·自动化