属于EGP协议,DV算法,增强型距离矢量(路径矢量)
作用:在不同的AS之间用作路由的优选、传递、控制
二字节AS号:
范围:0-65535
公有:0-64511
私有:64512-65535(BGP联盟)
BGP协议基于TCP,端口号:179 目的端口号:179 源端口:随机
因为BGP协议基于TCP,所以建立对等体之前,必须要建立TCP协议,TCP建立条件需要保证路由可达
特征:只要在TCP建立条件之上,BGP可以跨越多跳设备进行对等体的建立
BGP使用触发更新路由,周期更新60s只是维护对等体关系
BGP的对等体(邻居):
基于TCP建立步骤:
①、采用单播的形式,基于TCP连接。采用随机源端口号向目的的179端口号发起TCP
②、谁先启动BGP谁触发发起TCP连接,如果同时则比较Router-ID大的发
③、TCP三次握手之后发起BGP报文开始建立BGP
对等体类型:
①、IBGP:AS内部邻居。相同AS号的设备建立的邻居
②、EBGP:AS间建立的邻居。不同AS号
建立条件:peer对端IP地址必须可达
Peer 2.2.2.2 as-number 200
①、指需要建立邻居关系的设备的更新源地址为2.2.2.2
②、指建立邻居的AS号为200
③、指邻居设备必须以2.2.2.2作为源地址发送报文信息
建议:EBGP用直连接口(EBGP默认TTL值为1用环回口建立需要修改TTL),IBGP用环回接口
BGP报文:
BGP状态机:
BGP的4大通告原则:
①、仅发布最优且可达的路由,给所有BGP邻居
②、从EBGP收到的最优路由,发布给所有BGP邻居
③、从IBGP收到的最优路由,不发布给IBGP邻居,只给EBGP邻居(水平分割防止AS内部环路)
④、BGP与IGP路由同步(解决路由黑洞问题之一华为设备不允许开启同步)
BGP与IGP同步指的是:当一个BGP设备从IBGP邻居收到一条路由信息想要发送给EBGP邻居时,此设备必须同时通过BGP协议和IGP协议学习到同一条路由。这时候,这条路由才能被发送给EBGP邻居
解决路由黑洞的方法:
1、IBGP链路全互联
2、MPLS VPN
3、RR反射器
4、BGP联盟
BGP的路由属性:
1、公认属性:指所有运行了BGP协议的设备都要能够识别的属性
-------公认必遵属性:此属性必须存在于Updata报文中进行传递
①、Origin:起源属性; 标识路由的生成方式 。 选路优选顺序:(i>e>?)(network>EGP>import)
--i:通过Network方式得到
--?:通过Import方式得到
--e:通过EGP路由协议(EGP协议已淘汰只能手动更改的方式得到)
②、AS-path:AS号属性;路由传递过程中所经过的AS号(防止AS间环路) 选路优选:比较AS数量,少的优
没经过AS会加上AS号,路由表中最右侧AS为始发AS号
③、Next_hop:下一跳属性;用来指示转发到目的的网段的下一跳地址,下一跳属性一般都是更新源地址
----对于直接建立BGP邻居的设备之间在传递路由信息时,设备会将自身的更新源地址放入下一跳属性中进行传递
----从EBGP邻居学习到的路由发布给IBGP时,下一跳属性不改变,因此下一跳属性不可达,导致目的地址为不可达路由 (peer 对等体地址 next-hop-lcol)
----从EBGP邻居学习到的路由发布给EBGP时,下一跳属性改变为邻居的更新源地址
----从IBGP邻居学习到的路由发布给EBGP时,下一跳属性改变成为邻居的更新源地址
-------公认任意属性:此属性不是必须存在于Updata报文
①、Local-pre:本地优先级属性;只在一个AS内部传递(默认100),不会传递给EBGP邻居;此属性用来判断离开本AS的最优路径
②、Atomic-Aggregate:聚合属性
2、可选属性:运行了BGP协议的设备不一定能够识别的属性
--------可选过度属性:此属性如果能够识别该属性则保留该属性并且通告BGP对等体;如果路由器无法识别该属性,仍然保留属性通告给BGP对等体
①、community属性:团体属性
作用:用来限制路由的传播范围;可以给BGP路由打上团体标记做统一管理
公认团体属性的分类:
Internet:设备在收到具有此属性的路由后,可以向任何BGP对等体发送该路由。缺省情况下,所有的路由都属于Internet团体
No-Advertise:收到此属性的路由,将不向任何BGP对等体发送该路由
No-Export:收到此属性的路由,不会传递出AS,只会传递给IBGP邻居
No_Export_Subconfed:设备收到具有此属性的路由后,将不向AS外发送该路由,也不向AS内其他子AS发布此路由(BGP联盟)
②、Aggregator:聚合属性
--------可选非过度属性:此属性如果能够识别该属性则保留该属性并且通告BGP对等体;如果路由器无法识别该属性,则不保留该属性
MED属性:BGP路径的开销
特点:
--MED值用来判断进入某一个AS的最佳路径,用来作为AS间的路由选路
--MED值只能在相邻的两个AS之间传递,不能传到第三个AS
--MED值默认为0,传递只有路由始发才会携带,如果是从对等体设备学习到的路由信息,不会携带MED值进行传递
BGP的路由聚合:
①、静态聚合
②、自动聚合:
*只对Import引入的路由进行聚合
*只能聚合成主要网段
*只能在始发设备聚合
③、手动聚合:
*可以对Import和Network路由进行聚合
*可以聚合成自定义的网段
*如果不在始发AS区域设备执行手动聚合之后,会丢失原有AS号造成环路,
需要把AS改为无序AS号,解决AS号丢失问题
Preferred-Value:(协议首选值)是华为设备的特有属性,该属性仅在本地有效。当BGP路由表中存在到相同目的地的路由时,将优先选择Preferred-Value值高的路由。
取值范围:0~65535;该值越大,则路由越优先。
Preferred-Value只能在路由器本地配置,而且只影响本设备的路由优选。该属性不会传递给任何BGP对等体。
RR的设定使得IBGP水平分割原则失效,这就可能导致环路的产生,为此RR会为BGP路由添加两个特殊的路径属性来避免出现环路:
Originator_ID:路由始发者Router ID防止RR环路
Cluster_List:集群列表防止RR集群间环路
Originator_ID、Cluster_List属性都属于可选过渡类型。
RR反射器:
RR设备在接收BGP路由时:
1.如果路由反射器从自己的非客户对等体学习到一条IBGP路由,则它会将该路由反射给所有客户
2.如果路由反射器从自己的客户学习到一条IBGP路由,则它会将该路由反射给所有非客户,以及除了该客户之外的其他所有客户
3.如果路由学习自EBGP对等体,则发送给所有客户、非客户IBGP对等体
BGP选路原则: