BGP协议的故障诊断命令及命令意思如下所示:
display bgp peer
显示公网IPv4邻居的摘要信息
display bgp vpnv4 all peer 显示vpnv4 bgp 对等体
display bgp peer ipv4-address verbose
显示指定邻居的详细信息
display bgp peer ipv4-address log-info
显示指定邻居的信息记录(该命令对邻居意外中断问题定位非常重要)
display bgp group group-name
显示公网IPv4邻居组信息
display bgp routing-table statistics
显示BGP公网IPv4单播路由统计
display bgp routing-table
显示BGP公网IPv4单播路由摘要信息
display bgp routing-table peer ip-address advertised-routes
显示给指定邻居发布的路由
display bgp routing-table peer ip-address received-routes
显示从指定邻居收到的路由
display bgp network
显示通过Network命令引入到BGP的路由
display bgp path
显示BGP公网Ipv4单播路由的路经属性信息
display bgp ipv6
显示BGP公网IPv6的相应信息,与对应Ipv4命令用法相同
display bgp multicast
显示BGP公网IPv4多播的相应信息,与对应IPv4单播命令用法相同
display ip routing-table statistics
显示系统公网IPv4路由统计
display ip routing-table protocol bgp
显示系统公网IPv4路由表中BGP Active路由的摘要信息
display ip routing-table protocol bgp verbose
显示系统公网IPv4路由表中BGP Active路由的摘要信息
display ip routing-table protocol bgp inactive
显示系统公网IPv4路由表中BGP Inactive路由的摘要信息
BGP是唯一能够运行在AS之间的路由协议,在Internet上,他有不可替代的地位。同时BGP是“传递路由信息”的协议,并不是“发现路由信息”的协议,协议的工作过程可以分为如下两个过程:
- 设备之间正常的建立起BGP邻居;
- 邻居之间传递、同步路由信息;
当然,由于BGP协议十分灵活,而且路由属性众多,可以通过多种路由策略完成特定的需求,我们在此只考虑最简单的情况。

与其他路由协议的定位方式一样,我们首先需要保证设备配置的正确性。与其他路由协议相比,BGP的基础配置是比较简单的,我们只需要在BGP协议配置模式下指定邻居的IP地址和AS number就可以完成(目前几乎所有的BGP应用都是“非同步”模式,所以这里没有考虑“同步类型”配置)。为了保证BGP邻居之间的可靠性,一般我们还会通过“peer peer-ip-add connect-interface interface-type interface-num”命令指定建立BGP邻居的“源地址”。为了保证邻居配置可靠、没有歧义,我们建议邻居之间的“源地址”与“目的地址”能够完全对应(本端指定的“源地址”与对端配置的“邻居地址”相同)。
一般情况下,至此BGP邻居已经可以正常建立了。我们可以通过“display bgp peer”命令来查看,如果到达到“establish”状态,则表示邻居正常建立。如果不进行其他特殊配置,BGP只向邻居传递BGP路由,而网络中默认是没有任何BGP路由的。我们可以通过“import-route”和“network”命令使其他类型的路由信息转变为BGP路由。
BGP协议本身维护自己的一张路由表,主要用来路由信息选优。BGP只把本机路由表中“有效”并且“最优”的路由信息传递给邻居。所谓“有效”是指路由表项的“下一跳”可达;“最优”是指在目的网段相同(包括目的网段前缀和掩码都相同)的情况下,路由优先级最高。在本设备系统路由表中存在的也是“最优路由”,所以判断一条路由条目是否可以在路由表中以“BGP路由”的形式存在,首先要确保在BGP路由表中,该路由条目是“有效”并且“最优”的。在华为数据通信设备中,BGP路由在默认情况下是优先级最低的,所以如果本机有其他路由协议、相同目的网络的路由,BGP路由不会被优选,自然也不会被传递给邻居。