bgp邻居建立失败查询思路:
1. 常见原因
BGP邻居无法建立是指BGP邻居状态无法到达Established状态。
本类故障的常见原因主要包括:
- BGP报文转发不通。
- ACL过滤了TCP的179端口。
- 邻居的Router ID冲突。
- 配置的邻居的AS号错误。
- 用Loopback口建立邻居时没有配置peer connect-interface命令。
- 用Loopback口建立EBGP邻居未配置peer ebgp-max-hop命令。
- peer valid-ttl-hops配置错误。
- 对端发送的路由数量是否超过peer route-limit命令设定的值。
- 对端配置了peer ignore命令。
- 两端的地址族不匹配。
2. 故障诊断流程
在配置BGP协议后发现BGP邻居无法建立。
可按照故障诊断流程图1-1排除故障。
图1-1 BGP邻居无法建立故障诊断流程图
3. 故障处理步骤
背景信息说明:
请保存以下步骤的执行结果,以便在故障无法解决时快速收集和反馈信息。
操作步骤:
步骤 1
使用ping命令检测BGP邻居之间是否可以Ping通
- 如果可以Ping通,则说明BGP邻居之间有可达的路由并且链路传输也没有问题,请执行步骤2。
说明 请使用命令ping–a source-ip-address –s packetsize host来检测两端的互通性,因为带源地址可以同时检测两端路由是否正常,指定ping的字节可以检查大包在链路上传输是否正常。 - 如果不能Ping通,请参见19.2.6.1.1 Ping不通问题的定位思路检查两端的路由表中是否存在对端路由。
步骤 2
检查是否配置ACL禁止TCP的179端口
在两端执行display acl all命令查看是否禁止TCP的179端口。
<Huawei>display acl all
Total nonempty ACL number is 1
Advanced ACL 3001, 2 rules
Acl's step is 5
rule 5 deny tcp source-port eq bgp
rule 10 deny tcp destination-port eq bgp
- 如果有禁止TCP的179端口的ACL,请执行undo rule rule-id destination-port和undo rule rule-id source-port命令取消配置。
- 如果没有禁止TCP的179端口的ACL,请执行步骤3。
步骤 3
检查邻居的Router ID是否冲突
在两端分别查看无法建立的BGP邻居的情况,例如ipv4单播邻居无法建立可以执行display bgp peer命令,查看Router ID是否冲突。显示Router ID信息的命令行示例如下,该例中本端的Router ID是223.5.0.109。
<Huawei>display bgp peer
BGPlocal router ID : 223.5.0.109
Local AS number : 41976
Total number of peers : 12 Peers in established state : 4
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv
8.9.0.8 4 100 1601 1443 0 23:21:56 Established 10000
9.10.0.10 4 200 1565 1799 0 23:15:30 Established 9999
说明
查看BGP-VPNv4地址族或BGP-VPN实例地址族的邻居可以使用命令display bgp vpnv4 all peer。
- 如果Router ID冲突,请在BGP视图下运行命令router id将Router ID修改为不同(一般会用Loopback口的地址作为本端的Router ID)。
- 如果Router ID没有冲突,请执行步骤4。
步骤 4
检查邻居AS号配置是否正确
在两端分别执行display bgp peer,检查邻居的AS号是否是对端的AS号。
<Huawei>display bgp peer
BGP local router ID : 223.5.0.109
LocalAS number : 41976
Total number of peers : 12 Peers in established state : 4
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv
8.9.0.8 4 100 1601 1443 0 23:21:56 Established 10000
9.10.0.10 4 200 1565 1799 0 23:15:30 Established 9999
说明
查看BGP-VPNv4地址族或BGP-VPN实例地址族的邻居可以使用命令display bgp vpnv4 all peer。
- 如果AS号配置错误,请将AS号配置为对端的AS。
- 如果AS号配置没有错误,请执行步骤5。
步骤 5
检查BGP配置是否影响邻居建立
通过displaycurrent-configuration configuration bgp查看BGP的配置,进行如下检查。
检查项 | 说明 |
peer connect-interface interface-type interface-number | 如果邻居两端使用Loopback口建立邻居,则需要使用命令peer connect-interface指定相应的Loopback口为发送BGP报文的源接口。 |
peer ebgp-max-hop hop-count | 如果直连设备用Loopback口建立EBGP邻居,或者非直连多跳设备建立EBGP邻居,则需要配置命令peer ebgp-max-hop指定允许的最大跳数hop-count。 直连设备使用Loopback口建立连接时,hop-count只要大于1即可。 非直连设备建立连接时需要指定hop-count为相应的跳数。 |
peer valid-ttl-hops hops | 如果有该配置,请确认peer valid-ttl-hops hops是否正确:如果配置为hops,则被检测的报文的TTL值有效范围为[255–hops+1, 255]。其中hops是BGP会话两端之间的跳数值,直连设备之间的hops为1。 说明 命令peer valid-ttl-hops的配置是对称的,即需要在BGP会话两端同时使能该命令。 |
peer route-limit limit | 如果有该配置时,请确认对端发送的路由数量是否超过peer route-limit limit,其中limit表示限制的路由数量。如果是,则需要降低对端发送过来的路由数量,并在本端使用reset bgp ip-address命令复位相应的BGP连接来触发BGP重新建立连接。 |
peer ignore | 如果对端配置了peer ignore,说明由于某种原因对端暂时不想和本端建立邻居。如果想建立邻居时,执行undo peer ignore命令去使能对端的配置即可。 |
地址族能力 | 请检查BGP会话两端的地址族能力是否匹配。例如,建立BGP VPNv4邻居时,需要两端都要在BGP-VPNv4地址族下配置命令peer enable。如果一端已配置而另一端没有配置时,没有配置的一端BGP邻居状态为“No neg”。 |
步骤 6
如果故障仍未排除,请收集如下信息,并联系技术支持人员。
- 上述步骤的执行结果。
PNv4邻居时,需要两端都要在BGP-VPNv4地址族下配置命令peer enable。如果一端已配置而另一端没有配置时,没有配置的一端BGP邻居状态为“No neg”。 |
步骤 6
如果故障仍未排除,请收集如下信息,并联系技术支持人员。
- 上述步骤的执行结果。
设备的配置文件、日志信息、告警信息。