BGP理论基础(bgp基于)

网友投稿 317 2022-09-25


BGP理论基础(bgp基于)

BGP理论基础

BGP 的基本概念:BGP基于TCP来承载,端口号为179,且无需周期性更新,路由更新 只发送增量路由,通过周期性发送keepalive报文来保活。

1、 自治系统AS(Autonomous System):AS号分为2字节和4字节——2字节AS号范围:1-65535,64511-65535为私有AS号码;4字节AS号范围:2的32次方个。

2、 BGP分类:1)、EBGP:运行于不同AS之间的BGP;(防环机制:通过as-path机制,即从EBGP邻居学到的路由中,包含本地AS号的将被丢弃,可通过命令修改为不丢弃)(EBGP中TTL默认为1)2)、IBGP:运行于同一AS内部的BGP;(防环机制:从IBGP对等体学到的路由不通告给其他的IBGP对等体)(IBGP中TTL默认为255)

3、 BGP的路由器号(Router ID):用于标识 BGP 设备的 32 位的值,通常是 IPv4 地址的形式,在 BGP 会话建立时发送的 Open 报文中携带。对等体之间建立 BGP 会话时,每个 BGP 设备都必须有唯一的Router ID,否则对等体之间不能建立 BGP 连接。

4、 BGP的5种报文:1)、open:用于建立BGP对等体连接;2)、update:用于在对等体之间交换路由信息(包括传递可达和不可达的路由信息,不可达的路由信息意思是需要撤销掉这条路由);3)、notification:用于中断BGP连接,当BGP对等体检测到错误的时候,就发送这个消息给对等体;4)、keepalive:用于保持BPG连接(周期性发送);(间隔时间为60s,hold time时间为180s)5)、route-refresh:用于在改变路由策略后请求对等体重新发送路由信息。只有支持路由刷新能力的BGP设备会发送和响应此报文

6、 BGP对等体交互原则:1)、 从IBGP邻居学到的路由,只会发给EBGP邻居,默认不会发给IBGP邻居;(IBGP水平分割原则,可以通过路由反射器或联盟解决)2)、从EBGP邻居获取的路由,传递给IBGP邻居时,默认不会修改下一跳;(可以修改为下一跳自我)3)、BGP只会把本地最优的路由传递给邻居;4)、路由更新时,只会发送更新的BGP路由给邻居。

7、 BGP认证:1)、MD5认证:只能对TCP连接设置认证;(BGP是通过TCP承载,所以BGP后续报文都有认证信息)2)、Keychain认证:可以为TCP连接设置认证,也可以对BGP协议报文设置认证。

8、 BGP GTSM:检测 IP 报文头中的 TTL(time-to-live)值是否在一个预先设置好的特定范围内,并对不符合 TTL 值范围的报文进行允许通过或丢弃的操作,从而实现了保护 IP 层以上业务,增强系统安全性的目的

9、 BGP属性:1)、公认必遵(Well-known mandatory):所有路由器都认识,Update信息必须有,否则会报错;2)、公认任意(Well-known discretionary):所有路由器都认识,Update信息可有可无;3)、可选传递(Optional transitive):路由器可以不认识,但是会接收此类属性,并且传递给其他对等体;4)、可选非传递(Optional non-transitive):路由器可以不认识,但如果不认识就会忽略此类属性,并且不会传递给他的对等体。

10、 BGP选路策略:1)、优选协议首选值(PrefVal)最高的路由。(华为私有属性,仅在本地有效,默认为0)2)、优选本地优先级(Local_Pref)最高的路由;(默认为100)3)、依次优选手动聚合路由、自动聚合路由、 network 命令引入的路由、 import-route 命令引入的路由、从对等体学习的路由;4)、优选 AS 路径(AS_Path)最短的路由;5)、依次优选 Origin 类型为 IGP、 EGP、 Incomplete 的路由;6)、对于来自同一 AS 的路由,优选 MED(Multi Exit Discriminator)值最低的路由;(默认为0)7)、ebgp>ibgp>localcross路由>remotecross路由;(PE上某个 ×××实例的 ×××v4路由的 ERT匹配其他 ×××实例的 IRT后复制到该 ×××实例,称为 LocalCross;从远端 PE 学习到的 ×××v4 路由的 ERT 匹配某个 ××× 实例的 IRT 后复制到该 ××× 实例,称为 RemoteCross)8)、优选到 BGP 下一跳 IGP 度量值(metric)最小的路由;9)、是否支持负载均衡,前8条一样,且as-path完全相同(都是聚合路由或都不是),如果配置了多路径负载均衡的话,进行负载均衡(这里默认IBGP和EBGP路由都参与负载均衡);10)、优选cluster-list长度最小的;11)、orinator-id越小越优;12)、router-id越小越优;13)、peer ip address地址低的优先。

11、 路由反射器原理及路由发布规则:1)、采用独有的 Cluster_List 属性和 Originator_ID 属性防止路由环路;2)、选路规则:1.从Non-Client端的IBGP对等体学到的路由会发给所有的Client端;2.从Client端学到的路由,发布给所有的Client端(发起此路由的Client除外)和Non-Client;3.从EBGP对等体学到的路由,发布给所有的Client端和Non-Client;4.从Non-Client端的IBGP对等体学到的路由不会发给Non-Client端对等体;3)、Cluster-List和Originator-ID的工作原理:1.当一个客户端/非客户端更新一条路由给RR时,RR首先给这个信息打上Originator-ID,为这条路由始发的router-id;2.之后RR给这个更新信息打上自己簇的Cluster-ID放入Cluster-List里面,并传递给他的客户/非客户端/另外一个RR;3.当另外一个RR收到时,在原有的Cluster-List最前面再加上自己簇的Cluster-ID,Originator-ID如果有就不改变,如果没有就创建;4.这样下去,Cluster-List里面有所有经过RR的Cluster-ID,并且在Originator-ID里面有路由始发的router-id;5.当RR收到一个更新信息时,检查Cluster-List,如果里面有自己的router-id,就丢弃,如果没有,就添加并且转发;6.当一个非RR收到更新信息时,检查Originator-ID,如果发现和自己的router-id匹配,就丢弃,否则就接收。 (注:Cluster-List是给RR防环用的,Originator-ID是给非RR防环用的,但都由RR添加)。

12、 BGP路由聚合:聚合后的路由默认不会继承明细路由的属性,从路由表上看是汇聚者自己产生的聚合路由,这样就会把聚合后的路由反传给明细路由的始发者,这样一方面浪费了资源,没必要将汇聚后的路由传递给始发者,一方面造成了路由黑洞,因为当其中一条明细路由消失后,聚合不会消失(全部明细路由消失,聚合路由才会消失),这样去往这个明细的数据包还是通过聚合路由发送过来。所以这个时候我们使用AS-SET,当打上这个属性后,聚合路由的as-path就是所有明细路由as-path的集合。as-set中的as-path是无序的。 (AS-SET的缺点:当聚合后使用AS-SET命令后,明细路由的消失会导致网络的震荡,因为聚合路由的as-path是所有明细的集合,所以当其中明细消失后,路由器都要通告给对等体,AS-PATH有改变。 AS-SET不仅继承AS-PATH,也继承起源属性)

13、 BGP ORF:ORF:根据本端的入口策略,构建对端的出口策略,本端需要哪些路由告诉对端,让对端只发送我所需要的这些路由。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:IPv6技术系列⑧——DHCPv6前缀代表
下一篇:mybatis @Intercepts的用法解读
相关文章

 发表评论

暂时没有评论,来抢沙发吧~