BGP表

BGP是一种基于策略的路由选择协议,让AS能够根据多种BGP属性来控制数据流的传输。运行BGP的路由器交换被称为路径矢量或者属性的NLRI。
路径矢量信息中包含一个BGP-AS号列表称为AS-PATH属性,其中列出了前往目标网络必须经过的AS号码。通过AS-PATH路由环路也很容易检测到。如果在路由器接收到一条更新消息的AS-PATH中包含本地的AS号就拒绝接收该更新消息,这就说明检测到了一条路由环路。
Cisco路由器使用一个单独的路由表存放BGP路由信息show ip bgp,这个列表列出了所有的BGP可知路径。

BGP路由表的路由信息只能传递给BGP协议,如果两台BGP邻居的BGP路由表为空,就不会有任何路由传递。只能先将路由从IP路由表(show ip route)导入到BGP路由表后才能在BGP邻居之间传递。默认,任何路由不会自动进入BGP 路由表。当 BGP 收到多个通往特定目标的路由时,它会按收到路由的相反顺序列出它们(从最新到最旧)。

BGP路由表的路由获得有多种方式,可以从BGP邻居获得,也可以手工将IGP路由导入BGP路由表(Network),还可以将其它路由重分布进BGP(redistribute),只要BGP的路由不是从邻居学习到的而是手工导入的,那么这样的路由被称为BGP本地路由。BGP路由表列出所有可知的路径。

>-best:BGP中最优的路径。一般也作为使用路径(是否真的使用要看AD值,从eBGP对等体学到的路由AD为20,从iBGP对等体学到的路由AD为200,如果路由是从本地导入的那么AD也为200)。
*-valid:当前可用的路由,也就是在BGP路由表中所有可用的。
s-suppressed:被suppress-map抑制的。 不会宣告给对等体(IBGP和EBGP对等体都不能宣告),但是可以装载进自己的IP路由表。
D-damped:这个IP前缀因为抖动被抑制惩罚,不能宣告给对等体也不能安装进自己的IP路由表。
H-history:IP条目曾经在BGP路由表,但是现在不可达,启用dampening。
i-internal:这个条目是通过IBGP邻居学习到的,是内部的。
R-RIB-failure:不能被使用的,也就是不能安装进IP路由表,但是可以宣告给EBGP对等体和IBGP对等体。原因:1该路由IGP比BGP有更小的AD 2内存错误 3超出VRF中路由限制。
S-stale:当路由器得知对等体GR后将对端传来的条目变为该状态,该状态条目在选路和转发和正常一样,GR完成后恢复正常状态或者有其他变更。
Next-hop属性:BGP本地路由(从本路由器宣告进BGP的)都为0.0.0.0!其他不管是EBGP和IBGP对等体宣告都是用来建立邻居关系的那个地址。有3种情况。
情况1外部对等:就是为ebgp邻居,next-hop为正在宣告这条路由的接口的地址,就是建立EBGP对等体关系的源地址。默认next-hop self
情况2内部对等,目的地在本AS:next-hop为最初宣告这条路由条目的iBGP对等体源地址。默认next-hop unchange
情况2内部对等,目的地在其他AS:next-hop为最初宣告这条路由条目的eBGP对等体源地址。默认next-hop unchange
默认EBGP对等体宣告条目会将下一跳改为自己。IBGP对等体宣告条目不会更改原有的下一跳属性。

抑制inactive路由:抑制把没有被安装进路由表的路由通告给对等体。正常情况下BGP会通告inactive(RIB-failure)的路由条目。路由器将给没有被安装进路由表的最优BGP条目打上RIB-failure标记,这个标记可以在show ip bgp中显示出来。这标志并不表示路由条目或RIB出现错误,这种路由条目是否通告给对等体就取决于该命令bgp suppress-inactive 。

RIB-NH matches如果为n/a标识没有开启bgp suppress-inactive命令。
RIB-NH matches下面的内容只在RIB-failure为higher admin distance时候才有作用(就是IGP路由的管理距离优于BGP路由的管理距离)。
RIB-NH matches如果为yes表示路由仍然会传递给对等体,因为从BGP路由条目递归到的下一跳和IGP学到的路由条目的下一跳相同。
RIB-NH matches如果为no不会传递给对等体,因为从BGP路由条目递归到的下一跳和IGP条目的下一跳来源不相同。

原文地址:https://www.cnblogs.com/chia/p/6806949.html