BGP4+是为了使BGP4能够支持多种网络层协议,如IPv6和IPX等,规定了一种BGP4多协议扩展即BGP4+来实现BGP4对IPv6协议的支持。
为了使 BGP4 能够支持多种网络层协议,如 IPv6 和 IPX 等,规定了一种 BGP4 多协议扩展即 BGP4+来实现 BGP4 对 IPv6 协议的支持。
BGP4+简介
为了使 BGP4 能够支持多种网络层协议,如 IPv6 和 IPX 等,规定了一种 BGP4 多协议扩展即 BGP4+来实现 BGP4 对 IPv6 协议的支持。
IPv6 的 BGP 扩展
为了使其他网络层协议也可以使用 BGP-4,必须添加多协议 NLRI 及其下一跳信息。RFC 2858 扩展了 BGP,使之支持多个网络层协议。IPv6 就是一个受支持的协议。为了适应多协议支持的新需求,BGP4+添加了两个新属性:
多协议可达 NLRI(MP-REACH-NLRI)
多协议不可达 NLRI(MP-UNREACH-NLRI)
配置步骤
步骤 1、启动 BGP4+
启动 BGP4+配置实例 R1 的配置:
ZXR10_R1(config)#router bgp 100
ZXR10_R1(config-router)#bgp router-id 1.1.1.1
ZXR10_R1(config-router)#neighbor 2005::2 remote-as 200
ZXR10_R1(config-router)#address-family ipv6
ZXR10_R1(config-router-af)#neighbor 2005::2 activate
ZXR10_R1(config-router-af)#network 2001::/64
R2 的配置:
ZXR10_R2(config)#router bgp 200
ZXR10_R2(config-router)#bgp router-id 2.2.2.2
ZXR10_R2(config-router)#neighbor 2005::1 remote-as 100
ZXR10_R2(config-router)#address-family ipv6
ZXR10_R2(config-router-af)#neighbor 2005::1 activate
ZXR10_R2(config-router-af)#network 2003::/64
配置实例
如图所示,R4 和 R1 建立 EBGP,R1 和 R2 建立 IBGP,R2 和 R5 建立多跳 EBGP。其中,假设 R4 中存在图中右上角标注的四条静态路由。在 R4 的配置中,仅通告聚合网段 2004::/16。R2 与 R5 之间通过 R3 建立 EBGP 多跳关系。 R4 的配置:
R4(config)#router bgp 2
R4(config-router)#neighbor 2001::1 remote-as 1
R4(config-router)#address-family ipv6
R4(config-router-af)#neighbor 2001::1 activate
R4(config-router-af)#redistribute static
R4(config-router-af)#aggregate-address 2004::/16 as-set summary-only //仅通告聚合网段
R1 的配置:
R1(config)#router bgp 1
R1(config-router)#neighbor 2003::2 remote-as 1
R1(config-router)#neighbor 2001::4 remote-as 2
R1(config-router)#address-family ipv6
R1(config-router-af)#neighbor 2001::4 activate
R1(config-router-af)#neighbor 2003::2 activate
R1(config-router-af)#neighbor 2003::2 next-hop-self
R2 的配置:
R2(config)#router bgp 1
R2(config-router)#neighbor 2003::1 remote-as 1
R2(config-router)#neighbor 2007::5 remote-as 3
R2(config-router)#neighbor 2007::5 ebgp-multihop //配置 EBGP 多跳
R2(config-router)#address-family ipv6
R2(config-router-af)#neighbor 2003::1 activate
R2(config-router-af)#neighbor 2007::5 activate
R2(config-router-af)#neighbor 2003::1 next-hop-self
R5 的配置:
R5(config)#router bgp 3
R5(config-router)#neighbor 2005::2 remote-as 1
R5(config-router)#neighbor 2005::2 ebgp-multihop //配置 EBGP 多跳
R5(config-router)#address-family ipv6
R5(config-router-af)#neighbor 2005::2 activate
维护与诊断
当遇到 BGP4+路由问题时,我们可以通过相关的调试命令来帮助定位故障,排除错误。其中用的最多的是 show 命令,通过 show 命令可以查看当前 BGP4+邻居状态,路由器学习到的 BGP4+路由信息等。
命令
功能
ZXR10# show bgp all protocol
显示 BGP4+协议模块的配置信息
ZXR10#show bgp ipv6 unicast neighbor
查看 BGP4+邻接关系,显示当前邻居状态
ZXR10#show bgp ipv6 unicast
显示 BGP4+路由选择表中的条目
ZXR10#show bgp ipv6 unicast summary
显示所有 BGP4+邻居连接的状态
ZXR10#show bgp all protocol
BGP router ID is 2.2.2.2, Local as is 1
Hold time is 90 seconds, KeepAlive time is 30 seconds
Default local preference is 100
Default export metric is 0
IGP synchronization is enabled
Default information advertise is disabled
Always compare med is disabled
Fast fallover is enabled
Client-to-client reflection is enabled
Ipv4 unicast is activated
Router target is filtered
Route dampening is disabled
Distance : external 20 internal 200
ZXR10#show bgp ipv6 unicast neighbor
BGP neighbor is 2005::1, remote AS 1, internal link
BGP version 4, remote router ID 1.1.1.1
BGP state = Established, up for 00:08:04
Last read update 00:02:31, hold time is 90 seconds, keepalive interval
is 30 seconds
Neighbor capabilities:
Route refresh: advertised and received
Address family IPv6 Unicast: advertised and received
ZXR10#show bgp ipv6 unicast
Status codes: *valid, >best, i-internal
Origin codes: i-IGP, e-EGP, ?-incomplete
n
Network Next Hop Metric LocPrf Path
*>i2001::/64 2005::1 100 i
*>i2001::1/128 2005::1 100 i
*> 2003::/64 :: i
*> 2003::2/128 :: i
*> 2005::/64 ::
*i2005::/64 2005::1 100
*>i2005::1/128 2005::1 100
*> 2005::2/128 ::
ZXR10#show bgp ipv6 unicast summary
Neighbor Ver As MsgRcvd MsgSend Up/Down(s) State/PfxRcd
2005::1 4 1 25 25 00:12:04 4
除 show 命令外,我们还可以使用 debug 命令观察 BGP4+邻接建立过程、路由更新过程等。
命令
功能
ZXR10# debug ip bgp in
跟踪显示 BGP 接收的 notification 报文,并列出错误号和子错误号
ZXR10#debug ip bgp out
跟踪显示 BGP 发出的 notification 报文,并列出错误号和子错误号
ZXR10#debug ip bgp events
跟踪显示 BGP 连接的状态机迁移