华为BGP动态路由协议理论
文章目录
-
华为BGP动态路由协议理论
-
- 自治系统AS
-
BGP的特征
-
BGP报文
-
BGP状态机
-
BGP 数据库
-
BGP对等体设置
-
- 直连建邻居要注意的
- 用环回口建邻居要注意的
- 关于为什么要用环回口建邻居
-
BGP属性
-
BGP选路规则
华为BGP动态路由协议理论
1:动态路由协议可以按照工作范围分为IGP以及EGP。IGP工作在同一个
AS内,主要用来发现和计算路由,为AS内提供路由信息的交换;而
EGP工作在AS与AS之间,在AS间提供无环路的路由信息交换,BGP则
是EGP的一种。
2: BGP是Border Gateway Protocol的简称。
3:BGP是一种增强的路径矢量路由协议,同时BGP是拥有丰富的策略控
制技术的外部网关协议。
3:BGP多运行于AS与AS之间。
BGP是采用TCP协议进行传输,而ospf是组播封装在ip上传输,rip也是组播封装在UDP上传输
BGP路由协议
- 支持CIDR
- 支持无类域问路曲 增量更新
- 路由更新时,BGP只发送更新的路由,大大减少了BGP传播路由所占用的带宽,适用于在Internet上传播大量的路由信息。
- BGP从设计上避免了环路的发生
增强型的路径矢量路由协议
- BGP通过携带AS路径信息来标记途经的AS
无环路
- AS之间:BGP通过携带A5路径信息来标记途经的AS,带有本地AS号的路由将被丢弃,从而避免了域间产生环路。
- AS内部:BGP在AS内学到的路由不再通告给AS内的BGP邻居,避免了AS内产生环路
自治系统AS
- 是同一技术管理机构管理,使用统一策略的一些路由的集合
- 每个自治系统都有唯一的自治系统编号,这个编号是由ANA分配的.
自治系统的编号范围是从1句65535,其中到64511是注册的因特网的编号,
64512到65535是私有网络编号(BGP网络中AS号码标〕
EBGP和IBGP
当BGP运行于同一AS内部时,被称为IBGP
当BGP运行于不同一AS内部时,被称为EBGP

BGP的特征
主要是发现和计算路由
传输协议:tcp 端口号179
BGP是外部路由协议,用来在AS之间传递数据
是一种增强的路径矢量路由协议
拥有可靠的路由更新机制
无路由环路设计
为路由条目覆带属性思想
支持CIDR(五类别域间路由)
丰富的路由过度和路由策略
无需周期性更新
路由更新时发送增量路由
周期性发送KeepAlive报文以保持TCP直通性
BGP报文
- Open报文 发Hello
- Notification 报文 报错
- Router-refresh 刷新路由条目
- KeepAlive 不断发送Hello,维护邻居关系
update 报文
BGP状态机
- Idle 空闲状态
- connect 连接状态
- Active 活跃状态
- Opensent 打开消息已发送
- Openconfirm 打开消息确认
- Established 连接已建立
BGP 数据库
- IP路由表(IP-R2B)
- BGP路由表(Loc-R2B)
- 邻居表 Adj-RIB-in-IBGP
- Adj-R2B-out-EBGP
BGP对等体设置
对等体交互原则
从IBGP对等体获得的BGP路由,BGP设备只传递给他的EBGP对等体
从EBGP对等体获得的BGP路由,BGP设备传递给它所有的EBGP和IBGP对等体(对等体是IBGP只能传1跳,对等体是EBGP则不受限制)
当存在多条到达同一地址的有效路由时,BGP设备只将最优路由发布给对等体
路由更新时,BGP设备只发送更新的BGP路由
所有对等体发送的路由,BGP设备都会接收
所有EBGP对等体在传递过程中下一跳改变
所有IBGP对等体在传递过程中下一跳不变
默认EBGP传递时,TTL值为1
默认IBGP传递时,TTL值为255
直连建邻居要注意的
- 建立IBGP邻居时要让下一跳可达,处于边界的IBGP邻居需要将下一跳指向自己,这样才能建立IBGP邻居
用环回口建邻居要注意的
需要修改更新源,默认更新源是物理口,你需要修改成环回口。建立IBGP邻居时要保障下一跳可达,处于边界的IBGP邻居需要将下一跳指向自己,这样才能建立IBGP邻居
建立EBGP邻居时因为EBGP只能传一跳,因而,在建立EBGP邻居时,需要修改EBGP多跳的跳数为2以上(自己环回到对端环回是两跳,默认一跳)
关于为什么要用环回口建邻居
原因是环回口稳定,只要路由器启动着,环回口就不DOWN,而物理链路可能会受线路或者接口等因素的影响导致邻居关系有问题,因而一般BGP建立邻居都是环回口来建
BGP属性
公有必遵
公认任意
可选过渡
可选非过渡Loacl preference:本地优先级传递给IBGP 本地设置发送给邻居 越大越优
MED AS-PATH 值越小 链路越优先
| 属性 | 类别 |
|---|---|
| origin | 公有必遵 |
| AS-PATH | 公有必遵 |
| Next-Hop | 公有必遵 |
| local preferene | 公认任意 |
| community | 可选过度 |
| MED | 可选非过渡 |
BGP选路规则
- 若去往目的网络的路由下一跳不可达,则可以忽略此路由
- Preferred-Value优先级以数值高的路由优先
- Local-Preference优先级以数值高的路由优先 默认100
- 聚合路由优先级高于非聚合路由
- 本地手动聚合路由的优先级高于本地自动聚合的路由
- 本地通过Network命令了入的路由的优先级高于本地通过Import-route命令的入的路由
- AS路径长度最短(最少个数)的路径优先级高
- 比较origin属性,IGP优先级高于EGP,EGP优先级高于Incomplete
- 选择MED优先级较小的路由 默认是0
- EBGP路由优先级高于IBGP路由
- BGP优先级选择到BGP下一跳的IGP度量最高的路径,当以上全部相同,则为等价路由,可以负载分担(AS-PATH必须一致),当负载分担时,以下3条原则无效
- 比较Cluster-List长度,短者优先
- 比较Originator_ID,如果没有,则比较Router-ID,选择数值较小的路径
- 比较对等体的IP地址,选择IP地址数值最小的路径
Local preference只能在IGP上做
- 比较Cluster-List长度,短者优先
- 比较Originator_ID,如果没有,则比较Router-ID,选择数值较小的路径
- 比较对等体的IP地址,选择IP地址数值最小的路径
Local preference只能在IGP上做
AS-PATH MED可以在EGP与IGP之间做
