BGP
BGP建邻:凡是在 TCP 179端口能够通讯的路由器,都可以建立邻居,与跳数没有关系,可以跨跳数建邻,手动建邻。
BGP 路由传输特点:传输路由时既不是链路状态型,也不是纯距离型,更多的是一种路径信息,BGP 通过属性来表达路径的协议
BGP建立邻居:TCP三次握手,179端口手动建邻,需要配置建立邻居的对象,首先三次握手,第一次发送OPEN、KEEPLIFE、UPDATE、notifaction
包发完会形成俩种邻居关系
1.EBGP:处在不同的AS
2.IBGP:处在同一个AS内部
BGP 没有周期更新,open包会比对AS号、建邻地址、版本、keepalive 时间等信息,其中版本和keepalive 参数是向下兼容的。
如果出现connect状态,没有建立TCP会话,会进入到一个特殊状态ACTIVE,该状态可以让BGP持续建立TCP会话
宣告完该网段的路由时,只有一个用途,就是把他宣告进BGP当中,单纯的宣告,没有任何其他意思。
BGP宣告时掩码精确宣告(不精确宣告无效),该宣告不会想OSPF那样,被宣告的接口会自动建立邻居。
BGP的宣告是针对路由表的,路由表有的路由都可以宣告,(直连,静态,IGP)
BGP号 1-65535 1-64512 公有号 以及64513-65535 私有号
ebgp非直连建邻,为了增加可靠性,选择双线连接,然后回环建立邻居
EBGP邻居建立,默认传播路径跳数是一,非直连要修改他的跳数,大于等于2即可
原则:IBGP邻居不中专路由—IBGP从其他IBGP邻居学到的路由不能传递给他其他的IBGP邻居。
IBGP邻居之间传递路由时,不会修改路由信息(目前知道:不会修改下一条地址,会导致IBGP邻居学到的路由信息下一条地址不优)
ORIGIN BGP属性:内部宣告的为i,外部引入的为?,EGP来的E(已经被淘汰)
优先级 : i>E>? 可以防环
AS Path:BGP的路由器不接受标有自己AS号的路由。AS号越长越不优,越短越优
防环,选路,记录经过的AS号
next hop属性 :本地是0.0.0.0 IBGP邻居为对方的建邻地址 EBGP修改
local preference:选路,方法:IBGP传递时会携带这一属性,默认值为100,谁的值大,就选谁
适合在一个AS内部,选择出一个最合适的路由到达AS外部。AS内部用于选择出口时用到这一属性。
MED属性:属性仅在相邻俩个AS之间传递(可以在IBGP内传),收到此属性的AS不会再将其通告给任何其他第三方AS,用于判断流量进入AS时的最佳路由。
只能在俩个AS之间,不能传给第三者AS
(值小为优)
一般内部用LOCAL,as之间用MED(三个AS不能用MED)因为默认只到俩个AS之间能用
面试必考
Community属性:本意用来标记路由,方便以后修改时候查询
限定路由传播范围
反射器:非客户端不能给非客户端转发
反射器防环属性
环路1:多个反射器一起使用,会将一个路由传递回路由的起源路由器
使用 originor-id 属性,这个属性会把路由器来源路由器的 routerid 添加在该属性当中,当路由传递给起源路由器时,这时候起源路由器会看到自己的roterid,拒绝接受此路由从而防环。
环路2:多个反射器一起会把一个路由器在反射器之间相互传递从而形成该路由在反射器之间产生环路。
使用 Cluster-list 的属性,该属性会把传递的路由的反射器添加进 Cluster-list 列表中,当反射器在列表中看到自己的 routerid 那么就知道该路由已被自己反射过,拒绝接受此路由从而达到防环的目的。
反射器的缺点:反射客户端,已经丧失了选路机会,防止这个现象出现,可以再加上一个反射器,俩个反射器反射俩条路由。
下一条不能是自己**
Oreference Value 对选路的影响:BGP私有属性(华为私有属性),值越大越优,仅在本地路由器上生效,不会影响到其他路由器。(该属性不能传递)
聚合对路由的影响:汇总就是首先删除之前的明细,然后再写一条汇总之后的路由。这样容易出环。
但是BGP 默认不会删除明细
聚合的属性:
1、atomic–aggregate 表示该路由为聚路由
2、aggregate 标识该聚合路由在哪个路由器上做的聚合,用该路由的 router-id 表示