选择区域语言: EN CN HK

06-三层技术-IP路由配置指导

12-IPv6 BGP配置

本章节下载  (595.9 KB)

docurl=/cn/Service/Document_Software/Document_Center/Routers/Catalog/SR_Router/SR6600/Configure/Operation_Manual/H3C_SR6600_SR6600-X_CG-R3302(V1.20)/06/201401/814813_30005_0.htm

12-IPv6 BGP配置

  录

1 IPv6 BGP

1.1 IPv6 BGP简介

1.2 配置任务简介

1.3 配置IPv6 BGP的基本功能

1.3.1 配置准备

1.3.2 配置IPv6对等体

1.3.3 配置IPv6 BGP发布本地IPv6路由

1.3.4 配置路由首选值

1.3.5 配置IPv6 BGP连接所使用的源接口

1.3.6 配置非直接相连的邻居建立EBGP连接

1.3.7 配置IPv6对等体/IPv6对等体组的描述信息

1.3.8 禁止与IPv6对等体/IPv6对等体组建立会话

1.3.9 记录指定IPv6对等体/IPv6对等体组的会话状态和事件信息

1.4 控制路由信息的发布与接收

1.4.1 配置准备

1.4.2 配置IPv6 BGP引入其他路由

1.4.3 配置IPv6 BGP路由聚合

1.4.4 配置向IPv6对等体/IPv6对等体组发送缺省路由

1.4.5 配置路由信息的发布策略

1.4.6 配置路由信息的接收策略

1.4.7 配置IPv6 BGP与IGP路由同步

1.4.8 配置路由衰减

1.5 配置IPv6 BGP的路由属性

1.5.1 配置准备

1.5.2 配置IPv6 BGP路由管理的优先级、缺省LOCAL_PREF及NEXT_HOP属性

1.5.3 配置MED属性

1.5.4 配置AS_PATH属性

1.6 调整和优化IPv6 BGP网络

1.6.2 配置准备

1.6.3 配置IPv6 BGP的时钟

1.6.4 配置IPv6 BGP软复位

1.6.5 使能IPv6 BGP ORF能力

1.6.6 使能4字节AS号抑制功能

1.6.7 配置最大等价路由的条数

1.6.8 配置IPv6 BGP建立TCP连接时进行MD5认证

1.6.9 配置IPv6 BGP IPsec安全策略

1.6.10 配置BGP GTSM功能

1.7 组建大型IPv6 BGP网络

1.7.1 配置准备

1.7.2 配置IPv6 BGP对等体组

1.7.3 配置IPv6 BGP团体

1.7.4 配置IPv6 BGP路由反射器

1.8 配置6PE

1.8.2 配置准备

1.8.3 配置6PE基本功能

1.8.4 配置6PE可选功能

1.9 配置IPv6 BGP与BFD联动

1.10 IPv6 BGP显示和维护

1.10.1 IPv6 BGP显示

1.10.2 复位IPv6 BGP连接

1.10.3 清除IPv6 BGP信息

1.11 IPv6 BGP典型配置举例

1.11.1 IPv6 BGP基本配置

1.11.2 配置IPv6 BGP路由反射

1.11.3 配置6PE

1.11.4 配置IPv6 BGP IPsec安全策略

1.11.5 配置IPv6 BGP与BFD联动

1.12 IPv6 BGP常见错误配置举例

1.12.1 IPv6 BGP对等体关系不能建立

 


1 IPv6 BGP

说明

本章只列出了IPv6 BGP专有的配置与操作,其他相关内容请参见“三层技术-IP路由配置指导”中的“BGP”。

 

1.1  IPv6 BGP简介

传统的BGP-4只能管理IPv4的路由信息,对于使用其它网络层协议(如IPv6等)的应用,在跨自治系统传播时就受到一定限制。

为了提供对多种网络层协议的支持,IETF对BGP-4进行了扩展,形成MP-BGP(Multiprotocol Border Gateway Protocol,多协议边界网关协议)。其中,针对IPv6地址族的BGP扩展,称为IPv6 BGP。

为了实现对IPv6协议的支持,IPv6 BGP需要将IPv6网络层协议的信息反映到NLRI(Network Layer Reachability Information,网络层可达性信息)及NEXT_HOP属性中。

IPv6 BGP中引入的两个NLRI属性分别是:

·     MP_REACH_NLRI:Multiprotocol Reachable NLRI,多协议可达NLRI。用于发布可达路由及下一跳信息。

·     MP_UNREACH_NLRI:Multiprotocol Unreachable NLRI,多协议不可达NLRI。用于撤销不可达路由

IPv6 BGP中的NEXT_HOP属性用IPv6地址来表示,可以是IPv6全球单播地址或者链路本地地址。

IPv6 BGP是利用BGP的多协议扩展属性,来达到在IPv6网络中应用的目的,BGP协议原有的消息机制和路由机制并没有改变。

1.2  配置任务简介

表1-1 配置任务简介

配置任务

说明

详细配置

配置IPv6 BGP基本功能

配置IPv6对等体

必选

1.3.2 

配置IPv6 BGP发布本地IPv6路由

可选

1.3.3 

配置路由首选值

可选

1.3.4 

配置IPv6 BGP连接所使用的本地接口

可选

1.3.5 

配置EBGP连接的最大跳数

可选

1.3.6 

配置IPv6对等体/IPv6对等体组的描述信息

可选

1.3.7 

禁止与IPv6对等体/IPv6对等体组建立会话

可选

1.3.8 

记录指定IPv6对等体/IPv6对等体组的会话状态和事件信息

可选

1.3.9 

控制路由信息的发布与接收

配置IPv6 BGP引入其他路由

可选

1.4.2 

配置IPv6 BGP路由聚合

可选

1.4.3 

配置向IPv6对等体/IPv6对等体组发送缺省路由

可选

1.4.4 

配置路由信息的发布策略

可选

1.4.5 

配置路由信息的接收策略

可选

1.4.6 

配置IPv6 BGP与IGP路由同步

可选

1.4.7 

配置路由衰减

可选

1.4.8 

配置IPv6 BGP的路由属性

配置IPv6 BGP路由管理的优先级、缺省LOCAL_PREF及NEXT_HOP属性

可选

1.5.2 

配置MED属性

可选

1.5.3 

配置AS_PATH属性

可选

1.5.4 

调整和优化IPv6 BGP网络

配置IPv6 BGP的时钟

可选

1.6.3 

配置IPv6 BGP软复位

可选

1.6.4 

配置BGP ORF能力

可选

1.6.5 

使能4字节AS号抑制功能

可选

1.6.6 

配置最大等价路由的条数

可选

1.6.7 

配置IPv6 BGP建立TCP连接时进行MD5认证

可选

1.6.8 

配置IPv6 BGP IPsec安全策略

可选

1.6.9 

配置BGP GTSM功能

可选

1.6.10 

组建大型IPv6 BGP网络

配置IPv6 BGP对等体组

可选

1.7.2 

配置IPv6 BGP团体

可选

1.7.3 

配置IPv6 BGP路由反射器

可选

1.7.4 

配置6PE

配置6PE基本功能

必选

1.8.3 

配置6PE可选功能

可选

1.8.4 

配置IPv6 BGP与BFD联动

可选

1.9 

 

1.3  配置IPv6 BGP的基本功能

1.3.1  配置准备

在配置IPv6 BGP基本功能之前,需完成以下任务:

·     配置接口的网络层地址

·     在系统视图下通过ipv6命令使能IPv6报文转发功能

说明

必须首先创建对等体组,才能配置对等体组的基本功能。关于对等体组的创建请参见“1.7.2  配置IPv6 BGP对等体组”。

 

1.3.2  配置IPv6对等体

表1-2 配置IPv6对等体

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统没有运行BGP

为路由器指定ID

router-id router-id

可选

如果Loopback和其它接口没有配置IP地址,则该任务为必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

配置对等体

peer ipv6-address as-number as-number

必选

 

1.3.3  配置IPv6 BGP发布本地IPv6路由

表1-3 配置IPv6 BGP发布本地IPv6路由

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

将路由通告到IPv6 BGP路由表中

network ipv6-address prefix-length [ route-policy route-policy-name | short-cut ]

必选

缺省情况下,IPv6 BGP不通告任何路由

 

1.3.4  配置路由首选值

表1-4 配置路由首选值

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

为从IPv6对等体/IPv6对等体组接收的路由分配首选值

peer { ipv6-group-name | ipv6-address } preferred-value value

可选

缺省情况下,从IPv6对等体/IPv6对等体组接收的路由的首选值为0

IPv6 BGP-VPN实例视图下不支持ipv6-group-name参数

 

注意

当通过路由策略过滤IPv6路由时,路由的首选值将优先选取路由策略中设置的首选值。只有当路由策略里设置的首选值为0时,才选取peer { ipv6-group-name | ipv6-address } preferred-value value命令里设置的值。通过路由策略配置BGP IPv6路由信息首选值的相关配置可参考命令peer { group-name | ipv4-address | ipv6-address } route-policy route-policy-name { import | export }和“三层技术-IP路由命令参考/路由策略”中的apply preferred-value preferred-value

 

1.3.5  配置IPv6 BGP连接所使用的源接口

IPv6 BGP使用TCP作为其传输层协议,缺省情况下,IPv6 BGP使用到达对等体最佳路由的出接口作为与对等体/对等体组建立TCP连接的源接口。

当建立IPv6 BGP连接的路由器之间存在冗余链路时,如果路由器上的一个接口发生故障,链路状态变为down,建立TCP连接的源接口可能会随之发生变化,导致BGP需要重新建立TCP连接,造成网络振荡。为了避免该情况的发生,建议网络管理员使用Loopback接口建立IPv6 BGP连接,并将建立IPv6 BGP连接所使用的源接口配置为Loopback接口,来提高IPv6 BGP连接的可靠性和稳定性。

表1-5 配置IPv6 BGP连接所使用的源接口

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

指定与IPv6对等体/IPv6对等体组创建BGP会话时建立TCP连接使用的源接口

peer { ipv6-group-name | ipv6-address } connect-interface interface-type interface-number

必选

缺省情况下,IPv6 BGP使用到达IPv6对等体的最佳路由的出接口作为与IPv6对等体/IPv6对等体组创建BGP会话时建立TCP连接的源接口

 

说明

当建立BGP连接时,如果没有明确指定建立TCP连接的源接口,可能会由于无法根据到达BGP对等体的最优路由确定TCP连接源接口从而导致无法建立TCP连接,因此建议用户在此情况下配置BGP对等体时明确配置BGP会话建立TCP连接的源接口为指定接口。

 

1.3.6  配置非直接相连的邻居建立EBGP连接

表1-6 配置非直接相连的邻居建立EBGP连接

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置允许同非直接相连网络上的邻居建立EBGP连接

peer { ipv6-group-name | ipv6-address } ebgp-max-hop [ hop-count ]

必选

缺省情况下,不允许同非直接相连网络上的邻居建立EBGP连接

 

注意

通常情况下,EBGP对等体之间必须具有直连的物理链路,如果不满足这一要求,则必须使用peer ebgp-max-hop命令允许它们之间经过多跳建立TCP连接。但是,对于直连EBGP使用Loopback接口建立邻居关系,不需要peer ebgp-max-hop命令的配置。

 

1.3.7  配置IPv6对等体/IPv6对等体组的描述信息

表1-7 配置IPv6对等体/IPv6对等体组的描述信息

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置IPv6对等体/IPv6对等体组的描述信息

peer { ipv6-group-name | ipv6-address } description description-text

可选

缺省情况下,IPv6对等体/IPv6对等体组无描述信息

 

说明

如果配置对等体组的描述信息,需要先创建对等体组。

 

1.3.8  禁止与IPv6对等体/IPv6对等体组建立会话

表1-8 禁止与IPv6对等体/IPv6对等体组建立会话

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

禁止与IPv6对等体/IPv6对等体组建立会话

peer { ipv6-group-name | ipv6-address } ignore

必选

缺省情况下,允许与IPv6对等体/IPv6对等体组建立会话

 

1.3.9  记录指定IPv6对等体/IPv6对等体组的会话状态和事件信息

表1-9 记录指定IPv6对等体/IPv6对等体组的会话状态和事件信息

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

全局使能BGP日志记录功能

log-peer-change

可选

缺省情况下,使能BGP日志记录功能

进入IPv6地址族视图

ipv6-family

-

记录指定IPv6对等体/IPv6对等体组的会话状态和事件信息

peer { ipv6-group-name | ipv6-address } log-change

可选

缺省情况下,记录IPv6对等体/IPv6对等体组的会话状态和事件信息

 

说明

有关log-peer-change命令的详细信息请参见“三层技术-IP路由命令参考”中的“BGP”。

 

1.4  控制路由信息的发布与接收

控制IPv6 BGP的路由信息的发布和接收,包括对路由信息进行过滤,应用路由策略,路由衰减。

1.4.1  配置准备

在控制路由信息的发布与接收之前,需完成以下任务:

·     使能IPv6功能

·     配置IPv6 BGP基本功能

1.4.2  配置IPv6 BGP引入其他路由

表1-10 配置IPv6 BGP引入和过滤外部路由

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

允许将缺省路由引入到IPv6 BGP路由表中

default-route imported

可选

缺省情况下,IPv6 BGP不允许将缺省路由引入到IPv6 BGP路由表中

配置引入其它协议路由信息并通告

import-route protocol [ process-id [ med med-value | route-policy route-policy-name ] * ]

必选

缺省情况下,IPv6 BGP不引入且不通告其它协议的路由

 

说明

如果没有配置default-route imported命令,则使用import-route命令引入IGP路由时,不能引入IGP的缺省路由。

 

1.4.3  配置IPv6 BGP路由聚合

在中型或大型BGP网络中,在向对等体发布IPv6路由信息时,可以配置路由聚合,减小对等体路由表中的路由数量。BGP仅支持IPv6路由的手动聚合。

表1-11 配置IPv6路由聚合

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

-

进入IPv6地址族视图

ipv6-family

-

配置手动路由聚合

aggregate ipv6-address prefix-length [ as-set | attribute-policy route-policy-name | detail-suppressed | origin-policy route-policy-name | suppress-policy route-policy-name ] *

必选

缺省情况下,不进行路由聚合

 

1.4.4  配置向IPv6对等体/IPv6对等体组发送缺省路由

表1-12 配置向IPv6对等体/IPv6对等体组发送缺省路由

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置向IPv6对等体/IPv6对等体组发送缺省路由

peer { ipv6-group-name | ipv6-address } default-route-advertise [ route-policy route-policy-name ]

必选

缺省情况下,不向IPv6对等体/IPv6对等体组发布缺省路由

 

说明

执行peer default-route-advertise命令后,不论本地路由表中是否存在缺省路由,都将向指定IPv6对等体/IPv6对等体组发布一条下一跳地址为本地地址的缺省路由。

 

1.4.5  配置路由信息的发布策略

表1-13 配置路由信息的发布策略

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

对发布的路由进行过滤

filter-policy { acl6-number | ipv6-prefix ipv6-prefix-name } export [ protocol process-id ]

必选

缺省情况下,没有对发布的路由信息进行过滤

配置出方向路由策略

peer { ipv6-group-name | ipv6-address } route-policy route-policy-name export

必选

缺省情况下,没有指定IPv6对等体/IPv6对等体组的路由策略

IPv6 BGP-VPN实例视图下不支持ipv6-group-name参数

配置基于IPv6 ACL的路由过滤策略

peer { ipv6-group-name | ipv6-address } filter-policy acl6-number export

必选

缺省情况下,没有为IPv6对等体/IPv6对等体组配置基于IPv6 ACL的过滤策略

IPv6 BGP-VPN实例视图下不支持本命令

配置基于AS路径过滤列表的IPv6 BGP路由过滤策略

peer { ipv6-group-name | ipv6-address } as-path-acl as-path-acl-number export

必选

缺省情况下,没有为IPv6对等体/IPv6对等体组配置基于AS路径过滤列表的IPv6 BGP路由过滤策略

IPv6 BGP-VPN实例视图下不支持本命令

配置基于IPv6地址前缀列表的路由过滤策略

peer { ipv6-group-name | ipv6-address } ipv6-prefix ipv6-prefix-name export

必选

缺省情况下,没有指定IPv6对等体/IPv6对等体组基于IPv6前缀列表的过滤策略

IPv6 BGP-VPN实例视图下不支持本命令

 

说明

IPv6 BGP对引入的路由信息进行过滤后,会将符合条件的路由信息发布给IPv6 BGP对等体(Export)。指定protocol参数可以只对特定路由协议的信息进行过滤,如果没有指定此参数,则对所有要发布的IPv6 BGP路由信息进行过滤,包括引入的路由和使用network命令发布的路由。

 

1.4.6  配置路由信息的接收策略

表1-14 配置路由信息的接收策略

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

对接收的路由信息进行过滤

filter-policy { acl6-number | ipv6-prefix ipv6-prefix-name } import

必选

缺省情况下,不对接收的路由信息进行过滤

对接收的路由信息应用路由策略

peer { ipv6-group-name | ipv6-address } route-policy route-policy-name import

必选

缺省情况下,没有指定IPv6对等体/IPv6对等体组的路由策略

IPv6 BGP-VPN实例视图下不支持ipv6-group-name参数

配置基于IPv6 ACL的路由过滤策略

peer { ipv6-group-name | ipv6-address } filter-policy acl6-number import

必选

缺省情况下,没有为IPv6对等体/IPv6对等体组设置基于IPv6 ACL的路由过滤策略

IPv6 BGP-VPN实例视图下不支持本命令

配置基于AS路径过滤列表的IPv6 BGP路由过滤策略

peer { ipv6-group-name | ipv6-address } as-path-acl as-path-acl-number import

必选

缺省情况下,没有为IPv6对等体/IPv6对等体组设置基于AS路径过滤列表的IPv6 BGP路由过滤策略

IPv6 BGP-VPN实例视图下不支持本命令

配置基于IPv6地址前缀列表的路由过滤策略

peer { ipv6-group-name | ipv6-address } ipv6-prefix ipv6-prefix-name import

必选

缺省情况下,没有为IPv6对等体/IPv6对等体组设置基于IPv6前缀列表的路由过滤策略

IPv6 BGP-VPN实例视图下不支持本命令

配置允许从IPv6对等体/IPv6对等体组接收的最大IPv6地址前缀数

peer { ipv6-group-name | ipv6-address } route-limit limit [ percentage ]

可选

缺省情况下,允许从IPv6对等体/IPv6对等体组接收的IPv6地址最大地址前缀数无限制

IPv6 BGP-VPN实例视图下不支持本命令

说明

·     对IPv6 BGP接收的路由进行过滤,只有满足某些条件的路由才能被IPv6 BGP接收,并加到路由表中。

·     对等体组的成员可以与所在的组使用不同的入方向路由策略,即接收路由时,各对等体可以选择自己的策略。

 

1.4.7  配置IPv6 BGP与IGP路由同步

IPv6 BGP路由器收到一条IBGP路由,缺省只检查该路由的下一跳是否可达。如果可达,IPv6 BGP路由器就将这条IBGP路由发布给EBGP对等体。如果配置了同步特性,则需要同时满足以下条件,IPv6 BGP路由器才会将该IBGP路由发布给EBGP对等体:

·     该路由的下一跳可达;

·     在IGP路由表中存在一条active的路由,与该IBGP路由的目的网段完全相同。(IGP路由是否为active状态可以通过display ipv6 routing-table protocol命令来查看)

表1-15 配置IPv6 BGP与IGP路由同步

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置IPv6 BGP与IGP路由同步

synchronization

必选

缺省情况下,IPv6 BGP和IGP路由不同步

 

1.4.8  配置路由衰减

表1-16 配置路由衰减

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置IPv6 BGP路由衰减

dampening [ half-life-reachable half-life-unreachable reuse suppress ceiling | route-policy route-policy-name ]*

可选

缺省情况下,没有配置路由衰减

 

1.5  配置IPv6 BGP的路由属性

本节主要介绍使用各类路由属性来改变IPv6 BGP的选路策略。包括如下属性:

·     IPv6 BGP协议的优先级

·     缺省LOCAL_PREF属性值

·     MED属性

·     NEXT_HOP属性

·     AS_PATH属性

1.5.1  配置准备

在配置IPv6 BGP的路由属性之前,需完成以下任务:

·     使能IPv6功能

·     配置IPv6 BGP基本功能

1.5.2  配置IPv6 BGP路由管理的优先级、缺省LOCAL_PREF及NEXT_HOP属性

表1-17 配置IPv6 BGP协议的优先级、缺省LOCAL_PREF及NEXT_HOP属性

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

设定IPv6 BGP路由管理的优先级

preference { external-preference internal-preference local-preference | route-policy route-policy-name }

可选

缺省情况下,EBGP路由的管理优先级为255,IBGP路由的管理优先级为255,本地产生的IPv6 BGP路由的管理优先级为130

配置本地优先级的缺省值

default local-preference value

可选

缺省情况下,本地优先级的缺省值为100

配置发布路由时将自身地址作为下一跳

peer { ipv6-group-name | ipv6-address } next-hop-local

可选

缺省情况下,向EBGP IPv6对等体/IPv6对等体组发布路由时,将自身地址作为下一跳;向IBGP IPv6对等体/IPv6对等体发布路由时,下一跳不变

IPv6 BGP-VPN实例视图下不支持本命令

 

说明

·     在某些组网环境中,为保证IBGP邻居能够找到正确的下一跳,可以配置在向IBGP IPv6对等体/IPv6对等体组发布路由时,改变下一跳地址为自身地址。如果配置了IPv6 BGP负载分担,则不论是否配置了peer next-hop-local命令,本地路由器向IBGP IPv6对等体/IPv6对等体组发布路由时都先将下一跳地址改变为自身地址。

·     在第三方下一跳(即两个BGP连接在同一网段的广播网)这种特殊的组网环境中,缺省情况下,向EBGP IPv6对等体/IPv6对等体组发布路由时,下一跳不变;只有配置了peer next-hop-local命令,才将自身地址作为下一跳。

 

1.5.3  配置MED属性

表1-18 配置MED属性

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

配置系统的缺省MED值

default med med-value

可选

缺省情况下,系统缺省的MED值为0

配置允许比较来自不同AS邻居的路由的MED属性值

compare-different-as-med

可选

缺省情况下,不比较来自不同AS邻居的路由的MED属性值

IPv6 BGP-VPN实例视图下不支持本命令

配置根据路由来自的AS进行分组对MED排序优选

bestroute compare-med

可选

缺省情况下,不根据路由来自的AS进行分组对MED排序优选

IPv6 BGP-VPN实例视图下不支持本命令

配置允许比较联盟对等体的路由按MED值进行优选

bestroute med-confederation

可选

缺省情况下,比较联盟对等体的路由时不考虑MED值

IPv6 BGP-VPN实例视图下不支持本命令

 

1.5.4  配置AS_PATH属性

表1-19 配置AS_PATH属性

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置允许本地AS号在所接收的路由的AS_PATH属性中出现,并可同时配置允许重复的次数

peer { ipv6-group-name | ipv6-address } allow-as-loop [ number ]

可选

缺省情况下,不允许本地AS号重复

为IPv6对等体/IPv6对等体组配置一个虚拟的本地自治系统号

peer { ipv6-group-name | ipv6-address } fake-as as-number

可选

缺省情况下,没有为IPv6对等体/IPv6对等体组配置虚拟的本地自治系统号

禁止路由器将AS_PATH当作选路算法中的一个因素

bestroute as-path-neglect

可选

缺省情况下,路由器可以将AS_PATH当作选路算法中的一个因素

配置发送IPv6 BGP更新报文时不携带私有AS编号

peer { ipv6-group-name | ipv6-address } public-as-only

可选

缺省情况下,发送IPv6 BGP更新报文时携带私有自治系统号

配置用本地AS号替换AS_PATH属性中指定IPv6对等体/IPv6对等体组的AS号

peer { ipv6-group-name | ipv6-address } substitute-as

可选

缺省情况下,没有用本地AS号替换AS_PATH属性中指定IPv6对等体/IPv6对等体组的AS号

 

1.6  调整和优化IPv6 BGP网络

本节主要介绍配置IPv6 BGP时钟、软复位IPv6 BGP连接和配置最大等价路由的条数。

(1)     IPv6 BGP时钟

当对等体间建立了IPv6 BGP连接后,它们定时向对端发送Keepalive消息,以防止路由器认为IPv6 BGP连接已中断。若路由器在设定的连接保持时间(Holdtime)内未收到对端的Keepalive消息或任何其它类型的报文,则认为此IPv6 BGP连接已中断,从而退出此IPv6 BGP连接。

路由器在与对等体建立IPv6 BGP连接时,将比较双方保持时间,以数值较小者做为协商后的保持时间。如果协商结果为0,则不发送Keepalive消息,且不检测Holdtime是否超时。

(2)     软复位IPv6 BGP连接

IPv6 BGP的选路策略改变后,为了使新的策略生效,必须复位IPv6 BGP连接,但这样会造成短暂的IPv6 BGP连接中断。在目前的实现中,IPv6 BGP支持Route-refresh功能。当策略改变后,系统可以在不中断IPv6 BGP连接的情况下,自动对IPv6 BGP路由表进行动态刷新。

在所有IPv6 BGP路由器使能Route-refresh功能的情况下,如果IPv6 BGP的路由策略发生了变化,本地路由器会向对等体发布Route-refresh消息,收到此消息的对等体会将其路由信息重新发给本地IPv6 BGP路由器。这样,在不中断IPv6 BGP连接的情况下,就可以对IPv6 BGP路由表进行动态更新,并应用新的策略。

如果网络中存在有不支持Route-Refresh的路由器,则需要配置peer keep-all-routes命令,将其所有路由更新保存在本地;当路由策略发生变化时,系统将对IPv6 BGP路由表进行动态更新,并应用新的策略。

1.6.2  配置准备

在调整IPv6 BGP的时钟之前,需完成以下任务:

·     使能IPv6能力

·     配置IPv6 BGP基本功能

1.6.3  配置IPv6 BGP的时钟

表1-20 配置IPv6 BGP的时钟

步骤

操作

命令

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置IPv6 BGP定时器

配置IPv6 BGP的存活时间间隔与保持时间

timer keepalive keepalive hold holdtime

可选

缺省情况下,存活时间间隔为60秒,保持时间为180秒

配置指定IPv6对等体/IPv6对等体组的存活和保持时间

peer { ipv6-group-name | ipv6-address } timer keepalive keepalive hold holdtime

配置IPv6对等体/IPv6对等体组的发送同一路由更新报文的时间间隔

peer { ipv6-group-name | ipv6-address } route-update-interval interval

可选

缺省情况下,向IBGP对等体发送同一路由更新的时间间隔为15秒,向EBGP对等体发送同一路由更新的时间间隔为30秒

配置时间间隔为0时,表示立即向BGP对等体发送同一路由更新报文。

 

说明

·     使用timer命令配置的定时器比使用peer timer命令配置的定时器优先级要低。

·     设置的保持时间应该至少为存活时间间隔的三倍。

 

1.6.4  配置IPv6 BGP软复位

1. 使能Route-refresh功能

表1-21 使能Route-refresh功能

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

使能IPv6 BGP路由刷新功能

peer { ipv6-group-name | ipv6-address } capability-advertise route-refresh

可选

缺省情况下,使能IPv6 BGP路由刷新功能

 

2. 手工软复位IPv6 BGP

表1-22 手工软复位IPv6 BGP

步骤

操作

命令

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

保存所有来自IPv6对等体/IPv6对等体组的原始路由信息,即使这些路由没有通过已配置的入口策略

peer { ipv6-group-name | ipv6-address } keep-all-routes

可选

缺省情况下,不保存IPv6对等体/IPv6对等体组的原始路由信息

返回用户视图

return

-

手工对IPv6 BGP连接进行软复位

refresh bgp ipv6 { all | ipv6-address | group ipv6-group-name | external | internal } { export | import }

必选

 

说明

配置命令peer keep-all-routes后,不论是否使用了过滤策略,都将保存指定对等体发来的所有路由更新。当软复位IPv6 BGP连接时,这些信息可以用来重新生成IPv6 BGP路由。

 

1.6.5  使能IPv6 BGP ORF能力

BGP ORF是将本地入口策略通过Route-refresh报文推给邻居,当邻居需要向BGP对等体发送Update更新报文时,通过本地的路由策略后最后还需要进行ORF策略的过滤,只有通过ORF策略的路由信息才会发给BGP对等体,以达到减少BGP邻居间Update更新报文的交互,节省网络资源的目的。

使能BGP ORF能力后,本地和BGP对等体会通过Open报文协商ORF能力(即收发的报文里是否允许携带ORF信息,如果允许携带,是否可以携带非标准的ORF信息),当协商完毕并成功建立邻居关系后,可以通过特殊的Route-refresh报文交互ORF信息。

ORF能力协商成功需要两端的配置来保证,关于两端参数的选择请参见表1-24

表1-23 配置BGP ORF能力

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

使能BGP路由刷新功能

peer { group-name | ipv6-address } capability-advertise route-refresh

必选

缺省情况下,BGP路由刷新功能处于使能状态

使能BGP ORF非标准功能

peer { group-name | ipv6-address } capability-advertise orf non-standard

可选

缺省情况下,BGP ORF能力支持RFC5291,RFC5292的标准能力

使能BGP ORF地址前缀能力协商功能

peer { group-name | ip-address | ipv6-address } capability-advertise orf ipv6-prefix { both | receive | send }

必选

缺省情况下,BGP 不支持ORF 地址前缀的能力协商

 

表1-24 both、send、receive参数选择以及配置效果描述表

本地选择参数

对端选择参数

协商成功后

send

receive

本端的ORF发送能力,对端的ORF接收能力

both

receive

send

本端的ORF接收能力,对端的ORF发送能力

both

both

both

双向的ORF发送和接收能力

 

1.6.6  使能4字节AS号抑制功能

通常情况下,设备在与对端设备建立IPv6 BGP对等体连接关系时会发送IPv6 BGP Open消息,在消息中的Optional parameters字段携带信息:说明AS号取值占用4字节(即取值范围为1~4294967295)。此时,如果对端设备不支持AS号取值为4字节(比如只支持2字节),则连接关系无法建立。

为了解决上述问题,您可以使能4字节AS号抑制功能:当对端设备不支持AS号取值为4字节时,设备发出的IPv6 BGP Open消息仍然可以被对端设备正常识别,从而IPv6 BGP对等体连接关系可以成功建立。

表1-25 使能4字节AS号抑制功能

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

-

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

使能4字节AS号抑制功能

peer { group-name | ipv6-address } capability-advertise suppress-4-byte-as

必选

缺省情况下,设备没有使能4字节AS号抑制功能

 

注意

如果对端设备支持AS号取值为4字节,请不要使能该功能,否则会导致IPv6 BGP对等体之间的连接关系无法建立。

 

1.6.7  配置最大等价路由的条数

表1-26 配置最大等价路由的条数

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

配置进行IPv6 BGP负载分担的路由条数

balance  [ ebgp | ibgp ] number

必选

缺省情况下,不进行负载分担

 

1.6.8  配置IPv6 BGP建立TCP连接时进行MD5认证

IPv6 BGP使用TCP作为传输层协议,可靠性有一定保证。为了提高IPv6 BGP的安全性,可以配置IPv6 BGP在建立TCP连接时进行MD5认证,认证通过后才能建立TCP连接。如果认证失败,则不能建立TCP连接。

表1-27 配置IPv6 BGP建立TCP连接时进行MD5认证

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置IPv6 BGP建立TCP连接时进行MD5认证

peer { ipv6-group-name | ipv6-address } password { cipher | simple } password

可选

缺省情况下,IPv6 BGP建立TCP连接时不进行MD5认证

 

说明

·     IPv6 BGP的MD5认证并不能对BGP报文进行认证。

·     如果启用MD5认证,参与认证的双方必须配置完全一致的认证方式和密码,否则将因为无法通过认证而不能建立TCP连接。

 

1.6.9  配置IPv6 BGP IPsec安全策略

从安全性角度来考虑,为了避免路由信息外泄或者对路由器进行恶意攻击,IPv6 BGP提供基于IPsec的报文验证功能。

路由器在发送的IPv6 BGP报文中会携带配置好的IPsec安全策略的SPI(Security Parameter Index,安全参数索引)值,接收报文时通过SPI值进行IPsec安全策略匹配:只有策略匹配的报文才能接收;否则将不会接收报文,不能正常建立邻居和学习路由。

1. 配置准备

配置IPv6 BGP IPsec安全策略之前,需要满足下面配置:

·     安全提议已经创建;

·     IPsec安全策略已经创建。

关于安全提议和IPsec安全策略的详细配置过程,请参考“安全配置指导”中的“IPsec”。

2. 配置IPv6 BGP IPsec安全策略

表1-28 配置IPv6 BGP IPsec安全策略

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

-

进入IPv6地址族视图

ipv6-family

-

配置IPv6 BGP对等体/对等体组应用IPsec安全策略

peer { group-name | ip-address } ipsec-policy policy-name

必选

缺省情况下,IPv6 BGP对等体/对等体组没有应用IPsec安全策略

 

说明

IPv6 BGP IPsec安全策略只支持手工配置方式,具体配置请参见“安全配置指导”中的“IPsec”。

 

1.6.10  配置BGP GTSM功能

当攻击者向网络设备发送大量有效的报文对其进行攻击时,网络设备往往会因为有限资源(如CPU)消耗过大,而不能处理正常业务甚至瘫痪。例如,攻击者向某台路由器不断的发送仿真BGP协议报文,路由器收到这些报文后,发现是发送给本设备的,则不辨别其合法性,直接上送CPU处理,从而导致系统异常繁忙,CPU占用率高。GTSM(Generalized TTL Security Mechanism,通用TTL安全保护机制)功能能够帮助解决这个问题。

GTSM功能通过检查IPv6 BGP报文头中的Hop Limit值是否在一个预先定义好的范围内,对IP层以上业务进行保护,增强系统的安全性,避免设备受到CPU利用(CPU-utilization)类型的攻击(如CPU过载等)。其基本原理为:配置BGP GTSM功能时,用户可以指定GTSM的合法跳数为hop-count,则合法的TTL范围为255-“hop-count”+1到255。当底层检测到来自该邻居的报文Hop Limit值在该合法范围内时,才上送CPU处理;当底层检测到来自该邻居的报文Hop Limit值不在该合法范围内时,直接丢弃报文,不再上送CPU处理。

另外,当配置GTSM功能后,设备会将发送报文的初始Hop Limit设置为255。所以,GTSM主要用于检测直连EBGP邻居报文的有效性,此时可以提供最佳保护效果;对于非直连EBGP或IBGP邻居的保护效果依赖于组网中间设备的安全性(因为中间设备可能对Hop Limit值进行篡改)。

表1-29 配置BGP GTSM功能

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

-

进入IPv6地址族视图

ipv6-family

-

配置对邻居的IPv6报文进行GTSM安全检测

peer { group-name | ipv6-address } ttl-security hops hop-count

必选

缺省情况下,不对邻居的IPv6 BGP报文进行GTSM安全检测

 

注意

·     该配置命令和peer ebgp-max-hop命令互斥,不能同时配置。

·     使用BGP GTSM功能时,要求本设备和邻居设备同时配置本特性,hop-count值可以不同,只要能够满足合法性检查。

 

1.7  组建大型IPv6 BGP网络

为方便管理,减少重复配置操作,管理员将一些享有相同更新策略的IPv6 BGP对等体划分到一个逻辑组织,这些组织就称为对等体组。只须对一个对等体组配置策略,该策略对组内所有成员都有效。

当对等体组的配置变化时,每个组员的配置也相应变化。对某些属性可以指定组员的IPv6地址进行配置,从而使指定组员在这些属性上不受对等体组配置的影响。

通常将同一自治系统的对等体配置为一个对等体组,当然,也可以将其它自治系统的对等体加入到该组。所有IBGP对等体可配置为另一个对等体组,也可以根据业务逻辑创建对等体组。

对等体组可以使一组对等体共享相同的策略,而利用团体可以使多个AS中的一组IPv6 BGP路由器共享相同的策略。团体是一个路由属性,在IPv6 BGP对等体之间传播,它并不受到AS范围的限制。

为保证IBGP对等体之间的连通性,需要在IBGP对等体之间建立全连接关系。当IBGP对等体数目很多时,建立全连接网的开销很大。路由反射器和联盟是解决这个问题的两种方法。

IPv6 BGP联盟的配置方式与BGP相同,这里不再赘述。以下主要介绍:

·     配置IPv6 BGP对等体组

·     配置IPv6 BGP团体

·     配置IPv6 BGP路由反射器

1.7.1  配置准备

在配置IPv6 BGP对等体组之前,需完成以下任务:

·     相邻节点网络层互通

·     启动BGP,配置Router ID

1.7.2  配置IPv6 BGP对等体组

1. 创建IBGP对等体组

表1-30 创建IBGP对等体组

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统没有运行BGP

进入IPv6地址族视图

ipv6-family

-

创建IBGP对等体组

group ipv6-group-name [ internal ]

必选

将对等体加入已存在的对等体组

peer ipv6-address group ipv6-group-name [ as-number as-number ]

必选

缺省情况下,对等体不属于任何对等体组

 

2. 创建纯EBGP对等体组

表1-31 创建纯EBGP对等体组

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统没有运行BGP

进入IPv6地址族视图

ipv6-family

-

创建EBGP对等体组

group ipv6-group-name external

必选

配置对等体组的AS号

peer ipv6-group-name as-number as-number

必选

缺省情况下,对等体组无AS号

在已创建的对等体组中加入IPv6对等体

peer ipv6-address group ipv6-group-name

必选

缺省情况下,对等体不属于任何对等体组

 

说明

·     在创建纯EBGP对等体时,需要指定对等体组的自治系统号。

·     如果对等体组中已经加入了对等体,那么不能够为该对等体组指定自治系统号。

 

3. 创建混合EBGP对等体组

表1-32 创建混合EBGP对等体组

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统没有运行BGP

进入IPv6地址族视图

ipv6-family

-

创建EBGP对等体组

group ipv6-group-name external

必选

设置IPv6对等体的AS号

peer ipv6-address as-number as-number

必选

缺省情况下,IPv6对等体无AS号

加入已创建的IPv6对等体

peer ipv6-address group ipv6-group-name

必选

缺省情况下,对等体不属于任何对等体组

 

说明

在创建混合EBGP对等体组时,需要单独创建对等体,并可设置不同的自治系统号,但不能设置对等体组的自治系统号。

 

1.7.3  配置IPv6 BGP团体

1. 配置向IPv6对等体/IPv6对等体组发布团体属性

表1-33 配置向IPv6对等体/IPv6对等体组发布团体属性

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统没有运行BGP

进入IPv6地址族视图

ipv6-family

-

配置将团体属性传给IPv6对等体/IPv6对等体组

peer { ipv6-group-name | ipv6-address } advertise-community

必选

缺省情况下,不将团体属性发布给任何IPv6对等体/IPv6对等体组

配置将扩展团体属性传给IPv6对等体/IPv6对等体组

peer { ipv6-group-name | ipv6-address } advertise-ext-community

必选

缺省情况下,不将扩展团体属性发布给任何IPv6对等体/IPv6对等体组

 

2. 对发布的路由信息应用路由策略

表1-34 对发布的路由信息应用路由策略

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置出方向路由策略

peer { ipv6-group-name | ipv6-address } route-policy route-policy-name export

必选

缺省情况下,不指定IPv6对等体/IPv6对等体组的路由策略

 

说明

·     配置IPv6 BGP团体时,必须使用路由策略来定义具体的团体属性,然后在发布路由信息时应用此路由策略。

·     关于路由策略的配置,请参见“三层技术-IP路由配置指导”中的“路由策略”。

 

1.7.4  配置IPv6 BGP路由反射器

表1-35 配置IPv6 BGP路由反射器

操作

命令

说明

进入系统视图

system-view

-

进入BGP视图

bgp as-number

必选

进入IPv6地址族视图

ipv6-family

-

配置将本机作为路由反射器,并将IPv6对等体/IPv6对等体组作为路由反射器的客户

peer { ipv6-group-name | ipv6-address } reflect-client

必选

缺省情况下,没有配置路由反射器及其客户

使能客户机之间的路由反射

reflect between-clients

可选

缺省情况下,允许客户到客户的路由反射

配置路由反射器的集群ID

reflector cluster-id cluster-id

可选

缺省情况下,每个路由反射器是使用自己的Router ID作为集群ID

 

说明

·     通常情况下,路由反射器的客户之间不要求是全连接的,路由缺省通过反射器从一个客户反射到其它客户;如果客户之间是全连接的,可以禁止客户间的反射,以便减少开销。

·     当一个集群里有多个路由反射器时,需要给所有位于同一个集群内的路由反射器配置相同的Cluster_ID,以避免路由循环。

 

1.8  配置6PE

6PE(IPv6 Provider Edge,IPv6供应商边缘)是一种过渡技术,ISP可以利用已有的IPv4骨干网为分散用户的IPv6网络提供接入能力,使得IPv6孤岛的CE(Customer Edge,用户网络边缘)路由器穿过当前已存在的IPv4 PE路由器进行通信。

6PE的主要思想是:

·     6PE路由器将用户的IPv6路由信息转换为带有标签的IPv6路由信息;

·     通过BGP会话扩散到ISP的IPv4骨干网中;

·     6PE路由器转发IPv6报文时,首先会将进入骨干网隧道的数据流打上标签。隧道可以是GRE隧道或者MPLS LSP等。

运营商网络的IGP协议可以是OSPF或IS-IS;CE和6PE之间可以是IPv6静态路由、IPv6 IGP协议或者IPv6 EBGP协议。

图1-1 6PE组网图

 

说明

P(Provider)路由器:服务提供商网络中的骨干路由器,不与CE直接相连。P设备只需要具备基本MPLS转发能力。

 

当ISP想利用自己原有的IPv4/MPLS网络,使其通过MPLS具有IPv6流量交换能力时,只需要升级PE路由器就可以了。所以对于运营商来说,使用6PE技术作为IPv6过渡机制无疑是一个高效的解决方案,其操作风险也会小得多。

1.8.2  配置准备

在配置6PE之前,需完成以下任务:

·     IPv4 MPLS骨干网配置MPLS基本能力,具体配置请参见“MPLS配置指导”中的“MPLS基本”

·     PE设备之间配置IPv6 BGP对等体,具体请参见“三层技术-IP路由配置指导”中的“BGP”

·     如果是对等体组,需要在BGP视图下创建该对等体组

1.8.3  配置6PE基本功能

在PE设备上做如下配置:

表1-36 配置6PE

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统不运行BGP

指定6PE对等体/对等体组的AS号

peer { ipv4-group-name | ipv4-address } as-number as-number

必选

缺省情况下,6PE对等体/对等体组无AS号

进入IPv6地址族视图

ipv6-family

-

激活指定6PE对等体/对等体组

peer { ipv4-group-name | ipv4-address | ipv6-address } enable

必选

缺省情况下,6PE对等体/对等体组是未被激活的

配置当前路由器能够与指定6PE对等体交换带标签的IPv6路由

peer { ipv4-group-name | ipv4-address } label-route-capability

必选

缺省情况下,当前路由器不能够与指定6PE对等体交换带标签的IPv6路由

 

1.8.4  配置6PE可选功能

表1-37 配置6PE可选功能

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统不运行BGP

指定6PE对等体/对等体组的AS号

peer { ipv4-group-name | ipv4-address } as-number as-number

必选

缺省情况下,对等体/对等体组无AS号

进入IPv6地址族视图

ipv6-family

-

使能6PE对等体

peer { ipv4-group-name | ipv4-address | ipv6-address } enable

必选

缺省情况下,没有使能6PE对等体/对等体组

配置将团体属性发布给6PE对等体/对等体组

peer { group-name | ipv4-address } advertise-community

可选

缺省情况下,不将团体属性发布给任何6PE对等体/对等体组

配置将扩展团体属性发布给6PE对等体/对等体组

peer { group-name | ipv4-address } advertise-ext-community

可选

缺省情况下,不将扩展团体属性发布给任何6PE对等体/对等体组

配置允许本地AS号在所接收的路由的AS_PATH属性中出现,并可同时配置允许重复的次数

peer { group-name | ipv4-address } allow-as-loop [ number ]

可选

缺省情况下,不允许本地AS号重复

为6PE对等体/对等体组I配置基于AS路径过滤列表的IPv6 BGP路由过滤策略

peer { group-name | ipv4-address } as-path-acl as-path-acl-number { import | export }

可选

缺省情况下,没有为6PE对等体/对等体组配置基于AS路径过滤列表的IPv6 BGP路由过滤策略

向6PE对等体/对等体组发送缺省路由

peer { group-name | ipv4-address } default-route-advertise [ route-policy route-policy-name ]

可选

缺省情况下,不向6PE对等体/对等体组发送缺省路由

为6PE对等体/对等体组配置基于IPv6 ACL的过滤策略

peer { group-name | ipv4-address } filter-policy acl6-number { import | export }

可选

缺省情况下,没有为6PE对等体/对等体组配置基于IPv6 ACL的过滤策略

将6PE对等体加入已存在的对等体组

peer ipv4-address group group-name [ as-number as-number ]

可选

缺省情况下,6PE对等体不属于任何对等体组

配置6PE对等体/对等体组基于IPv6地址前缀列表的路由过滤策略

peer { group-name | ipv4-address } ipv6-prefix ipv6-prefix-name { import | export }

可选

缺省情况下,没有6PE为对等体/对等体组配置基于IPv6前缀列表的路由过滤策略

保存所有来自6PE对等体/对等体组的原始路由信息,即使这些路由没有通过已配置的入口策略

peer { group-name | ipv4-address } keep-all-routes

可选

缺省情况下,不保存6PE对等体/对等体组的原始路由信息

配置将本机作为路由反射器,并将6PE对等体/对等体组作为路由反射器的客户

peer { group-name | ipv4-address } reflect-client

可选

缺省情况下,没有配置路由反射器及其客户

配置允许从6PE对等体/对等体组接收的最大IPv6地址前缀数

peer { group-name | ipv4-address } route-limit limit [ percentage ]

可选

缺省情况下,允许从6PE对等体/对等体组接收的最大IPv6地址前缀数无限制

对来自6PE对等体/对等体组的路由或向对等体/对等体组发布的路由指定路由策略

peer { group-name | ipv4-address } route-policy route-policy-name { import | export }

可选

缺省情况下,不指定6PE对等体/对等体组的路由策略

显示6PE对等体/对等体组信息

display bgp ipv6 peer [ group-name log-info | ipv4-address verbose ] [ | { begin | exclude | include } regular-expression ]

可选

display命令可在任意视图下执行

显示向指定的6PE对等体发送或者从指定的对等体收到的路由信息

display bgp ipv6 routing-table peer ipv4-address { advertised-routes | received-routes } [ network-address prefix-length | statistic ] [ | { begin | exclude | include } regular-expression ]

可选

display命令可在任意视图下执行

软复位指定的BGP 6PE连接

refresh bgp ipv6 ipv4-address { export | import }

可选

refresh命令在用户视图下执行

复位指定的BGP 6PE连接

reset bgp ipv6 ipv4-address

可选

reset命令在用户视图下执行

 

1.9  配置IPv6 BGP与BFD联动

IPv6 BGP协议通过存活时间(Keepalive)定时器和保持时间(Holdtime)定时器来维护邻居关系。但这些定时器都是秒级的,而且根据协议规定,设置的保持时间应该至少为存活时间间隔的三倍。这样使得IPv6 BGP邻居关系的检测比较慢,对于报文收发速度快的接口会导致大量报文丢失。通过配置IPv6 BGP与BFD联动,使得BFD能够为IPv6 BGP邻居之间的链路提供更快速的检测。当邻居之间的链路出现故障时,能够加快IPv6 BGP协议的收敛速度。

表1-38 配置IPv6 BGP与BFD联动

操作

命令

说明

进入系统视图

system-view

-

启动BGP,进入BGP视图

bgp as-number

必选

缺省情况下,系统不运行BGP

进入IPv6地址族视图或IPv6 BGP-VPN实例视图

ipv6-family [ vpn-instance vpn-instance-name ]

-

在指定邻居上使能BFD

peer ipv6-address bfd

必选

缺省情况下,IPv6 BGP的所有对等体邻居上都没有使能BFD链路检测功能

 

说明

·     配置BFD之前,需要使能BGP功能。

·     在BGP使能GR能力后,请慎用BFD。因为当链路故障时,系统可能还没来得及启用GR处理流程,BFD已经检测到链路故障了,从而导致GR失败。

·     有关BFD的介绍和基本功能配置,请参见“可靠性配置指导”中的“BFD”。

 

1.10  IPv6 BGP显示和维护

1.10.1  IPv6 BGP显示

在完成上述配置后,在任意视图下执行display命令可以显示配置后IPv6 BGP的运行情况,通过查看显示信息验证配置的效果。

表1-39 显示IPv6 BGP的运行状态

操作

命令

显示对等体组信息

display bgp ipv6 group [ ipv6-group-name ] [ | { begin | exclude | include } regular-expression ]

显示IPv6 BGP发布的IPv6路由信息

display bgp ipv6 network [ | { begin | exclude | include } regular-expression ]

显示AS路径信息

display bgp ipv6 paths [ as-regular-expression | | { begin | exclude | include } regular-expression ]

显示IPv6对等体/IPv6对等体组信息

display bgp ipv6 peer [ group-name log-info | ipv4-address verbose | ipv6-address { log-info | verbose } | verbose ] [ | { begin | exclude | include } regular-expression ]

显示收到的邻居ORF信息中的前缀信息

display bgp ipv6 peer { ip-address | ipv6-address } received ipv6-prefix [ | { begin | exclude | include } regular-expression ]

显示IPv6 BGP路由信息

display bgp ipv6 routing-table [ ipv6-address prefix-length ] [ | { begin | exclude | include } regular-expression ]

显示匹配指定AS路径过滤列表的路由

display bgp ipv6 routing-table as-path-acl as-path-acl-number [ | { begin | exclude | include } regular-expression ]

显示指定IPv6 BGP团体的路由信息

display bgp ipv6 routing-table community [ aa:nn<1-13> ] [ no-advertise | no-export | no-export-subconfed ]* [ whole-match ] [ | { begin | exclude | include } regular-expression ]

显示匹配指定IPv6 BGP团体列表的路由信息

display bgp ipv6 routing-table community-list { { basic-community-list-number | comm-list-name } [ whole-match ] | adv-community-list-number } [ | { begin | exclude | include } regular-expression ]

显示IPv6 BGP衰减的路由

display bgp ipv6 routing-table dampened [ | { begin | exclude | include } regular-expression ]

显示IPv6 BGP路由衰减参数

display bgp ipv6 routing-table dampening parameter [ | { begin | exclude | include } regular-expression ]

显示来自不同自治系统的IPv6 BGP路由

display bgp ipv6 routing-table different-origin-as [ | { begin | exclude | include } regular-expression ]

显示IPv6 BGP路由振荡统计信息

display bgp ipv6 routing-table flap-info [ regular-expression as-regular-expression | [ as-path-acl as-path-acl-number | ipv6-address prefix-length [ longer-match ] ] [ | { begin | exclude | include } regular-expression ] ]

显示IPv6 BGP的IPv6标签路由信息

display bgp ipv6 routing-table label [ | { begin | exclude | include } regular-expression ]

显示向指定的IPv4/IPv6 BGP对等体发送或者从指定的IPv4/IPv6 BGP对等体收到的路由信息

display bgp ipv6 routing-table peer { ipv4-address | ipv6-address } { advertised-routes | received-routes } [ network-address prefix-length | statistic ] [ | { begin | exclude | include } regular-expression ]

显示匹配AS正则表达式的IPv6路由信息

display bgp ipv6 routing-table regular-expression as-regular-expression

显示IPv6 BGP的路由统计信息

display bgp ipv6 routing-table statistic [ | { begin | exclude | include } regular-expression ]

 

1.10.2  复位IPv6 BGP连接

当BGP路由策略或协议发生变化后,如果需要通过复位IPv6 BGP连接使新的配置生效,请在用户视图下进行下列配置。

表1-40 复位IPv6 BGP连接

操作

命令

手工软复位IPv6 BGP连接

refresh bgp ipv6 { ipv4-address | ipv6-address | all | external | group ipv6-group-name | internal } { export | import }

复位所有IPv6 BGP连接

reset bgp ipv6 { as-number | ipv4-address | ipv6-address | all | external | group group-name | internal }

 

1.10.3  清除IPv6 BGP信息

在用户视图下执行reset命令可清除IPv6 BGP路由的统计信息。

表1-41 清除IPv6 BGP信息

操作

命令

清除IPv6 BGP路由的衰减信息并释放被抑制的路由

reset bgp ipv6 dampening [ ipv6-address prefix-length ]

清除IPv6 BGP路由的振荡统计信息

reset bgp ipv6 flap-info [ ipv6-address/prefix-length | as-path-acl as-path-acl-number | regexp as-path-regexp ]

reset bgp ipv6 peer-ipv6-address flap-info

 

1.11  IPv6 BGP典型配置举例

说明

IPv6 BGP的配置举例多数与BGP的配置举例相似,本节不再一一列出。其他配置例请参见“三层技术-IP路由配置指导”中的“BGP”。

 

1.11.1  IPv6 BGP基本配置

1. 组网需求

·     如图1-2所示,所有路由器均运行IPv6 BGP协议;

·     Router A和Router B之间建立EBGP连接;

·     Router B、Router C和Router D之间建立IBGP全连接。

2. 组网图

图1-2 IPv6 BGP基本配置组网图

 

3. 配置步骤

(1)     配置各接口的IPv6地址(略)

(2)     配置IBGP连接

# 配置Router B。

<RouterB> system-view

[RouterB] ipv6

[RouterB] bgp 65009

[RouterB-bgp] router-id 2.2.2.2

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] peer 9:1::2 as-number 65009

[RouterB-bgp-af-ipv6] peer 9:3::2 as-number 65009

[RouterB-bgp-af-ipv6] quit

[RouterB-bgp] quit

# 配置Router C。

<RouterC> system-view

[RouterC] ipv6

[RouterC] bgp 65009

[RouterC-bgp] router-id 3.3.3.3

[RouterC-bgp] ipv6-family

[RouterC-bgp-af-ipv6] peer 9:3::1 as-number 65009

[RouterC-bgp-af-ipv6] peer 9:2::2 as-number 65009

[RouterC-bgp-af-ipv6] quit

[RouterC-bgp] quit

# 配置Router D。

<RouterD> system-view

[RouterD] ipv6

[RouterD] bgp 65009

[RouterD-bgp] router-id 4.4.4.4

[RouterD-bgp] ipv6-family

[RouterD-bgp-af-ipv6] peer 9:1::1 as-number 65009

[RouterD-bgp-af-ipv6] peer 9:2::1 as-number 65009

[RouterD-bgp-af-ipv6] quit

[RouterD-bgp] quit

(3)     配置EBGP连接

# 配置Router A。

<RouterA> system-view

[RouterA] ipv6

[RouterA] bgp 65008

[RouterA-bgp] router-id 1.1.1.1

[RouterA-bgp] ipv6-family

[RouterA-bgp-af-ipv6] peer 10::1 as-number 65009

[RouterA-bgp-af-ipv6] quit

[RouterA-bgp] quit

# 配置Router B。

[RouterB] bgp 65009

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] peer 10::2 as-number 65008

[RouterB-bgp-af-ipv6] quit

[RouterB-bgp] quit

# 查看Router B的对等体信息。

[RouterB] display bgp ipv6 peer

 

 BGP local router ID : 2.2.2.2

 Local AS number : 65009

 Total number of peers : 3                 Peers in established state : 3

 

  Peer           AS  MsgRcvd  MsgSent  OutQ PrefRcv Up/Down  State

 

  10::2       65008        3        3     0       0 00:01:16 Established

  9:3::2      65009        2        3     0       0 00:00:40 Established

  9:1::2      65009        2        4     0       0 00:00:19 Established

# 查看Router C的对等体信息。

[RouterC] display bgp ipv6 peer

 

 BGP local router ID : 3.3.3.3

 Local AS number : 65009

 Total number of peers : 2                 Peers in established state : 2

 

  Peer           AS  MsgRcvd  MsgSent  OutQ PrefRcv Up/Down  State

 

  9:3::1      65009        4        4     0       0 00:02:18 Established

  9:2::2      65009        4        5     0       0 00:01:52 Established

可以看出,Router A和Router B之间建立了EBGP连接,Router B、Router C和Router D之间建立了IBGP连接。

1.11.2  配置IPv6 BGP路由反射

1. 组网需求

Router B接收了一个经过EBGP的更新报文并将之传给Router C。Router C被配置为路由反射器,它有两个客户机:Router B和Router D。

Router B和Router D间不需要建立IBGP连接,当Router C接收了来自Router B的路由更新时,它将此信息反射给Router D;反之,接收到的来自Router D的路由信息也会被反射给Router B。

2. 组网图

图1-3 配置IPv6 BGP路由反射器组网图

 

3. 配置步骤

(1)     配置各接口的IPv6地址(略)

(2)     配置IPv6 BGP基本功能

# 配置Router A。

<RouterA> system-view

[RouterA] ipv6

[RouterA] bgp 100

[RouterA-bgp] router-id 1.1.1.1

[RouterA-bgp] ipv6-family

[RouterA-bgp-af-ipv6] peer 100::2 as-number 200

[RouterA-bgp-af-ipv6] network 1:: 64

# 配置Router B。

<RouterB> system-view

[RouterB] ipv6

[RouterB] bgp 200

[RouterB-bgp] router-id 2.2.2.2

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] peer 100::1 as-number 100

[RouterB-bgp-af-ipv6] peer 101::1 as-number 200

[RouterB-bgp-af-ipv6] peer 101::1 next-hop-local

# 配置Router C。

<RouterC> system-view

[RouterC] ipv6

[RouterC] bgp 200

[RouterC-bgp] router-id 3.3.3.3

[RouterC-bgp] ipv6-family

[RouterC-bgp-af-ipv6] peer 101::2 as-number 200

[RouterC-bgp-af-ipv6] peer 102::2 as-number 200

# 配置Router D。

<RouterD> system-view

[RouterD] ipv6

[RouterD] bgp 200

[RouterD-bgp] router-id 4.4.4.4

[RouterD-bgp] ipv6-family

[RouterD-bgp-af-ipv6] peer 102::1 as-number 200

(3)     配置路由反射器

# 配置Router C作为路由反射器,Router B和Router D是它的两个客户机。

[RouterC-bgp-af-ipv6] peer 101::2 reflect-client

[RouterC-bgp-af-ipv6] peer 102::2 reflect-client

4. 验证配置结果

在Router B上用命令display bgp ipv6 routing-table,可以看到Router B已知道网络1::/64的存在。

在Router D上用命令display bgp ipv6 routing-table,可以看到Router D也知道网络1::/64的存在。

1.11.3  配置6PE

1. 组网需求

·     路由器PE 1和PE 2支持6PE特性;

·     路由器CE 1和CE 2支持IPv6协议;

·     PE路由器之间是运营商的IPv4/MPLS网络,PE之间需要建立IPv4的IBGP连接,IGP使用OSPF路由协议;

·     CE路由器所在的网络为IPv6网络,CE与PE之间部署静态路由指导IPV6转发;

·     要求使用6PE特性将用户的IPv6网络通过运营商的IPv4/MPLS网络连接起来。

2. 组网图

图1-4 配置6PE组网图

 

3. 配置过程

(1)     配置CE 1

# 使能IPv6报文转发功能。

<CE1> system-view

[CE1] ipv6

# 配置接口地址。

[CE1] interface serial 2/2/0

[CE1-Serial2/2/0] ipv6 address auto link-local

[CE1-Serial2/2/0] quit

[CE1] interface loopback0

[CE1-LoopBack0] ipv6 address 1::1/128

[CE1-LoopBack0] quit

# 配置静态路由,与PE 1建立IPv6连接。

[CE1] ipv6 route-static :: 0 serial2/2/0

(2)     配置PE 1

# 使能IPv6报文转发功能、MPLS和LDP协议。

<PE1> system-view

[PE1] ipv6

[PE1] mpls lsr-id 2.2.2.2

[PE1] mpls

[PE1-mpls] lsp-trigger all

[PE1-mpls] quit

[PE1] mpls ldp

[PE1-mpls-ldp] quit

# 配置接口Serial2/2/0的IPv6链路本地地址。

[PE1] interface serial 2/2/0

[PE1-Serial2/2/0] ipv6 address auto link-local

[PE1-Serial2/2/0] quit

# 配置接口Serial2/2/1地址,并使能MPLS和LDP协议。

[PE1] interface serial 2/2/1

[PE1-Serial2/2/1] ip address 1.1.1.1 16

[PE1-Serial2/2/1] mpls

[PE1-Serial2/2/1] mpls ldp

[PE1-Serial2/2/1] quit

# 配置接口Loopback0地址。

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 2.2.2.2 32

[PE1-LoopBack0] ipv6 address 2::2/128

[PE1-LoopBack0] quit

# 配置IBGP,使能对等体的6PE能力,并引入IPv6的直连和静态路由。

[PE1] bgp 65100

[PE1-bgp] peer 3.3.3.3 as-number 65100

[PE1-bgp] peer 3.3.3.3 connect-interface loopback 0

[PE1-bgp] ipv6-family

[PE1-bgp-af-ipv6] import-route direct

[PE1-bgp-af-ipv6] import-route static

[PE1-bgp-af-ipv6] peer 3.3.3.3 enable

[PE1-bgp-af-ipv6] peer 3.3.3.3 label-route-capability

[PE1-bgp-af-ipv6] quit

[PE1-bgp] quit

# 配置到CE 1的静态路由。

[PE1] ipv6 route-static 1::1 128 serial2/2/0

# 配置OSPF,触发LSP的建立。

[PE1] ospf

[PE1-ospf-1] area 0

[PE1-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0

[PE1-ospf-1-area-0.0.0.0] network 1.1.0.0 0.0.255.255

[PE1-ospf-1-area-0.0.0.0] quit

[PE1-ospf-1] quit

[PE1]

(3)     配置PE 2

<PE2> system-view

[PE2] ipv6

[PE2] mpls lsr-id 3.3.3.3

[PE2] mpls

[PE2-mpls] lsp-trigger all

[PE2-mpls] quit

[PE2] mpls ldp

[PE2-mpls-ldp] quit

[PE2] interface serial 2/2/1

[PE2-Serial2/2/1] ip address 1.1.1.2 16

[PE2-Serial2/2/1] mpls

[PE2-Serial2/2/1] mpls ldp

[PE2-Serial2/2/1] quit

[PE2] interface serial 2/2/0

[PE2-Serial2/2/0] ipv6 address auto link-local

[PE2-Serial2/2/0] quit

[PE2] interface loopback 0

[PE2-LoopBack0] ip address 3.3.3.3 32

[PE2-LoopBack0] ipv6 address 3::3/128

[PE2-LoopBack0] quit

# 配置IBGP,使能对等体的6PE能力,并引入IPv6的直连和静态路由。

[PE2] bgp 65100

[PE2-bgp] peer 2.2.2.2 as-number 65100

[PE2-bgp] peer 2.2.2.2 connect-interface loopback 0

[PE2-bgp] ipv6-family

[PE2-bgp-af-ipv6] import-route direct

[PE2-bgp-af-ipv6] import-route static

[PE2-bgp-af-ipv6] peer 2.2.2.2 enable

[PE2-bgp-af-ipv6] peer 2.2.2.2 label-route-capability

[PE2-bgp-af-ipv6] quit

[PE2-bgp] quit

# 配置到CE 2的静态路由。

[PE1] ipv6 route-static 4::4 128 serial2/2/0

# 配置OSPF,触发LSP的建立。

[PE1] ospf

[PE1-ospf-1] area 0

[PE1-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0

[PE1-ospf-1-area-0.0.0.0] network 1.1.0.0 0.0.255.255

[PE1-ospf-1-area-0.0.0.0] quit

[PE1-ospf-1] quit

[PE1]

(4)     配置CE 2

# 使能IPv6报文转发功能,配置接口地址。

<CE2> system-view

[CE2] ipv6

[CE2] interface serial 2/2/0

[CE2-Serial2/2/0] ipv6 address auto link-local

[CE2-Serial2/2/0] quit

[CE2] interface loopback 0

[CE2-LoopBack0] ipv6 address 4::4/128

[CE2-LoopBack0] quit

# 配置到PE 2的静态路由。

[CE2] ipv6 route-static :: 0 serial2/2/0

4. 验证配置结果

# 显示路由器PE 1的LSP信息。

<PE1> display mpls lsp

--------------------------------------------------------------

                 LSP Information: BGP IPV6 LSP

--------------------------------------------------------------

  FEC                 :  1::1

  In Label            :  1024                  Out Label    :  -----

  In Interface        :  -----                 OutInterface :  -----

  Vrf Name            :

  FEC                 :  2::2

  In Label            :  1025                  Out Label    :  -----

  In Interface        :  -----                 OutInterface :  -----

  Vrf Name            :

---------------------------------------------------------------

                 LSP Information: LDP LSP

---------------------------------------------------------------

FEC                In/Out Label  In/Out IF                      Vrf Name

3.3.3.3/32         NULL/3        -/S2/1

2.2.2.2/32         3/NULL        S2/1/-

# 显示路由器PE 1的IPv6路由信息。

<PE1> display bgp ipv6 routing-table

 

 Total Number of Routes: 4

 

 BGP Local router ID is 2.2.2.2

 Status codes: * - valid, ^ - VPNv4 best, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S – Stale

               Origin : i - IGP, e - EGP, ? - incomplete

 

 *>  Network : 1::1                                     PrefixLen : 128

     NextHop : FE80::E142:0:4607:1                      LocPrf    :

     PrefVal : 0                                        Label     : NULL

     MED     : 0

     Path/Ogn: ?

 

 

 *>  Network : 2::2                                     PrefixLen : 128

     NextHop : ::1                                      LocPrf    :

     PrefVal : 0                                        Label     : NULL

     MED     : 0

     Path/Ogn: ?

 

 *>i Network : 3::3                                     PrefixLen : 128

     NextHop : ::FFFF:3.3.3.3                           LocPrf    : 100

     PrefVal : 0                                        Label     : NULL

     MED     : 0

     Path/Ogn: ?

 

 *>i Network : 4::4                                     PrefixLen : 128

     NextHop : ::FFFF:3.3.3.3                           LocPrf    : 100

     PrefVal : 0                                        Label     : NULL

     MED     : 0

     Path/Ogn: ?

完成以上配置之后,从CE 1上可以Ping通CE 2的IPv6地址(Loopback接口地址4::4)。

1.11.4  配置IPv6 BGP IPsec安全策略

1. 组网需求

·     Router A、Router B和Router C三台路由器互连,使能IPv6 BGP协议。Router A和Router B之间建立IBGP连接,Router B和Router C之间建立EBGP连接。

·     要求配置IPsec安全策略对Router A和Router B之间、Router B和Router C之间的IPv6 BGP报文进行验证和加密。

2. 组网图

图1-5 IPv6 BGP IPsec安全策略组网图

 

3. 配置步骤

(1)     配置各接口的IPv6地址(略)

(2)     配置IBGP连接

# 配置Router A。

<RouterA> system-view

[RouterA] ipv6

[RouterA] bgp 65008

[RouterA-bgp] router-id 1.1.1.1

[RouterA-bgp] ipv6-family

[RouterA-bgp-af-ipv6] group ibgp internal

[RouterA-bgp-af-ipv6] peer 1::2 group ibgp

[RouterA-bgp-af-ipv6] quit

[RouterA-bgp] quit

# 配置Router B。

<RouterB> system-view

[RouterB] ipv6

[RouterB] bgp 65008

[RouterB-bgp] router-id 2.2.2.2

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] group ibgp internal

[RouterB-bgp-af-ipv6] peer 1::1 group ibgp

[RouterB-bgp-af-ipv6] quit

[RouterB-bgp] quit

(3)     配置EBGP连接

# 配置Router C。

<RouterC> system-view

[RouterC] ipv6

[RouterC] bgp 65009

[RouterC-bgp] router-id 3.3.3.3

[RouterC-bgp] ipv6-family

[RouterC-bgp-af-ipv6] group ebgp external

[RouterC-bgp-af-ipv6] peer 3::1 as-number 65008

[RouterC-bgp-af-ipv6] peer 3::1 group ebgp

[RouterC-bgp-af-ipv6] quit

[RouterC-bgp] quit

# 配置Router B。

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] group ebgp external

[RouterB-bgp-af-ipv6] peer 3::2 as-number 65009

[RouterB-bgp-af-ipv6] peer 3::2 group ebgp

[RouterB-bgp-af-ipv6] quit

[RouterB-bgp] quit

(4)     配置IPv6 BGP IPsec安全策略

# 配置Router A。创建名为tran1的安全提议,报文封装形式采用传输模式,安全协议采用ESP协议。创建一条安全策略policy001,协商方式为manual,配置SPI和密钥。

[RouterA] ipsec proposal tran1

[RouterA-ipsec-proposal-tran1] encapsulation-mode transport

[RouterA-ipsec-proposal-tran1] transform esp

[RouterA-ipsec-proposal-tran1] esp encryption-algorithm des

[RouterA-ipsec-proposal-tran1] esp authentication-algorithm sha1

[RouterA-ipsec-proposal-tran1] quit

[RouterA] ipsec policy policy001 10 manual

[RouterA-ipsec-policy-manual-policy001-10] proposal tran1

[RouterA-ipsec-policy-manual-policy001-10] sa spi outbound esp 12345

[RouterA-ipsec-policy-manual-policy001-10] sa spi inbound esp 12345

[RouterA-ipsec-policy-manual-policy001-10] sa string-key outbound esp abcdefg

[RouterA-ipsec-policy-manual-policy001-10] sa string-key inbound esp abcdefg

[RouterA-ipsec-policy-manual-policy001-10] quit

# 配置Router B。创建名为tran1的安全提议,报文封装形式采用传输模式,安全协议采用ESP协议;创建一条安全策略policy001,协商方式为manual,配置SPI和密钥。创建名为tran2的安全提议,报文封装形式采用传输模式,安全协议采用ESP协议;创建一条安全策略policy002,协商方式为manual,配置SPI和密钥。

[RouterB] ipsec proposal tran1

[RouterB-ipsec-proposal-tran1] encapsulation-mode transport

[RouterB-ipsec-proposal-tran1] transform esp

[RouterB-ipsec-proposal-tran1] esp encryption-algorithm des

[RouterB-ipsec-proposal-tran1] esp authentication-algorithm sha1

[RouterB-ipsec-proposal-tran1] quit

[RouterB] ipsec policy policy001 10 manual

[RouterB-ipsec-policy-manual-policy001-10] proposal tran1

[RouterB-ipsec-policy-manual-policy001-10] sa spi outbound esp 12345

[RouterB-ipsec-policy-manual-policy001-10] sa spi inbound esp 12345

[RouterB-ipsec-policy-manual-policy001-10] sa string-key outbound esp abcdefg

[RouterB-ipsec-policy-manual-policy001-10] sa string-key inbound esp abcdefg

[RouterB-ipsec-policy-manual-policy001-10] quit

[RouterB] ipsec proposal tran2

[RouterB-ipsec-proposal-tran2] encapsulation-mode transport

[RouterB-ipsec-proposal-tran2] transform esp

[RouterB-ipsec-proposal-tran2] esp encryption-algorithm des

[RouterB-ipsec-proposal-tran2] esp authentication-algorithm sha1

[RouterB-ipsec-proposal-tran2] quit

[RouterB] ipsec policy policy002 10 manual

[RouterB-ipsec-policy-manual-policy002-10] proposal tran2

[RouterB-ipsec-policy-manual-policy002-10] sa spi outbound esp 54321

[RouterB-ipsec-policy-manual-policy002-10] sa spi inbound esp 54321

[RouterB-ipsec-policy-manual-policy002-10] sa string-key outbound esp gfedcba

[RouterB-ipsec-policy-manual-policy002-10] sa string-key inbound esp gfedcba

[RouterB-ipsec-policy-manual-policy002-10] quit

# 配置Router C。创建名为tran2的安全提议,报文封装形式采用传输模式,安全协议采用ESP协议。创建一条安全策略policy002,协商方式为manual,配置SPI和密钥。

[RouterC] ipsec proposal tran2

[RouterC-ipsec-proposal-tran2] encapsulation-mode transport

[RouterC-ipsec-proposal-tran2] transform esp

[RouterC-ipsec-proposal-tran2] esp encryption-algorithm des

[RouterC-ipsec-proposal-tran2] esp authentication-algorithm sha1

[RouterC-ipsec-proposal-tran2] quit

[RouterC] ipsec policy policy002 10 manual

[RouterC-ipsec-policy-manual-policy002-10] proposal tran2

[RouterC-ipsec-policy-manual-policy002-10] sa spi outbound esp 54321

[RouterC-ipsec-policy-manual-policy002-10] sa spi inbound esp 54321

[RouterC-ipsec-policy-manual-policy002-10] sa string-key outbound esp gfedcba

[RouterC-ipsec-policy-manual-policy002-10] sa string-key inbound esp gfedcba

[RouterC-ipsec-policy-manual-policy002-10] quit

(5)     配置IBGP对等体IPsec安全策略

# 配置Router A。

[RouterA] bgp 65008

[RouterA-bgp] ipv6-family

[RouterA-bgp-af-ipv6] peer 1::2 ipsec-policy policy001

[RouterA-bgp-af-ipv6] quit

[RouterA-bgp] quit

# 配置Router B。

[RouterB] bgp 65008

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] peer 1::1 ipsec-policy policy001

[RouterB-bgp-af-ipv6] quit

[RouterB-bgp] quit

(6)     配置EBGP对等体组IPsec安全策略

# 配置Router C。

[RouterC] bgp 65009

[RouterC-bgp] ipv6-family

[RouterC-bgp-af-ipv6] peer ebgp ipsec-policy policy002

[RouterC-bgp-af-ipv6] quit

[RouterC-bgp] quit

# 配置Router B。

[RouterB] bgp 65008

[RouterB-bgp] ipv6-family

[RouterB-bgp-af-ipv6] peer ebgp ipsec-policy policy002

[RouterB-bgp-af-ipv6] quit

[RouterB-bgp] quit

4. 验证配置结果

# 显示Router B的对等体的详细信息。

[RouterB] display bgp ipv6 peer verbose

         BGP Peer is 1::1,  remote AS 65008,

         Type: IBGP link

         BGP version 4, remote router ID 1.1.1.1

         BGP current state: Established, Up for 00h01m51s

         BGP current event: RecvKeepalive

         BGP last state: OpenConfirm

         Port:  Local – 1029     Remote - 179

         Configured: Active  Hold Time: 180 sec  Keepalive Time: 60 sec

         Received  : Active  Hold Time: 180 sec

         Negotiated: Active  Hold Time: 180 sec

         Peer optional capabilities:

         Peer support bgp multi-protocol extended

         Peer support bgp route refresh capability

         Address family IPv4 Unicast: advertised and received

 Received: Total 0 messages, Update messages 0

 Sent: Total 0 messages, Update messages 0

 Maximum allowed prefix number: 4294967295

 Threshold: 75%

 Minimum time between advertisement runs is 30 seconds

 Optional capabilities:

  Route refresh capability has been enabled

  ORF advertise capability based on prefix (type 64):

    Local: both

    Negotiated: send

 Peer Preferred Value: 0

 IPsec policy name: policy001, SPI :12345

 Routing policy configured:

 No routing policy is configured

         BGP Peer is 3::2,  remote AS 65009,

         Type: EBGP link

         BGP version 4, remote router ID 3.3.3.3

         BGP current state: Established, Up for 00h01m51s

         BGP current event: RecvKeepalive

         BGP last state: OpenConfirm

         Port:  Local – 1029     Remote - 179

         Configured: Active  Hold Time: 180 sec  Keepalive Time: 60 sec

         Received  : Active  Hold Time: 180 sec

         Negotiated: Active  Hold Time: 180 sec

         Peer optional capabilities:

         Peer support bgp multi-protocol extended

         Peer support bgp route refresh capability

         Address family IPv4 Unicast: advertised and received

 Received: Total 0 messages, Update messages 0

 Sent: Total 0 messages, Update messages 0

 Maximum allowed prefix number: 4294967295

 Threshold: 75%

 Minimum time between advertisement runs is 30 seconds

 Optional capabilities:

  Route refresh capability has been enabled

  ORF advertise capability based on prefix (type 64):

    Local: both

    Negotiated: send

 Peer Preferred Value: 0

 IPsec policy name: policy002, SPI :54321

 Routing policy configured:

 No routing policy is configured

完成上述配置后IBGP、EBGP邻居能正常建立,且报文都经过加密。

1.11.5  配置IPv6 BGP与BFD联动

1. 组网需求

·     在AS 200内使用OSPFv3作为IGP协议;

·     Router A与Router C建立两条IBGP连接。当Router A与Router C之间的两条链路均连通时,Router C与1200::0/64之间的报文使用Router A<->Router B<->Router C这条路径;当Router A<->Router B<->Router C链路故障时,BFD能够快速检测并通告IPv6 BGP协议,使得Router A<->Router D<->Router C这条路径能够迅速生效。

2. 组网图

图1-6 IPv6 BGP与BFD联动配置组网图

 

3. 配置步骤

(1)     配置各接口的IPv6地址(略)

(2)     配置OSPFv3(略),保证Router A和Router C之间路由可达

(3)     Router A上的IPv6 BGP配置

# 配置Router A和Router C建立两条IBGP连接。

<RouterA> system-view

[RouterA] bgp 200

[RouterA-bgp] ipv6-family

[RouterA-bgp-af-ipv6] network 1200:: 64

[RouterA-bgp-af-ipv6] peer 3002::2 as-number 200

[RouterA-bgp-af-ipv6] peer 2002::2 as-number 200

[RouterA-bgp-af-ipv6] quit

# 配置当Router A与Router C之间的两条链路均连通时,Router C与1200::0/64之间的报文使用Router A<->Router B<->Router C这条路径。(在Router A上对发布给对等体2002::2的1200::0/64路由配置较高的MED属性值)

·     定义编号为2000的IPv6 ACL,允许路由1200::0/64通过。

[RouterA] acl ipv6 number 2000

[RouterA-acl6-basic-2000] rule permit source 1200::0 64

[RouterA-acl6-basic-2000] quit

·     定义两个Route-policy,一个名为apply_med_50,为路由1200::0/64设置MED属性值为50;另一个名为apply_med_100,为路由1200::0/64设置MED属性值为100。

[RouterA] route-policy apply_med_50 permit node 10

[RouterA-route-policy] if-match ipv6 address acl 2000

[RouterA-route-policy] apply cost 50

[RouterA-route-policy] quit

[RouterA] route-policy apply_med_100 permit node 10

[RouterA-route-policy] if-match ipv6 address acl 2000

[RouterA-route-policy] apply cost 100

[RouterA-route-policy] quit

·     对发布给对等体3002::2的路由应用名为apply_med_50的Route-policy,对发布给对等体2002::2的路由应用名为apply_med_100的Route-policy。

[RouterA] bgp 200

[RouterA-bgp] ipv6-family

[RouterA-bgp-af-ipv6] peer 3002::2 route-policy apply_med_50 export

[RouterA-bgp-af-ipv6] peer 2002::2 route-policy apply_med_100 export

# 配置当Router A<->Router B<->Router C链路故障时,BFD能够快速检测并通告IPv6 BGP协议,使得Router A<->Router D<->Router C这条路径能够迅速生效。

[RouterA-bgp-af-ipv6] peer 3002::2 bfd

[RouterA-bgp-af-ipv6] quit

[RouterA-bgp] quit

(4)     Router C上的IPv6 BGP配置。

<RouterC> system-view

[RouterC] bgp 200

[RouterC-bgp] ipv6-family

[RouterC-bgp-af-ipv6] peer 3001::1 as-number 200

[RouterC-bgp-af-ipv6] peer 3001::1 bfd

[RouterC-bgp-af-ipv6] peer 2001::1 as-number 200

[RouterC-bgp-af-ipv6] quit

[RouterC-bgp] quit

(5)     配置各路由器接口及BFD参数(该步骤可省略,使用BFD参数的缺省值即可)

# 配置Router A。

[RouterA] bfd session init-mode active

[RouterA] interface gigabitethernet 2/1/2

·     配置发送BFD控制报文的最小时间间隔为500毫秒。

[RouterA-Gigabitethernet2/1/2] bfd min-transmit-interval 500

·     配置接收BFD控制报文的最小时间间隔为500毫秒。

[RouterA-Gigabitethernet2/1/2] bfd min-receive-interval 500

·     配置BFD报文最大失效的个数为7。

[RouterA-Gigabitethernet2/1/2] bfd detect-multiplier 7

·     配置接口建立BFD会话时需要认证,采用明文认证方式方式,密码为ibgpbfd。

[RouterA-Gigabitethernet2/1/2] bfd authentication-mode simple 1 ibgpbfd

[RouterA-Gigabitethernet2/1/2] quit

# 配置Router C。

[RouterC] bfd session init-mode active

[RouterC] interface gigabitethernet 2/1/1

·     配置发送BFD控制报文的最小时间间隔为500毫秒。

[RouterC-Gigabitethernet2/1/1] bfd min-transmit-interval 500

·     配置接收BFD控制报文的最小时间间隔为500毫秒。

[RouterC-Gigabitethernet2/1/1] bfd min-receive-interval 500

·     配置BFD报文最大失效的个数为7。

[RouterC-Gigabitethernet2/1/1] bfd detect-multiplier 7

·     配置接口建立BFD会话时需要认证,采用明文认证方式方式,密码为ibgpbfd。

[RouterC-Gigabitethernet2/1/1] bfd authentication-mode simple 1 ibgpbfd

[RouterC-Gigabitethernet2/1/1] return

(6)     检查配置结果

下面以Router C为例,Router A和Router B类似,不再赘述。

# 显示Router C的BFD信息。

<RouterC> display bfd session verbose

 

 Total Session Num: 1            Init Mode: Active

 

 IPv6 Session Working Under Ctrl Mode:

 

     Local Discr: 17                  Remote Discr: 13

       Source IP: 3002::2

  Destination IP: 3001::1

   Session State: Up                     Interface: Gigabitethernet2/1/1

 Min Trans Inter: 500ms            Act Trans Inter: 500ms

  Min Recv Inter: 500ms           Act Detect Inter: 3000ms

    Recv Pkt Num: 57                  Send Pkt Num: 53

       Hold Time: 2200ms              Connect Type: Direct

  Running Up for: 00:00:06               Auth mode: Simple

        Protocol: BGP6

       Diag Info: No Diagnostic

以上显示信息表明:Router A的Gigabitethernet2/1/2接口和Router C的Gigabitethernet2/1/1之间已经建立了BFD连接,而且BFD协议运行正常。

# 在Router C上查看BGP邻居信息,可以看出Router A和Router C BGP邻居处于Established状态。

<RouterC> display bgp ipv6 peer

 

 BGP local router ID : 1.1.1.1

 Local AS number : 200

 Total number of peers : 2                 Peers in established state : 2

 

  Peer                    AS  MsgRcvd  MsgSent OutQ PrefRcv Up/Down  State

 

  2001::1                200        7       10    0       0 00:01:05 Established

  3001::1                200        7       10    0       0 00:01:34 Established

# 在Router C上查看1200::0/64的路由信息,可以看出Router A和Router C是通过Router B进行通信的。

<RouterC> display ipv6 routing-table 1200::0 64 verbose

Routing Table :

Summary Count : 2

 

 Destination  : 1200::                                  PrefixLength : 64

 NextHop      : 3001::1                                 Preference   : 255

 RelayNextHop : 3002::1                                 Tag          : 0H

 Neighbor     : 3001::1                                 ProcessID    : 0

 Interface    : Gigabitethernet2/1/1                    Protocol     : BGP4+

 State        : Active Adv                              Cost         : 50

 Tunnel ID    : 0x0                                     Label        : NULL

 Age          : 4538sec

 

 Destination  : 1200::                                  PrefixLength : 64

 NextHop      : 2001::1                                 Preference   : 255

 RelayNextHop : 2002::1                                 Tag          : 0H

 Neighbor     : 2001::1                                 ProcessID    : 0

 Interface    : Gigabitethernet2/1/2                    Protocol     : BGP4+

 State        : Invalid Adv                             Cost         : 100

 Tunnel ID    : 0x0                                     Label        : NULL

 Age          : 4515sec

以上显示信息表明:Router C到达1200::0/64网段有两条路径:当前生效的是Router A<->Router B<->Router C,Router A<->Router D<->Router C这条路径没有生效。

# 打开Router C的调试开关。

<RouterC> debugging bfd scm

<RouterC> debugging bfd event

<RouterC> debugging bgp bfd

<RouterC> terminal monitor

<RouterC> terminal debugging

# Router A和Router C之间的链路发生故障后,可以看到Router C能够快速检测Router B的变化。

%Nov  5 11:42:24:172 2009 RouterC BFD/5/BFD_CHANGE_FSM: Sess[3002::2/3001::1,13/17,GE2/1/1,Ctrl], Sta: UP->DOWN, Diag: 1

%Nov  5 11:42:24:172 2009 RouterC BGP/5/BGP_STATE_CHANGED: 3001::1 state is changed from ESTABLISHED to IDLE.

*Nov  5 11:42:24:187 2009 RouterC RM/6/RMDEBUG: BGP_BFD: Recv BFD DOWN msg, Src IP 3002::2, Dst IP 3001::1, Instance ID 0.

*Nov  5 11:42:24:187 2009 RouterC RM/6/RMDEBUG: BGP_BFD: Reset BGP session 3001::1 for BFD session down.

*Nov  5 11:42:24:187 2009 RouterC RM/6/RMDEBUG: BGP_BFD: Send DELETE msg to BFD, Connection type DIRECT, Src IP 3002::2, Dst IP 3001::1, Instance ID 0.

# 在Router C上查看1200::0/64的路由信息,可以看出Router A和Router C是通过Router D进行通信的。

<RouterC> display ipv6 routing-table 1200::0 64 verbose

Routing Table :

Summary Count : 1

 

 Destination  : 1200::                                  PrefixLength : 64

 NextHop      : 2001::1                                 Preference   : 255

 RelayNextHop : 2002::1                                 Tag          : 0H

 Neighbor     : 2001::1                                 ProcessID    : 0

 Interface    : Gigabitethernet2/1/2                    Protocol     : BGP4+

 State        : Active Adv                              Cost         : 100

 Tunnel ID    : 0x0                                     Label        : NULL

 Age          : 4635sec

以上显示信息表明:Router C到达1200::0/64网段有一条路径:Router A<->Router D<->Router C。

1.12  IPv6 BGP常见错误配置举例

1.12.1  IPv6 BGP对等体关系不能建立

1. 错误现象

使用display bgp ipv6 peer命令查看IPv6 BGP对等体的信息,发现与对端的连接无法进入Established状态。

2. 分析

IPv6 BGP邻居的建立需要能够使用179端口建立TCP会话,以及能够正确交换Open消息。

3. 处理过程

(1)     用display current-configuration configuration bgp命令检查邻居的AS号配置是否正确。

(2)     用display bgp ipv6 peer命令检查邻居的IPv6地址是否正确。

(3)     如果使用Loopback接口,检查是否配置了peer connect-interface命令。

(4)     如果是物理上非直连的EBGP邻居,检查是否配置了peer ebgp-max-hop命令。

(5)     如果配置了peer ttl-security hops命令,请检查对端是否也配置了该命令,且保证双方配置的hop-count不小于两台设备实际需要经过的跳数。

(6)     检查路由表中是否存在到邻居的可用路由。

(7)     使用ping命令检查链路是否畅通。

(8)     使用display tcp ipv6 status命令检查TCP连接是否正常。

(9)     检查是否配置了禁止TCP端口179的ACL。

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!