BGP知识点解析

BGP中的Next_Hop

1. 核心思想(记住这一句就够了)

IBGP 默认不改下一跳,是为了让内部路由器知道"真正的出口在哪"。
但前提是:内部路由器得能"找到"那个出口地址。
找不到怎么办?用 next-hop-local 把下一跳改成"自己人"。

2. 用一个图讲清楚

复制代码
        AS100                    AS200                    AS300
      ┌──────┐               ┌───────────┐               ┌──────┐
      │  R4  │────EBGP───────│    R1     │────IBGP───────│  R3  │────EBGP───────│  R5  │
      └──────┘   10.1.14.4   └─────┬─────┘   1.1.1.1     └──────┘               └──────┘
                                    │
                                  ┌─┴─┐
                                  │R2 │  (OSPF 内部)
                                  └───┘

问题出在哪

步骤 发生什么 下一跳是谁
1 R4 告诉 R1 路由 4.4.4.0/24 10.1.14.4 (R4 的接口)
2 R1 传给 R3 (IBGP) 默认不改,还是 10.1.14.4
3 R3 查路由表找 10.1.14.4 找不到! (因为这是外部地址,OSPF 里没有)
4 结果 路由无效,流量丢弃 ❌

怎么修?

R1 上配一句:peer R3 next-hop-local

步骤 发生什么 下一跳是谁
1 R4 告诉 R1 路由 4.4.4.0/24 10.1.14.4
2 R1 传给 R3 (IBGP) 改成 R1 自己 1.1.1.1
3 R3 查路由表找 1.1.1.1 找到了! (OSPF 里有 R1 的地址)
4 结果 路由有效,流量正常 ✅

3. 为什么默认不改?(一句话)

因为有时候"不改"更好 ------如果内部路由器能直接找到原始出口,就可以选最近的路出去,不用绕路。

但现网中,为了简单稳定,我们通常直接配 next-hop-local,保证路由一定能用。

4. 常见误区(只记这 3 个)

误区 正确理解
"IBGP 像 OSPF 一样会自动改下一跳" ❌ IBGP 默认不改,必须手动配 next-hop-local
"配在 R3 上" ❌ 配在 R1 上(发布路由的人)
"只要配了就一定能通" ❌ 还要保证 R3 到 R1 的 IGP 是通的

BGP 的 Next_Hop 属性逻辑

GP 的 Next_Hop 属性逻辑非常清晰,它本质上就是为了解决一个问题:"数据包到了我这,下一步该给谁?"

我们可以把这三种情况归纳为**"换个新地标"** 和**"保持旧地标"**两种逻辑。

核心逻辑图解

你可以把 BGP 路由器想象成**"转信站"** ,Next_Hop 就是信封上写的**"下一个投递点"**。

场景 动作 下一跳变成什么? 简单记忆
发给 EBGP 修改 自己的接口 IP 跨越边界,我是出口
本地始发 -> IBGP 修改 自己的接口 IP 我是源头,找我
EBGP 学到 -> IBGP 不修改 (默认) 保持外部 IP 不变 保持原样,直达出口

这样理解是不是清晰多了?核心就在于:默认情况下,BGP 希望内部路由器知道真正的出口在哪里,除非出口不可达(需要 next-hop-local 修正)。


黑洞产生的原因 以及两种解决方法的原理

1. 实验拓扑与配置回顾


2. 路由传递过程(以 10.10.4.4 → 10.10.5.5 方向为例)


3. 为什么 R2 会产生路由黑洞?


相关推荐
数据知道3 小时前
漏洞挖掘方法论:从 Fuzz 到 0day 的思维框架
网络·安全·web安全·网络安全
huashengzsj5 小时前
企业OV泛域名证书价格多少?2026年市场报价与选购指南
网络协议·http·https
qq_401700415 小时前
TCP 粘包问题深度解析:嵌入式网络开发的常见坑与解决方案
服务器·网络·qt·网络协议·tcp/ip
IT小白杨5 小时前
2026游戏工作室环境隔离指南:从设备指纹到移动IP的部署实践
前端·经验分享·网络协议·tcp/ip·游戏·安全架构·指纹浏览器
2401_868534785 小时前
运维工程师大厂 Nginx 面试题(二)
linux·网络协议
XUEYUAN52127 小时前
代理日志分析与监控:代理池健康状态巡检与分级告警体系搭建(运维实战)
运维·网络·网络协议·tcp/ip·算法·架构
酒神dnspup7 小时前
服务器端口检测怎么做?用 DNSPup 核对开放端口、监听服务与暴露风险
网络·网络协议·http·ssl证书·http状态码·服务器端口
酒神dnspup8 小时前
HTTP状态码检测怎么做?用 DNSPup 排查 4xx、5xx、重定向与网站可用性
网络·网络协议·http·http状态码
数据知道8 小时前
白盒审计入门:Source Code Review 检查清单
网络·安全·网络安全·代码复审
见山是山-见水是水8 小时前
网络请求性能优化落地指南:让原生界面在模拟器里稳定运行
网络协议·华为·性能优化·harmonyos