上图中有关于BGP网络的问题,请论述作答。
(1)AR2-AR4的EBGP邻居关系有问题,你如何排查?
(前置条件保障链路可达,先使用双方建立邻居接口地址进行测试,ping -a 保障路由可达,物理链路无故障)
(直连接口建立邻居关系)
- 检查BGP配置中本端建立邻居指定的邻居as号与对端as号是否相同,如果不同,需要改成相同,否则进入下一步。
- 检查两端router-id是否相同,如果相同须要修改为不同,否则进入下一步。
- 查看两端设备的地址簇是否一致(IPv4 和 IPv6),一致则进入下一步
- 检查两端设备是否启动了认证,如果有启动认证需要将认证密钥修改为一致,否则进入下一步
- 检查两端邻居建立是否使用了逻辑接口,如果是,须要指定发起tcp连接建立的接口为逻辑接口,并指定ebgp邻居多跳,修改合适的ttl值,否则进入下一步
- 检查设备是否存在针对端口为179端口的的tcp流量过滤,如果存在需要取消过滤,否则进入下一步。
- 对于不同厂商的设备,检查设备是否能够识别对端设备的as号,此处可能是设备不支持4byte的as号导致,否则进入下一步。
(2)AS 100上做操作,在网络没问题的时候,如何AR4控制让10.1.1.1选择AR1-3路径,请写出两个方案。
由于BGP选路原则为:
0)如果此路由的下一跳不可达,忽略此路由
1)优选协议首选值(PrefVal)最高的路由
2)优选本地优先级(Local_ Pref)最高的路由
3)优选本地生成的路由
4)优选AS路径(AS_Path)最短的路由
5)比较Origin属性,依次优选Origin类型为IGP、EGP、Incomplete的路由
6)优选MED值最低的路由
通过BGP选路属性可得R4从EBGP邻居R2学到的10.1.1.1/32的网络优于从IBGP邻居R3学来。当前需要在AS100上操作使得R4访问该网络走R3-R1路径。
方案一:在R2针对R4 BGP对等体的出方向上使用MED影响选路,加大MED值为100,从而使得AR3和AR4优先使用从AR1传递的路由。在R2的BGP进程下
peer 24.1.1.4 route policy set-med export
其中Route-policy set-med的配置为:
route-policy set-med permit node 10
apply cost 100
方案二:在R2 peer R4的出方向上通告路由时延长自己的AS-number,从而使得AR3和AR4使用AR1传递的路由,因为AS-Path更短而被优选在R2的BGP进程下
peer 24.1.1.4 route-policy set-as export
其中Route-policy set-as的配置为:
route-policy set-as permit node 10
apply as-path 100 additive
方案三:在R2 peer R4的出方向上通告路由时修改路由的Origin属性,从而使得AR3和AR1使用AR1传递的路由,因为AR1传递的Origin属性为i,而AR2传递路由的Origin属性为?所以AR1更优。在R2的BGP进程下
peer 24.1.1.4 route-policy set-origin export
其中Route-policy set-origin的配置为:
route-policy set-origin permit node 10
apply origin egp 100
或者 apply origin incomplete