BGP——基本概念4(路由信息处理、路由防环、路由通告、路由选路)

目录

  BGP路由信息处理流程

BGP路由处理所需要的表项

BGP收到从邻居发来更新消息到向邻居发出更新信息的过程

BGP路由宣告方式

BGP防环机制

BGP路由通告原则

如何解决BGP路由黑洞问题

BGP路由状态码

BGP选路原则

BGP负载均衡

Preference_Value属性


  BGP路由信息处理流程

BGP路由处理所需要的表项

1.邻居表                                        BGP邻居名单

2.Local-RIB(BGP路由表)        从邻居获取到以及自己宣告的所有路由及其属性

3.IP-RIB(IP路由表)                  从BGP路由表中选取最佳路由加入IP路由表项(如果IP路由表有优于此BGP路由的其它路由,则BGP的路由无法加入到IP路由表中)

4.Adj-RIB-In(入)                       邻居宣告给本地的未处理的路由信息库

5.Adj-RIB-Out(出)                    本地宣告给指定邻居的路由信息库

BGP收到从邻居发来更新消息到向邻居发出更新信息的过程

BGP路由宣告方式

BGP不对路由进行计算,只是路由的搬运工,通过对已有路由进行宣告来得到BGP路由

本地宣告:network

  • 此命令不再具备将接口加入到BGP进程的逻辑(即不同于OSPF的network)
  • 此命令就是将路由表中的路由引入到BGP路由表中
  • 此命令可以精确控制引入哪些路由到BGP中

引入宣告:import-route

  • 将路由表的路由引入到BGP中,高效快捷
  • 将其它协议引入到BGP,默认开销为IGP的度量值,路由优先级为255(可以通过default med修改初始度量值)

引入缺省路由:default-route、default-rote-advertise

  • default-route imported   将本地IP路由表中已存在的缺省路由引入到BGP路由表中(default-route imported命令需要必须要与import-route命令配合使用,才能引入缺省路由)
  • peer 对等体 default-route-advertise    可以针对对等体引入缺省路由(并且可以通过字段来实现满足特定条件时引入缺省路由)

peer 对等体 default-route-advertise  conditional-route-match-all  条件   当匹配所有条件时,下发缺省路由

peer 对等体 default-route-advertise  conditional-route-match-any  条件 当匹配任一条件路由时,发送缺省路由

BGP防环机制

AS内:通过水平分割   通过IBGP邻居得到的路由不会再传递给IBGP邻居

AS间:AS_Path属性

RR:  通过orifinator-id和cluster-list防环

其它防环机制

BGP SoO属性防环(MPLS VPN场景会使用到)

通过将路由聚合指向Null0防环

默认情况下不会将IBGP路由重新发布到IGP中

MPLS隧道——PE与CE之间运行不同路由协议的情况分析_静下心来敲木鱼的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/127595254?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168396708716800227475956%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=168396708716800227475956&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-127595254-null-null.blog_rank_default&utm_term=soo&spm=1018.2226.3001.4450

BGP路由通告原则

1.到达同一目的 有多条路由时,只会选取最优的(Best)路由来给自己使用

----就比如到达同一网段的路由有多个下一跳,此时只会选择最优的下一跳给自己使用

2.BGP只把自己使用的路由,也就是自己认为最优的路由传给BGP对等体

3.BGP从EBGP对等体获得的路由会向他所有BGP对等体宣告(IBGP和EBGP对等体)

4.BGP路由器从IBGP对等体获知的路由不向它的IBGP对等体通告(水平分割规则,出现路由反射器的情况除外)

5.BGP路由器从IBGP对等体获知的路由是否通告给它的EBGP对等体要视IGP和BGP同步的情况来决定(即:只有IGP和BGP同步,从IBGP学来的路由才会优选,则会将此路由传递给EBGP邻居)

---即自己的IGP是否有此需要通告的路由,如果IGP有,则通告,如果IGP没有,则不通告。

---如果此规则不打开,就会造成路由黑洞问题(默认此同步规则关闭的)

---BGP协议下:synchronization开启同步规则(华为设备不支持此规则,思科支持)

6.BGP进行路由更新时,BGP设备只发送更新的BGP路由

7.BGP连接一建立,BGP Speaker将把自己所有最优BGP路由通告给新对等体

注意:

BGP路由传递给EBGP邻居时,下一跳会自动修改

从EBGP邻居学到的路由传递给IBGP邻居时默认不更改路由的下一跳,会导致IBGP邻居收到的路由不是有效路由(下一跳不可达)

---使用Peer 邻居IP地址 next-hop-local 命令来解决,该命令只对IBGP邻居生效

---在从EBGP邻居得到的路由在传递给IBGP邻居时,将下一跳更改为自身向该IBGP邻居发送BGP报文的源地址

如何解决BGP路由黑洞问题

当BGP与IGP同步没有打开的情况下,需要使用以下方法来解决路由黑洞问题

1、将EBGP路由引入到IGP协议中(此方法基本被淘汰)

比较消耗设备资源,由于BGP路由数量过大,引入到IGP协议,增加了IGP协议计算路由的负担;并且BGP路由震荡,IGP路由也会产生震荡。

2、AS内部所有路由器均运行BGP,即IBGP全互联目前主流架构

  •        建立物理的全互联结构,N台设备就要建立N(N-1)/2的IBGP对等体邻居关系
  •        配置路由反射器,实现逻辑上的全互联
  •        配置BGP联盟,实现逻辑上的全互联

3、通过配置MPLS,通过标签的方式也可以解决路由黑洞

BGP——路由反射器_静下心来敲木鱼的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/123689650?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168768856416800225597733%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=168768856416800225597733&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-123689650-null-null.268%5Ev1%5Ekoosearch&utm_term=%E5%8F%8D%E5%B0%84&spm=1018.2226.3001.4450

BGP路由状态码

表示BGP表项中的路由状态

*-----表示路由为有效路由

  不可用的原因:

  1.   下一跳不可达
  2.   已经通过更优的方式学习到了该路由

>----表示此路由为最优路由

d-----表示此路由为惩罚路由——当路由一会Down,一会Up就会被惩罚

s-----抑制路由,即路由不生效——聚合路由时,可以选择抑制明细路由

BGP选路原则

1.如果该路由是到目的地址的唯一路由,直接优选

2.到达同一目的地有多条路由,优选有效路由

3.到达同一目的地有多条有效路由,有更细的原则比较

1)    丢弃下一条不可达路由

2)    优选私有属性(Prefernce)最高的路由——私有路由属性仅本地有效

3)    优选本地优先级(Local_Preference)最高的路由

4)    当有聚合路由时,手动聚合>自动聚合>network>import>从对等体学到的路由

5)    优选AS_Path最短的路由

6)    Orign:i>e>?(network>EGP协议引入>import-route引入)

7)    对相同同一AS的路由,优选MED最小的

8)    优选从EBGP学来的路由(EBGP>IBGP)

9)    优选AS内部IGP的Metric最小的路由——Metric  从此路由器到下一跳的度量值

10)  Cluster_List最短

11)  起源ID最小

12)  Router_ID最小

13)  IP地址最小的

BGP负载均衡

默认BGP不进行负载分担,如果①到⑨都一致,并且AS_Path必须一致,则为等价路由,可以负载均担

华为设备配置负载分担

  Maximum  load-balancing  1          允许一条最优路由(缺省)

  Load-balancing   as-path-ignore    忽略AS_PATH,不一致也可以实现负载分担

锐捷设备配置负载分担

        Maximum-paths [ibgp/ebgp] 1      允许一条最优路由

        Load-balancing   as-path-ignore    忽略AS_PATH,不一致也可以实现负载分担

当BGP开启负载均衡后

  在BGP的路由表中还是只有一条最优路由,但是在IP路由表中会形成负载分担

Preference_Value属性

  • Preference_Value是BGP的私有属性(华为私有)
  • 仅在本地生效,即仅可用于自己选路
  • 越大越优先
  • 0
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静下心来敲木鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值