BGP路由黑洞
一、概念
1.什么是BGP路由黑洞
在 BGP 跨自治系统(AS)转发场景中,数据包依据 IGP 路由正常转发,但途经的中转路由器仅有 IGP 路由、无对应 BGP 路由,违反 BGP 转发规则被直接丢弃,造成流量 “消失” 的网络现象,属于典型路由故障。
2.BGP路由黑洞的原理
IBGP 邻居未全连接,BGP 路由仅在 AS 边缘路由器传递,AS 内部中转设备只有 IGP 路由、没有 BGP 路由;跨 AS 流量途经中转设备时,因无对应 BGP 路由被丢弃,产生 BGP 路由黑洞。
3.核心特征(判断依据)
- 路由表:设备存在目标网段 IGP 路由,路由可达;
- BGP 表:设备无目标网段 BGP 路由;
- 现象:流量能进入中转区域,但无法抵达目的,出现无故丢包。
4.使用场景
安全:拦截 DDoS、恶意 IP、攻击流量
隔离:跨 AS 网段逻辑隔离、内外网分离
运维:设备割接、网络测试、链路维护
运维优化:抑制无效路由、清理垃圾流量
运营:欠费 / 未授权用户断网管控
二、IP配置
1.拓扑图:

2.ip配置
- (1)设备命名与 IP 配置
R1
sysname R1
interface GigabitEthernet 0/0/0
ip address 12.1.1.1 255.255.255.0
interface LoopBack 0
ip address 1.1.1.1 255.255.255.255
R2
sysname R2
interface GigabitEthernet 0/0/1
ip address 12.1.1.2 255.255.255.0
interface GigabitEthernet 0/0/0
ip address 23.1.1.2 255.255.255.0
interface LoopBack 0
ip address 2.2.2.2 255.255.255.255
R3
sysname R3
interface GigabitEthernet 0/0/1
ip address 23.1.1.3 255.255.255.0
interface GigabitEthernet 0/0/0
ip address 34.1.1.3 255.255.255.0
interface LoopBack 0
ip address 3.3.3.3 255.255.255.255
R4
sysname R4
interface GigabitEthernet 0/0/1
ip address 34.1.1.4 255.255.255.0
interface GigabitEthernet 0/0/0
ip address 45.1.1.4 255.255.255.0
interface LoopBack 0
ip address 4.4.4.4 255.255.255.255
R5
sysname R5
interface GigabitEthernet 0/0/1
ip address 45.1.1.5 255.255.255.0
interface LoopBack 0
ip address 5.5.5.5 255.255.255.255
(2)配置 IGP(AS200 内 OSPF)
R2
ospf 1 router-id 2.2.2.2
area 0
network 23.1.1.0 0.0.0.255
network 2.2.2.2 0.0.0.0
R3
ospf 1 router-id 3.3.3.3
area 0
network 23.1.1.0 0.0.0.255
network 34.1.1.0 0.0.0.255
network 3.3.3.3 0.0.0.0
R4
ospf 1 router-id 4.4.4.4
area 0
network 34.1.1.0 0.0.0.255
network 4.4.4.4 0.0.0.0
(3) 配置 IBGP 邻居(R2 与 R4,环回口建立)
R2
bgp 200
router-id 2.2.2.2
peer 4.4.4.4 as-number 200
peer 4.4.4.4 connect-interface LoopBack 0
R4
bgp 200
router-id 4.4.4.4
peer 2.2.2.2 as-number 200
peer 2.2.2.2 connect-interface LoopBack 0
(4)配置 EBGP 邻居
R1
bgp 100
router-id 1.1.1.1
peer 12.1.1.2 as-number 200
R2
bgp 200
peer 12.1.1.1 as-number 100
R4
bgp 200
peer 45.1.1.5 as-number 300
R5
bgp 300
router-id 5.5.5.5
peer 45.1.1.4 as-number 200
(5)宣告路由
R1
bgp 100
network 1.1.1.1 255.255.255.255
R5
bgp 300
network 5.5.5.5 255.255.255.255
(6)配置下一跳为自身(解决 IBGP 下一跳问题)
R2
bgp 200
peer 4.4.4.4 next-hop-local
R4
bgp 200
peer 2.2.2.2 next-hop-local
三、实验调试
1.在R1上查看BGP的路由表

2.在R5上查看BGP的路由表

3.在R1上测试1.1.1.1是否可以访问5.5.5.5

通过上图可知无法访问,100%的丢包率,所以需要补充配置
R2配置
bgp 200
peer 3.3.3.3 as-number 200
peer 3.3.3.3 connect-interface LoopBack 0 # 用环回口建邻
R3配置
bgp 200
router-id 3.3.3.3
peer 2.2.2.2 as-number 200
peer 2.2.2.2 connect-interface LoopBack 0
peer 4.4.4.4 as-number 200
peer 4.4.4.4 connect-interface LoopBack 0
R4配置
bgp 200
peer 3.3.3.3 as-number 200
peer 3.3.3.3 connect-interface LoopBack 0
- 再次测试是否能访问
- 查看R2、R3、R4两两之间建立IBGP邻居关系(R2与R4之间已建立)



四、总结
想象一下,你的公司服务器(AS300 里的 AR5)对外提供服务,攻击者在骨干网(AS200)里伪造了一条到你服务器网段的路由,让所有访问你服务器的流量都跑到他控制的设备上。
- 如果他直接丢包:你的服务就断了,用户无法访问,这就是 DoS 攻击。
- 如果他不丢包,而是把流量转发到假的钓鱼服务器:用户输入的账号密码就被他偷走了,这就是中间人攻击。
而这一切,都始于他制造的那个 BGP 路由黑洞。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)