1、 IBGP 为什么采用全互联?不采用全互联怎么部署? 由
由于IBGP的水平分割导致一个路由器收到的一条BGP路由不能传递给其他IBGP的邻居。这样的话,如果要让一个iGp中所有路由器都要可以给别的路由器传递BGP路由的话,就需要建立全互连这样的邻居关系就是每个路由器两两之间都要建立邻居,这样才能解决那个数据层面路由黑洞的问题。
可以采用反射器和联邦
2、 Bgp 中团体的作用
标准团体属性:针对传递的路由信息进行标记
扩展团体属性:定义BGP路由的传播范围
扩展团体属性:
Internet—可以传递给所有邻居
no-advertise—不能传递给任何邻居
no-export—不能传递出大的AS
no-export-subconfed—不能传递出小的AS
3、 BGP 的选路原则
选路条件: BGP路由必须有效,无环的,不能被惩罚 。
当到达同一目的地存在多条路由时,BGP依次对比下列属性来选择路由:
1)优选协议首选值(PrefVal)最高的路由:
数值范围: 0-65535 , 越大越优,默认值为0
仅仅在本设备上生效,不能传递
协议首选值(PrefVal)是华为设备的特有属性,该属性仅在本地有效。
2)优选本地优先级(Local_Pref)最高的路由。
作用: 用于控制离开本AS的流量,离开本AS时使用
范围:0-2^32 , 默认值为100 , 数值越大越优;在AS内可以传递,传出AS后失效
部署位置: 一般建议在存在EBGP邻居的IBGP邻居之间
3)依次优选手动聚合路由、自动聚合路由、network命令引入的路由、import-route命令引入的路由、从对等体学习的路由。
(next-hop为 0.0.0.0 最优先)
在思科中,next-hop为0.0.0.0是通过network or import or 路由聚合产生的
0.0.0.0整体优于IBGP或EBGP学习的
4)优选AS路径(AS_Path)最短的路由。
作用:代表本路由信息经过了那些AS
默认值:无,越短越优
注意: 在EBGP联邦中出现的AS号不计入长度的大小, 若出现在大括号时,大括号内无论存在多个少AS号,都只当做一个;
5)依次优选Origin类型为IGP、EGP、Incomplete的路由。
作用:代表着BGP路由的来源
默认值: 无, i>e>? i(0) e(1)?(2)
部署位置:所有BGP路由器上
ibgp路由是来自自身的通告,or IBGP or ebgp邻居network通告的路由
?是重发布的
6)对于来自同一AS的路由,优选MED值最低的路由。
MED:多出口鉴别属性 做在EBGP邻居间
作用:用于影响进入某AS的流量控制时使用
默认值为空:med 可以当做metric值,med 属性也是只能在某一个AS之内使用,med的比较默认一定是来自于直连相同的AS中路由
设置时就是修改cost值 ,越小越优
4、 BGP 的 AS-PATH 属性有什么作用?
代表本路由信息经过了那些AS
5、 BGP 的 local-performance 属性有什么作用?如何使用?
作用: 用于控制离开本AS的流量,离开本AS时使用
6、 BGP 的反射原则?
反射规则: 非非不传(非客户端收到的路由不能传递给其他的非客户端)
7、 BGP 的反射如何防环?
在路由反射器中,由于破坏了IBGP水平分割机制,可能导致路由环路,所以引入了起源者属性和簇ID属性进行防环。
设置路由反射器: 设置对等体组中用户为路由反射器的客户端,同时宣告自身为路由反射器的服务器端。
起源者属性:当路由 器反射路由条目时,BGP边界路由器会将产生该路由的路由器的router-id(BGP边界路由器自己的router-id)以起源者属性的方式显示在该路由条目中
簇ID列表(就像AS-PATH记录AS号一样,路由反射器每反射一次会将自己的簇ID加入到簇ID列表中。默认簇ID为路由器的router-id,可以修改。当传递给自己的路由的簇ID与自己的router-id相同时不能学习路由。当RR将来自客户的路由反射给客户时,同时将其簇ID附加到cluster_list中。RR接受到update消息后,就会检查cluster_list,如果发现其簇ID位于簇列表中,则知道已经出现了路由环路,从而忽略该update消息)
设置路由反射器: 设置对等体组中用户为路由反射器的客户端,同时宣告自身为路由反射器的服务器端。
在路由反射器中,由于破坏了IBGP水平分割机制,可能导致路由环路,所以引入了起源者属性和簇ID属性进行防环
由于破坏了IBGP水平分割机制,可能导致的路由环路:
(1)簇ID列表(就像AS-PATH记录AS号一样,路由反射器每反射一次会将自己的簇ID加入到簇ID列表中。默认簇ID为路由器的router-id,可以修改。当传递给自己的路由的簇ID与自己的router-id相同时不能学习路由。当RR将来自客户的路由反射给客户时,同时将其簇ID附加到cluster_list中。RR接受到update消息后,就会检查cluster_list,如果发现其簇ID位于簇列表中,则知道已经出现了路由环路,从而忽略该update消息)
①. 产生环路的原因:
由于破坏了IBGP水平分割机制,可能导致的路由环路:
每个路由器都做路由反射器的话,100.1.1.0/24这条路由由R1反射给R2,R2反射给R3,R3反射给R4,R4反射给R5,R5反射给R2,而R2到达100.1.1.0/24优选R5的话,下一跳为23.1.1.2会走R3,而R3到达100.1.1.0/24走R2,那么R2和R3之间会出现由环路。
②. 簇id防环:图1 R1反射给R2,R2反射给R3,R3反射给R4,R4反射给R5,R5反射给R2,没经过一个路由反射器记录簇id,R5发给R2的簇id列表里有2-3-4-5,R2不学R5传来的路由,解决环路。
做路由反射器的目的是不需要跨EBGP反射路由的
(2)起源者属性(当路由 器反射路由条目时,BGP边界路由器会将产生该路由的路由器的router-id以起源者属性的方式显示在该路由条目中)
①. 产生环路的原因:R1将100.1.1.0反射给R2,R2反射给R3,R3反射给R4,R4反射给R5,R5反射给R1。当R1优选R5传递的这条路由的话,就去找R2,但是R2又去找R1,R1-R2出现环路。
②. 起源者属性破环(防环):图2 由EBGP邻居产生的100.1.10,传递给R1(ebgp特性),路由反射器把一条IBGP路由反射到另外一个IBGP邻居(把本AS的路由反射给本AS的其他路由器。)R2反射给R3,R3反射给R4, R4反射给R5, R5反射给R1, 在本AS内100.1.1.0这条路由是由R1引入本AS的,相当于100.1.1.0是由该AS内R1产生的。R1路由器的router-id (1.1.1.1)以起源者 属性的方式显示在该路由条目中,R5将100.1.1.0传递给R1,R1看到100.1.1.0这条路由的起源者属性是自己的router-id就不学习。