BGP
BGP特点
BGP是EGP管理AS之间路由传递
BGP 距离矢量型 分布式计算
BGP用TCP来传递路由信息(端口号179) 保证了可靠性丧失邻居自动发现,只能用单播建立邻居
BGP设计用来处理AS之间的路由,所以该协议重点处理的是AS之间路由,AS之间的路由不作为重点
BGP使用AS号作为识别不同AS路由的标识,该AS号需要具有唯一性
AS号 区间:1—65535,可以使用扩展32位 65536-4294967295(解决AS号不够用的情况)
BGP的最小使用单位是一个路由器,所以每个路由器只能使用一个BGP的进程
由于BGP管理的路由信息非常庞大,不能够使用周期更新,只能触发更新。并且BGP会认为一条路由时间越久越稳定,在这种情况下BGP必然不会使用复杂的算法来处理BGP收到的路由信息,又由于每个AS情况不一致,管理范围也有限,它必然需要丰富的管理参数(不能只依赖metric),综上所述BGP必然需要多种参数共同来决定路由的选择,并且不能依赖某种特定的全局算法,只能单独去计算某一条路由,不能全盘考虑,并且需要依赖所属AS管理员手动配置
*BGP路径优先协议:*通过给每一个路由设置大量的属性参数来进行灵活的管理或者选路,并且这些属性参数大量的都需要人为来操控
BGP建邻失败的情况
参数与配置
(1)Neighbor 10.1.1.1 //代表向该地址发送TCP端口为179的数据,并且自己也需要在发出地址上打开TCP179的监听,该配置可以指定源地址也可以不指定源地址,不指定就是出接口地址(意味着得打开该出接口关于TCP179的监听)
本段指的地址需要是对方的源地址,对方指的地址需要是本段的源地址
(2)Neighbor 10.1.1.1 remote-as xxx
对端建立邻居的AS号必须和本段的remote-as xx 号一致
(3)建邻双方保障TCP179能够发送,不丢失,不被拦截
邻居之间传递路由的规则
BGP两种邻居关系
Ibgp邻居关系 //相同AS路由器建立的邻居关系
EBGP邻居关系 //不同AS路由器建立的邻居关系
BGP的一些设定
1.BGP不管什么邻居关系只传最优路由(不优不传,优的标志是>,也就是不带>的路由不会被BGP传递)
2.EBGP邻居关系路由传递:只要不违背环路原则或人工策略EBGP邻居传递无限制的(前提是必须优),EBGP之间传递路由会更新next-hop为自己的更新源地址
IBGP之间传递路由不会更新next-hop
3.IBGP邻居关系路由传递:IBGP邻居之间不会中转路由,IBGP自己产生路由(自己宣告的,自己重发布进来的)和EBGP邻居传递的都可以传递给它的IBGP邻居,但不能在IBGP之间中转(也就是不能传递到邻居的邻居)
IBGP之前传递路由不会更新next-hop(只有next-hop为0.0.0.0的情况才会更新,或者建立邻居的时候输入neighbor x.x.x.x next-hop-self更新为自己的更新源地址)
(1)这个设定的好处是:IBGP之间拥有了水平分割从而避免了IBGP环路的产生,IBGP也不必设置防环算法
(2)这个设定的坏处是:是的IBGP之间路由传递必须直接建立邻居,IBGP邻居关系是一种全互联状态