第一章:BGP基础回顾
1.1 BGP协议概述
BGP,全称是边界网关协议。说白了,它就是互联网的「交通警察」。
你想想看,全球有几十万个自治系统(AS),每个AS都有自己的内部网络。这些AS之间怎么交换路由信息?靠的就是BGP。我经常跟团队里的新人说:BGP不是用来做路由的,而是用来做策略的。这句话你品,你细品。
BGP目前有两个版本在运行:
- BGP-4:支持CIDR(无类域间路由),是目前的主流
- BGP-4+:扩展支持IPv6,也叫MP-BGP
我记得刚入行那会儿,带我的老工程师跟我说:「BGP学好了,网络这碗饭你就端稳了。」当时我不信,后来踩了无数坑才明白——BGP确实是互联网的基石。
核心要点:BGP是路径矢量协议,不是链路状态协议。它不关心链路带宽、延迟,只关心「怎么走」和「让不让走」。
1.2 AS与IGP/EGP概念
先搞清楚几个基本概念。
AS(自治系统):一组由同一管理机构运行的网络集合。每个AS有一个唯一的16位或32位编号。
举个例子:中国电信的AS编号是AS4134,中国联通是AS4837。这些编号就像身份证号,全球唯一。
IGP(内部网关协议):运行在AS内部的路由协议。常见的有:
- OSPF(开放式最短路径优先)
- IS-IS(中间系统到中间系统)
- RIP(路由信息协议,现在基本淘汰了)
EGP(外部网关协议):运行在AS之间的路由协议。BGP就是EGP的唯一代表。
我习惯把IGP比作「小区内部的路」,EGP比作「城市之间的高速路」。你在小区里怎么走都行,但上了高速就得遵守统一的规则。
个人经验:我在项目中遇到过不少次IGP和BGP配合不当导致的问题。记住一条铁律:IGP负责AS内部可达性,BGP负责AS间策略控制。别让BGP去干IGP的活,也别让IGP去干BGP的活。
1.3 BGP路径属性与选路原则
BGP之所以强大,核心在于它的路径属性。每个BGP路由都携带一堆属性,路由器根据这些属性做决策。
先看一张图,帮你理清BGP选路的整体逻辑:
嗯,这张图展示了BGP选路的前5步。实际上BGP有13条选路规则,但日常工作中最常用的就是前几条。
我来详细说说这些关键属性:
| 属性名称 | 类型 | 作用范围 | 选路优先级 |
|---|---|---|---|
| Weight | Cisco私有 | 本地路由器 | 第1优先 |
| Local Preference | 公认自决 | 整个AS | 第2优先 |
| AS_PATH | 公认必遵 | 全局 | 第4优先 |
| MED | 可选非传递 | 相邻AS | 第5优先 |
| Next Hop | 公认必遵 | 全局 | 可达性检查 |
避坑指南:我曾经在项目中犯过一个低级错误——把MED当成全局属性来用。MED只在相邻AS之间传递,不会传到第三个AS。如果你想让策略影响整个路径,用Local Preference才是正解。
1.4 BGP选路原则详解
BGP的选路原则,说白了就是一套「比大小」的游戏。我总结成三步走:
- 先看谁更优:Weight越大越优,Local Preference越大越优
- 再看谁更短:AS_PATH越短越优
- 最后看谁更低:MED越小越优
你可能会问:为什么Weight和Local Preference是越大越好,而MED是越小越好?
嗯,这跟设计初衷有关。Weight和Local Preference是「我主动选谁」,当然越大越优先。MED是「别人告诉我选谁」,越小表示越希望我选它。
我记得有一次帮客户排查路由选路问题。客户说:「为什么我的流量总是走备份链路?」我一看配置,Local Preference设反了——主链路设了50,备份链路设了100。这不就反了吗?
实战技巧:我习惯在配置BGP策略时,先用show ip bgp查看路由表,确认当前选路结果。然后再用show ip bgp x.x.x.x查看具体路由的各个属性值。这样能快速定位问题。
1.5 BGP防劫持的底层逻辑
讲完基础,我们聊聊防劫持。BGP劫持的本质是什么?
说白了,就是有人「撒谎」——他宣称某个IP段属于他的AS,但实际上不是。因为BGP默认信任邻居,所以这个假路由会传播出去。
我见过最典型的劫持场景:
- 前缀劫持:攻击者宣告一个更具体的路由(比如/24代替/16),流量就被吸走了
- AS_PATH篡改:攻击者伪造AS_PATH,让路由看起来更优
- 中间人攻击:攻击者插入自己的AS,截获流量
为什么会这样?因为BGP在设计之初就没考虑安全。它假设所有邻居都是可信的。这在互联网早期没问题,但现在?嗯,你懂的。
核心认知:BGP防劫持不是靠BGP本身,而是靠「外部机制」——RPKI、BGPsec、AS_PATH验证等。这些我会在后续章节详细讲。
好了,第一章就到这里。基础打牢了,后面讲防劫持技术你才能理解为什么需要那些机制。
公众号:蓝海资料掘金营,微信deep3321