13-路由策略命令
本章节下载: 13-路由策略命令 (717.90 KB)
目 录
1.1.9 apply extcommunity priority-color
1.1.33 display ip community-list
1.1.34 display ip extcommunity-list
1.1.44 if-match local-preference
1.1.60 route-policy-change delay-time
1.1.61 route-policy non-exist-deny
1.1.62 route-policy prefix-protocol-check
1.2.2 apply ip-address next-hop
1.3.3 display ipv6 prefix-list
1.3.5 if-match ipv6 even-prefix-length
1.3.6 if-match ipv6 odd-prefix-length
apply aigp命令用来配置BGP路由的AIGP属性。
undo apply aigp命令用来恢复缺省情况。
【命令】
apply aigp { cost-value | igp-cost }
undo apply aigp
【缺省情况】
未配置BGP路由的AIGP属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
cost-value:BGP路由的AIGP属性值,取值范围为0~4294967295。
igp-cost:指定BGP路由的AIGP属性值为到达BGP路由下一跳的IGP路由开销值。
【使用指导】
通过本命令可以为BGP路由添加或修改AIGP属性。
通常情况下,同一个管理部门管理的、运行同一种IGP协议的AS的集合称为AIGP(Accumulated Interior Gateway Protocol Metric,累加内部网关协议度量属性)管理域。通过在AIGP管理域内配置BGP路由的AIGP属性,可以使得BGP在发布路由时携带AIGP属性,转发路径上的IGP Metric值将在BGP路由的AIGP属性中累加并传递。在同一个AIGP管理域中,BGP可以优选Metric值最小的路径进行转发,保证了在同一个AIGP管理域内路由的选择结果更加符合实际的网络状况。
有关AIGP属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。指定BGP路由的AIGP值为10。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply aigp 10
【相关命令】
· peer aigp(三层技术-IP路由命令参考/BGP高级)
apply as-path命令用来配置BGP路由信息AS_PATH属性。
undo apply as-path命令用来恢复缺省情况。
【命令】
apply as-path { as-number&<1-32> [ delete | replace ] | clear }
undo apply as-path
【缺省情况】
未配置BGP路由信息的AS_PATH属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
as-number&<1-32>:自治系统号,取值范围为1~4294967295。&<1-32>表示前面的参数可以输入1~32次。
delete:在原有的AS_Path属性中删除指定的AS号。
replace:替换原有AS号。如果未指定本参数,则在原AS路径前加入AS号。
clear:清空原有的AS_Path属性。
【使用指导】
通过本命令可以为BGP路由添加或修改AS_PATH属性。
AS_PATH属性记录了某条路由从本地到目的地址所要经过的所有AS号。当BGP路由器将一条路由通告到其他AS时,会把本地AS号添加在AS_PATH列表中。收到此路由的BGP路由器根据AS_PATH属性就可以知道到达目的地址所要经过的AS。
有关AS_PATH属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果路由信息匹配已存在的编号为1的AS路径访问列表,那么在原AS路径前加入AS号200。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply as-path 200
【相关命令】
· display ip as-path
· if-match as-path
· ip as-path
apply comm-list delete命令用来删除BGP路由信息的团体属性。
undo apply comm-list命令用来恢复缺省情况。
【命令】
apply comm-list { comm-list-number | comm-list-name } delete
undo apply comm-list
【缺省情况】
没有删除BGP路由信息的团体属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
comm-list-number:团体属性列表号。
· 基本团体属性列表号的取值范围为1~99;
· 高级团体属性列表号的取值范围为100~199。
comm-list-name:团体属性列表名,为1~63个不全为数字的字符串,区分大小写。
【使用指导】
BGP将具有相同特征的路由归为一组,称为一个团体,通过在路由中携带团体属性标识路由所属的团体。配置本命令后,如果BGP路由包含团体属性列表指定的一个或多个团体属性,则路由策略将删除这些属性。
有关团体属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
执行本命令时,指定的团体属性列表必须已经存在。执行ip community-list命令可以配置一个团体属性列表。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。删除已存在的团体属性列表1中指定的BGP路由信息的团体属性。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply comm-list 1 delete
【相关命令】
· ip community-list
apply community命令用来配置BGP路由信息的团体属性。
undo apply community命令用来取消BGP路由信息的团体属性配置。
【命令】
apply community { none | additive | { community-number&<1-32> | aa:nn&<1-32> | internet | no-advertise | no-export | no-export-subconfed } * [ additive ] }
undo apply community [ none | additive | { community-number&<1-32> | aa:nn&<1-32> | internet | no-advertise | no-export | no-export-subconfed } * [ additive ] ]
【缺省情况】
未配置BGP路由信息的团体属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
none:删除路由的团体属性。
community-number&<1-32>:团体序号,取值范围为1~4294967295。&<1-32>表示前面的参数可以输入1~32次。
aa:nn&<1-32>:团体号,aa和nn的取值范围为0~65535。&<1-32>表示前面的参数可以输入1~32次。
internet:预定义的团体属性。缺省情况下,所有的路由都具有internet团体属性,可以被通告给所有的BGP对等体。
no-advertise:具有此属性的路由在收到后,不能被通告给任何其他的BGP对等体。
no-export:具有此属性的路由在收到后,不能被发布到本地AS之外。如果使用了联盟,则不能被发布到联盟之外,但可以发布给联盟中的其他子AS。
no-export-subconfed:具有此属性的路由在收到后,不能被发布到本地AS之外,也不能发布到联盟中的其他子AS。
additive:附加至原有路由的团体属性。
【使用指导】
BGP将具有相同特征的路由归为一组,称为一个团体,通过在路由中携带团体属性标识路由所属的团体。配置本命令可以为BGP路由配置团体属性。
有关团体属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为setcommunity的路由策略,其节点序列号为16,匹配模式为permit。配置BGP路由的团体属性为no-export。
<Sysname> system-view
[Sysname] route-policy setcommunity permit node 16
[Sysname-route-policy-setcommunity-16] apply community no-export
· if-match community
· ip community-list
apply cost命令用来配置路由信息的路由开销。
undo apply cost命令用来恢复缺省情况。
【命令】
apply cost [ + | - ] cost-value
undo apply cost
【缺省情况】
未配置路由信息的路由开销。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
+:增加开销值。
-:减少开销值。
cost-value:指定路由信息的路由开销,取值范围为0~4294967295。
【使用指导】
当需要对路由的开销值进行修改,从而控制路由优选的先后顺序时,可以使用本命令。例如,当路由的下一跳链路带宽较小、状况较差时,可以通过本命令增加该路由的开销值。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配OSPF外部路由,那么设置该路由的路由开销为120。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match route-type external-type1or2
[Sysname-route-policy-policy1-10] apply cost 120
apply cost-type命令用来配置路由信息的路由开销类型。
undo apply cost-type命令用来恢复缺省情况。
【命令】
apply cost-type { external | internal | internal-inc-ibgp | med-plus-igp | type-1 | type-2 }
undo apply cost-type
【缺省情况】
未配置路由开销类型。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
external:IS-IS外部路由。
internal:IS-IS内部路由或者设置从IBGP对等体学到的、通告给EBGP对等体的BGP路由的MED值为到达下一跳的IGP度量值。
internal-inc-ibgp:IS-IS的内部路由或者设置通告给IBGP或EBGP对等体的BGP路由的MED值为到达下一跳的IGP度量值。
med-plus-igp:设置通告给IBGP或EBGP对等体的BGP路由的MED值为原MED值与到达下一跳的IGP度量值之和。
type-1:OSPF的外部Type-1路由。
type-2:OSPF的外部Type-2路由。
【使用指导】
apply cost-type internal命令的作用:
· 应用于IS-IS路由:设置路由类型为IS-IS内部路由。
· 应用于BGP路由:路由器从IBGP对等体学到的路由在通告给EBGP对等体时,如果配置apply cost-type internal命令,则路由器会将向EBGP对等体通告的路由的MED值设置为该路由的下一跳的IGP度量值。
internal-inc-ibgp和med-plus-igp参数可以为任何来源的BGP路由设置MED值。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配标记域为8的路由,那么设置该路由的路由开销类型为OSPF的外部Type-1路由。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match tag 8
[Sysname-route-policy-policy1-10] apply cost-type type-1
apply dscp命令用来配置BGP路由信息的DSCP值。
undo apply dscp命令用来恢复缺省情况。
【命令】
apply dscp dscp-value
undo apply dscp
【缺省情况】
未配置BGP路由信息的DSCP值。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
dscp-value:BGP路由信息的DSCP优先级,取值范围为0~63。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配扩展团体列表号100,那么配置设置BGP路由信息的DSCP值为7。
<Sysname> system-view
[Sysname] ip extcommunity-list 100 permit soo 100:100
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match extcommunity 100
[Sysname-route-policy-policy1-10] apply dscp 7
apply extcommunity命令用来配置BGP路由信息的扩展团体属性。
undo apply extcommunity命令用来取消BGP路由信息的扩展团体属性配置。
【命令】
apply extcommunity { bandwidth link-bandwidth-value | { rt route-target }&<1-32> } [ additive ]
undo apply extcommunity [ bandwidth link-bandwidth-value | { rt route-target }&<1-32> ]
【缺省情况】
未配置BGP路由信息的扩展团体属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
bandwidth link-bandwidth-value:指定链路带宽扩展团体属性,为3~16个字符的字符串。link-bandwidth-value的形式为16位自治系统号:32位用户自定义数,例如:100:3。其中,自治系统号取值范围为0~65535,用户自定义数取值范围为0~4294967295。
{ rt route-target }&<1-32>:指定的RT(Route Target,路由目标)扩展团体属性,为3~24个字符的字符串。&<1-32>表示前面的参数可以输入1~32次。
route-target有如下几种形式:
· 16位整数形式自治系统号:32位用户自定义数,例如:101:3。其中,自治系统号取值范围为0~65535,用户自定义数取值范围为0~4294967295。
· 16位点分形式自治系统号:32位用户自定义数字。例如:0.1:1。其中,自治系统号的取值范围为0.1~0.65535。
· 32位IP地址:16位用户自定义数,例如:192.168.122.15:1。其中,用户自定义数取值范围为0~65535。
· 32位整数形式自治系统号:16位用户自定义数,例如:70000:3。其中,自治系统号取值范围为65536~4294967295,用户自定义数取值范围为0~65535。
· 32位IPv4地址/IPv4地址掩码:16位用户自定义数。例如:192.168.122.15/24:1。
· 32位点分形式自治系统号:16位用户自定义数字。例如:10.1:1。其中,自治系统号的最小值为1.0。
additive:允许增加到已有的扩展团体中。
【使用指导】
本命令用于为BGP路由配置链路带宽或RT扩展团体属性:
· 链路带宽属性用来实现BGP路由指导流量进行UCMP(Unequal Cost Multiple Path,非等价多路径)负载分担转发。有关链路带宽属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
· RT(Route Target,路由目标)扩展团体属性,也称为VPN Target,用来控制VPN路由信息的发布。有关RT属性的详细介绍,请参见“MPLS配置指导”中的“MPLS L3VPN”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的AS路径访问列表,那么为BGP指定RT扩展团体属性。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply extcommunity rt 100:2 additive
apply extcommunity priority-color命令用来配置BGP路由的Priority-Color扩展团体属性。
undo apply extcommunity priority-color命令用来取消BGP路由的Priority-Color扩展团体属性。
【命令】
apply extcommunity priority-color priority-color&<1-32> [ additive ]
undo apply extcommunity priority-color priority-color&<1-32>
【缺省情况】
未配置BGP路由的Priority-Color扩展团体属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
priority-color&<1-32>:Priority-Color扩展团体属性,为3~12个字符的字符串。priority-color的格式为优先级:Site ID:Device ID或优先级:Site ID。其中,优先级的取值范围为0~15,该数值越小,优先级越高;Site ID的取值范围为1~65535,Device ID的取值范围为1~255,Site ID和Device ID共同标识了SDWAN网络中的一台设备。&<1-32>表示前面的参数最多可以重复输入32次。
additive:允许将Priority-Color扩展团体属性增加到已有的扩展团体属性中。如果未配置本参数,则表示替换已有的Priority-Color扩展团体属性。
【使用指导】
Priority-Color扩展团体属性只能用于SDWAN封装的EVPN路由,通过为其携带扩展团体属性,可以为路由增加备份路径,实现SDWAN网络中数据流量通道故障时的流量逃生。
IP前缀路由中未携带Priority-Color扩展团体属性时,只能在BGP-VPN实例路由表和VPN实例IP路由表中添加一条路由,路由的下一跳即为IP前缀路由的下一跳。当这个下一跳不可达时,IP前缀路由也将失效,到达该IP前缀的流量转发将中断。
IP前缀路由携带Priority-Color扩展团体属性后,能够在BGP-VPN实例路由表中添加一条主路由,和多条备路由。如果Priority-Color扩展团体属性中包含Device ID,则设备根据每一个Priority-Color扩展团体属性生成一条备路由;如果Priority-Color扩展团体属性中不包含Device ID,则设备根据Site ID对应站点中的每一台SDWAN设备生成一条备路由。主备路由的前缀相同,备路由添加到VPN实例IP路由表时,下一跳为Priority-Color扩展团体属性中Site ID和Device ID代表设备的System IP。
主路由正常可达时,该路由会被添加到VPN实例IP路由表中。主路由失效时,备路由中最优的一条会被添加到VPN实例IP路由表中。判断最优路由的条件是:
(1) 根据生成备路由的Priority-Color扩展团体属性的优先级值进行判断,优先级数值越小,优先级越高。
(2) 如果多条备路由优先级值相同,则下一跳IP地址最小的备路由为最优。
如果在BGP-VPN IPv4单播地址族/BGP-VPN IPv6单播地址族下,设备通过balance命令开启了BGP负载分担,则无论主路由是否失效,优先级值相同的多条最优路由都可以被添加到VPN实例的IP路由表中,以实现SDWAN数据流量的负载分担。有关BGP负载分担的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
在形成负载分担的过程中,主路由的优先级值视为0。例如,在开启了负载分担后,主路由正常可达时,主路由和多条优先级值为0的备路由均可以被添加到VPN实例的IP路由表中;主路由失效后,VPN实例IP路由表中的主路由不再参与负载分担,由其他优先级值为0的备路由形成负载分担。如果不存在优先级值为0的备路由,则主路由正常可达时,仅主路由被添加到VPN实例IP路由表中,不形成负载分担;主路由失效后,多条优先级数值最小且相同的备路由被添加到VPN实例IP路由表中,并且形成负载分担。
配置本命令时,如果存在形式为优先级:Site ID的Priority-Color扩展团体属性,则与该属性Site ID相同的、形式为优先级:Site ID:Device ID的Priority-Color扩展团体属性不生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。指定BGP路由的Priority-Color扩展团体属性为1:10:10,并允许将Priority-Color扩展团体属性增加到已有的扩展团体属性中。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply extcommunity priority-color 1:10:10 additive
apply extcommunity soo命令用来配置BGP路由的SoO(Site of Origin,源站点)扩展团体属性。
undo apply extcommunity soo命令用来取消该配置。
【命令】
apply extcommunity soo site-of-origin&<1-32> [ additive ]
undo apply extcommunity soo
【缺省情况】
未配置BGP路由的SoO扩展团体属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
site-of-origin&<1-32>:SoO扩展团体属性,为3~24个字符的字符串。&<1-32>表示前面的参数可以输入1~32次。site-of-origin有如下几种形式:
· 16位整数形式自治系统号:32位用户自定义数,例如:101:3。其中,自治系统号取值范围为0~65535,用户自定义数取值范围为0~4294967295。
· 16位点分形式自治系统号:32位用户自定义数字。例如:0.1:1。其中,自治系统号的取值范围为0.1~0.65535。
· 32位IP地址:16位用户自定义数,例如:192.168.122.15:1。其中,用户自定义数取值范围为0~65535。
· 32位整数形式自治系统号:16位用户自定义数,例如:70000:3。其中,自治系统号取值范围为65536~4294967295,用户自定义数取值范围为0~65535。
· 32位IP地址/IPv4地址掩码:16位用户自定义数,例如:192.168.122.15/24:1。
· 32位点分形式自治系统号:16位用户自定义数字。例如:10.1:1。其中,自治系统号的最小值为1.0。
additive:表示允许将SoO扩展团体属性增加到已有的扩展团体属性列表中。如果未配置本参数,则表示替换已有的SoO扩展团体属性。
【使用指导】
本命令用于为BGP路由配置SoO扩展团体属性。SoO扩展团体属性用来标识路由的原始站点。路由器不会将带有SoO属性的路由发布给该SoO标识的站点,确保来自某个站点的路由不会再被发布到该站点,从而避免路由环路。在AS路径信息丢失时,可以通过SoO属性来避免发生环路。
有关SoO属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的AS路径访问列表,那么为BGP指定SoO扩展团体属性为1:100,并允许将SoO扩展团体属性增加到已有的扩展团体属性列表中。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply extcommunity soo 1:100 additive
apply flex-algo命令用来为路由设置Flex-Algo算法ID。
undo apply flex-algo命令用来恢复缺省情况。
【命令】
apply flex-algo flex-algo-id
undo apply flex-algo
【缺省情况】
不会为路由设置Flex-Algo算法ID。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
flex-algo-id:Flex-Algo的算法标识符,取值范围为128~255。
【使用指导】
Flex-Algo是用户可以自主在IGP中创建单独拓扑并计算路径的灵活算法,目前主要在SR网络中使用。
在SRv6应用Flex-Algo算法的场景中,不同Flex-Algo算法拓扑计算出来的路由信息相互独立。如果某个Flex-Algo拓扑(拓扑k1)希望引入另一个Flex-Algo拓扑(拓扑k2)中的路由,请执行如下配置:
(1) 配置包含apply flex-algo命令的路由策略。apply flex-algo命令设置的flex-algo-id为拓扑k1的Flex-Algo算法ID。
(2) 在拓扑k1与拓扑k2的边界节点的IS-IS IPv6单播地址族视图下,配置import-route命令,该命令引用步骤(1)中的路由策略对引入的路由进行过滤。本例中需要在边界节点上参与Flex-Algo k1路由计算的IS-IS进程下引入路由,即进入该进程下的IS-IS IPv6单播地址族视图配置import-route命令。
当前仅支持为引入的IPv6 IS-IS路由或IPv6 BGP路由设置Flex-Algo算法ID。
拓扑k1与拓扑k2的边界节点将拓扑k2的IPv6 IS-IS路由信息引入拓扑k1时,上述配置只能将Flex-Algo算法的IPv6 IS-IS路由引入到拓扑k1中,不能将非Flex-Algo算法的IPv6 IS-IS路由引入到拓扑k1。算法ID为128~255范围的路由为Flex-Algo算法的路由;算法ID为0的路由为非Flex-Algo算法的路由。工作机制如下:
· 如果引入的路由通过import-route命令引用的路由策略的过滤,且该路由的算法ID属于范围128~255,则路由策略将该路由的Flex-Algo算法ID修改为本命令设置的flex-algo-id,以便该路由能够成功引入到拓扑k1。
· 如果该路由携带的算法ID为0,则路由策略不会为该路由添加本命令设置的flex-algo-id信息。路由无法引入到拓扑k1。
拓扑k1与拓扑k2的边界节点将拓扑k2的IPv6 BGP路由信息引入拓扑k1时,如果引入的路由通过import-route命令引用的路由策略的过滤,则路由策略为该路由添加本命令设置的flex-algo-id信息,以便该路由能够成功引入到拓扑k1。
有关Flex-Algo算法的详细介绍,请参见“三层技术-IP路由配置指导”中的“IS-IS”。
【举例】
# 为路由设置的Flex-Algo算法ID为128。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply flex-algo 128
【相关命令】
· import-route(三层技术-IP路由命令参考/IS-IS)
apply gateway-ip命令用来配置EVPN IP前缀路由的网关IP地址。
undo apply gateway-ip命令用来恢复缺省情况。
【命令】
apply gateway-ip { ip-address | origin-nexthop }
undo apply gateway-ip
【缺省情况】
未配置EVPN IP前缀路由的网关IP地址。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
ip-address:设置网关IP地址,点分十进制形式。
origin-nexthop:设置路由的下一跳地址作为网关IP地址。
【使用指导】
本命令应用于EVPN组网,用来修改EVPN IP前缀路由中的Gateway IP地址。
【举例】
# 设置路由的下一跳地址作为网关IP地址。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply gateway-ip origin-nexthop
【相关命令】
· apply ipv6 gateway-ip
apply ip-precedence命令用来配置路由的IP优先级。
undo apply ip-precedence命令用来恢复缺省情况。
【命令】
apply ip-precedence { value | clear }
undo apply ip-precedence
【缺省情况】
未配置路由的IP优先级。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
value:路由的IP优先级,取值范围是0~7。
clear:清除路由的IP优先级。
【使用指导】
IP报文共有8(0~7)个优先级,每个数值对应一个优先级类型。在输入参数的时候可以输入数值,也可以输入优先级类型。对应关系如表1-1所示。
表1-1 IP优先级值与优先级类型对应表
优先级值 |
优先级类型 |
0 |
routine |
1 |
priority |
2 |
immediate |
3 |
flash |
4 |
flash-override |
5 |
critical |
6 |
internet |
7 |
network |
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配扩展团体列表号100的BGP路由,那么配置路由的IP优先级为3。
<Sysname> system-view
[Sysname] ip extcommunity-list 100 permit soo 100:100
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match extcommunity 100
[Sysname-route-policy-policy1-10] apply ip-precedence 3
apply ipv6 gateway-ip命令用来配置EVPN IP前缀路由的网关IPv6地址。
undo apply ipv6 gateway-ip命令用来恢复缺省情况。
【命令】
apply ipv6 gateway-ip { ipv6-address | origin-nexthop }
undo apply ipv6 gateway-ip
【缺省情况】
未配置EVPN IP前缀路由的网关IPv6地址。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:设置网关IPv6地址。
origin-nexthop:设置路由的下一跳地址作为网关IPv6地址。
【使用指导】
本命令应用于EVPN组网,用来修改EVPN IP前缀路由中的Gateway IPv6地址。
【举例】
# 设置路由的下一跳地址作为网关IPv6地址。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply ipv6 gateway-ip origin-nexthop
【相关命令】
· apply gateway-ip
apply isis命令用来配置引入路由到IS-IS某个级别的区域。
undo apply isis命令用来恢复缺省情况。
【命令】
apply isis { level-1 | level-1-2 | level-2 }
undo apply isis
【缺省情况】
未配置引入路由到IS-IS某个级别的区域。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
level-1:引入路由到IS-IS的Level-1区域。
level-1-2:引入路由到IS-IS的Level-1和Level-2区域。
level-2:引入路由到IS-IS的Level-2区域。
【使用指导】
为了支持大规模的路由网络,IS-IS在路由域内采用两级的分层结构。一个大的路由域通常被分成多个区域(Areas)。一般来说,管理员将Level-1路由器部署在区域内,Level-2路由器部署在区域间,Level-1-2路由器部署在Level-1路由器和Level-2路由器的中间。
有关Level-1、Level-2和Level-1-2的详细介绍,请参见“三层技术-IP路由配置指导”中的“IS-IS”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配标记域为8的路由,那么引入路由到IS-IS的Level-2区域。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match tag 8
[Sysname-route-policy-policy1-10] apply isis level-2
apply l3-vni命令用来配置L3VNI。
undo apply l3-vni命令用来恢复缺省情况。
【命令】
apply l3-vni vxlan-id
undo apply l3-vni
【缺省情况】
未配置L3VNI。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
vxlan-id:L3VNI,取值范围为0~16777215。
【使用指导】
L3VNI(Layer 3 VNI,三层VXLAN ID)用于EVPN VXLAN网络。在网关之间通过VXLAN隧道转发流量时,属于同一路由域、能够进行三层互通的流量通过L3VNI来标识。L3VNI唯一关联一个VPN实例,通过VPN实例确保不同业务之间的隔离。
关于L3VNI的详细介绍,请参见“EVPN配置指导”中的“EVPN VXLAN”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配L3VNI值为8的BGP EVPN路由,那么配置路由的L3VNI值为6。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match l3-vni 8
[Sysname-route-policy-policy1-10] apply l3-vni 6
apply label-index命令用来配置路由的标签索引值。
undo apply label-index命令用来恢复缺省情况。
【命令】
apply label-index index-value
undo apply label-index
【缺省情况】
未配置路由的标签索引值。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
index-value:指定标签索引值,取值范围为0~1048575。
【使用指导】
本命令用于在SR-MPLS(Segment Routing with MPLS,MPLS段路由)网络中为路由前缀配置标签索引值。SR节点可以通过路由的标签索引值计算出该路由对应的前缀SID。BGP、IS-IS或OSPF引入符合指定路由策略的路由且该路由策略中使用了本apply子句时,可以为引入的路由设置Prefix-SID的标签索引值。
关于SR-MPLS的详细介绍,请参见“Segment Routing配置指导”中的“SR-MPLS”。
如果引入的路由自身携带了标签索引值,则路由协议优先使用路由策略配置的标签索引值。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。设置路由的标签索引值为120。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply label-index 120
apply label-value命令用来配置SID值。
undo apply label-value命令用来恢复缺省情况。
【命令】
apply label-value label-value
undo apply label-value
【缺省情况】
未配置SID值。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
label-value:SID值,取值范围为16~1048575。
【使用指导】
本命令用于在SR-MPLS(Segment Routing with MPLS,MPLS段路由)网络中为路由前缀分配SID:
· 开启BGP-EPE功能后,为指定的等体/对等体组应用路由策略且该路由策略中使用了本apply子句时,可以为BGP邻居分配标签,即SID值。关于BGP-EPE功能的详细介绍,请参见“Segment Routing配置指导”中的“SR-MPLS”。
· 在需要将本地同一Loopback接口的SR标签路由发布到多个OSPF进程或多个IS-IS进程的场景中,可以通过OSPF或IS-IS引入直连路由,并在路由策略中使用apply label-value子句为引入的路由设置SID值来实现。
如果引入的路由自身携带了SID值,则路由协议优先使用路由策略设置的SID值。
关于SR-MPLS的详细介绍,请参见“Segment Routing配置指导”中的“SR-MPLS”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。设置路由的标签值120。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply label-value 120
apply local-preference命令用来配置BGP路由信息的本地优先级。
undo apply local-preference命令用来恢复缺省情况。
【命令】
apply local-preference preference
undo apply local-preference
【缺省情况】
未配置BGP路由信息的本地优先级。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
preference:BGP路由信息的本地优先级,取值范围为0~4294967295。
【使用指导】
本地优先级用来判断流量离开AS时的最佳路由。当BGP路由器通过不同的IBGP对等体得到目的地址相同但下一跳不同的多条路由时,将优先选择本地优先级较高的路由。
有关本地优先级的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的AS路径访问列表,那么配置该BGP路由的本地优先级为130。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply local-preference 130
apply mpls-exp命令用来配置路由的MPLS EXP优先级。
undo apply mpls-exp命令用来恢复缺省情况。
【命令】
apply mpls-exp mpls-exp-value
undo apply mpls-exp
【缺省情况】
未配置路由的MPLS EXP优先级。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
mpls-exp-value:路由的MPLS EXP优先级,取值范围为0~7。
【使用指导】
MPLS网络转发报文时,设备会根据报文标签中所携带的EXP值决定报文传输的优先程度。缺省情况下,Ingress节点为IP报文封装MPLS标签时,会将IP报文的优先级直接拷贝到MPLS标签中;在服务提供商不信任用户网络的流量优先级,或者服务提供商定义的差别服务类型不同于用户网络的情况下,可以通过本命令在Ingress节点上设置路由的EXP优先级。设备将路由添加到FIB表时,该FIB表项携带该EXP优先级。如果设备同时配置了ip forwarding apply mpls-exp enable命令,在进行MPLS报文封装时,会将FIB表项的EXP值封装进MPLS报文中。关于ip forwarding apply mpls-exp enable命令的详细介绍请参见“三层技术—IP业务命令参考”中的“IP转发基础”。
目前,仅支持为BGP路由配置MPLS EXP优先级。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的地址前缀列表abc,那么设置该路由的MPLS EXP优先级为6。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match ip address prefix-list abc
[Sysname-route-policy-policy1-10] apply mpls-exp 6
apply mpls-label命令用来为路由分配MPLS标签。
undo apply mpls-label命令用来恢复缺省情况。
【命令】
apply mpls-label
undo apply mpls-label
【缺省情况】
没有为路由分配MPLS标签。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【使用指导】
如果MPLS标签分配失败,路由信息将不会被发布。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。为路由分配MPLS标签。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply mpls-label
apply origin命令用来配置BGP路由信息的ORIGIN属性。
undo apply origin命令用来恢复缺省情况。
【命令】
apply origin { egp as-number | igp | incomplete }
undo apply origin
【缺省情况】
未配置BGP路由信息的ORIGIN属性。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
egp as-number:设定BGP路由信息的来源为外部路由。as-number表示指定外部路由的自治系统号,取值范围为1~4294967295。
igp:设定BGP路由信息的来源为内部路由。
incomplete:设定BGP路由信息的来源为未知来源。
【使用指导】
ORIGIN属性定义了路由信息的来源,标记一条BGP路由是怎么生成的。它有以下三种类型:
· IGP:优先级最高,表示路由产生于本AS内。
· EGP:优先级次之,表示路由通过EGP学到。
· Incomplete:优先级最低,表示路由的来源无法确定。例如,从其它路由协议引入的路由信息。
关于ORIGIN属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的AS路径访问列表,那么设置该BGP路由的路由源为IGP。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply origin igp
apply preference命令用来配置路由协议的优先级。
undo apply preference命令用来恢复缺省情况。
【命令】
apply preference preference
undo apply preference
【缺省情况】
未配置路由协议的优先级。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
preference:路由的优先级,取值范围为1~255。
【使用指导】
如果路由协议已经用命令preference配置了优先级,再用apply preference命令修改路由协议的优先级,则这些匹配策略的路由采用apply preference命令修改的优先级,其它路由的优先级均采用preference命令所设的值。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配OSPF外部路由,那么设置该路由协议的优先级为90。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match route-type external-type1or2
[Sysname-route-policy-policy1-10] apply preference 90
apply preferred-value命令用来配置BGP路由信息的首选值。
undo apply preferred-value命令恢复缺省情况。
【命令】
apply preferred-value preferred-value
undo apply preferred-value
【缺省情况】
未配置BGP路由信息的首选值。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
preferred-value:首选值,取值范围为0~65535。
【使用指导】
BGP选择路由时首先丢弃下一跳不可达的路由,其次优选首选值最大的路由。通过本命令,可以为BGP路由配置首选值,以便控制BGP路径的选择。
有关首选值的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的AS路径访问列表,那么设置该BGP路由的首选值为66。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply preferred-value 66
apply prefix-priority命令用来配置路由的收敛优先级。
undo apply prefix-priority命令用来恢复缺省情况。
【命令】
apply prefix-priority { critical | high | medium }
undo apply prefix-priority
【缺省情况】
未配置路由的收敛优先级,即路由的收敛优先级为低(Low)。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
critical:路由的收敛优先级为关键。
high:路由的收敛优先级为高。
medium:路由的收敛优先级中。
【使用指导】
在OSPF、IS-IS等协议中,当网络拓扑发生变化时,路由要重新收敛。收敛优先级越高,路由收敛的速度越快。优先级由高到低包括:
· Critical:最高优先级。
· High:高优先级。
· Medium:中优先级。
· Low:低优先级。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的地址前缀列表abc,那么设置该路由的收敛优先级为关键。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match ip address prefix-list abc
[Sysname-route-policy-policy1-10] apply prefix-priority critical
apply tag命令用来配置IGP路由信息的标记。
undo apply tag命令用来恢复缺省情况。
【命令】
apply tag tag-value
undo apply tag
【缺省情况】
未配置IGP路由信息的标记。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
tag-value:指定路由信息的标记值,取值范围为0~4294967295。
【使用指导】
本命令用于为IGP路由添加标记,通过display ip routing table verbose等命令可以查看路由标记的数值。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。配置IGP路由信息的标记为100。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply tag 100
apply track命令用来配置BGP路由关联的Track项。
undo apply track命令用来恢复缺省情况。
【命令】
apply track track-entry-number
undo apply track
【缺省情况】
未配置BGP路由关联的Track项。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
track-entry-number:Track项的序号,取值范围为1~1024。关于Track的详细介绍,请参见“可靠性配置指导”中的“Track”。
【使用指导】
本命令用于在多级BGP组网场景中实现流量的快速切换。如图1-1所示,在此组网中,上游设备的上行链路全部故障时,该设备可能无法及时完成路由的收敛,并无法及时发送撤销消息通知下游设备删除来自该设备的BGP路由。此时部分用户流量仍然被发往上行链路故障的上游设备,导致这部分流量转发失败。
图1-1 多级BGP场景组网图
为了防止上述问题的发生,可以在上游BGP设备上通过配置本命令,设置BGP向下游设备发送的路由关联Track项,在上游设备的上行链路故障时实现用户流量的快速切换。
图1-2 BGP通过与Track的联动来调整发送给对等体/对等体组的BGP路由的优先级
上游BGP设备需要执行以下操作:
(1) 将上行接口链路状态与Track项关联。有关Track的详细介绍,请参见“可靠性配置指导”中的“Track”
(2) 配置路由策略,通过本命令设置设备向下游BGP设备发送的路由关联Track项。
(3) 通过peer advertise lowest-priority track-route-policy命令配置BGP通过与Track的联动来调整发送给对等体/对等体组的BGP路由的优先级,其中指定的对等体/对等体组为下游BGP设备。有关该命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。
完成上述操作后,上游BGP设备的上行链路Down时,其关联的Track项状态会变为Negative,此时BGP也感知到联动的Track项的变化,会立即更新向下游BGP设备发布的所有路由,并且将发布的路由的优先级调整为最低(MED调整为最大值,本地优先级调整为0),使得下游BGP设备不优选来自该上游BGP设备的路由,将用户流量切换到另一台上游BGP设备。此过程跳过了上游BGP设备的上行链路故障后,保持定时器超时、路由失效以及路由撤销的缓慢过程,大幅提高了用户流量路径切换的速度。
仅peer advertise lowest-priority track-route-policy命令引用的路由策略中配置的本命令才生效。
如果peer advertise lowest-priority track-route-policy命令引用了路由策略,则该路由策略仅apply track子句生效,其他子句均不生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit,设置BGP路由关联Track项1。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] apply track 1
【相关命令】
· peer advertise lowest-priority track-route-policy(三层技术-IP路由命令参考/BGP)
apply traffic-index命令用来配置BGP路由信息的流量索引。
undo apply traffic-index命令用来恢复缺省情况。
【命令】
apply traffic-index { value | clear }
undo apply traffic-index
【缺省情况】
未配置BGP路由信息的流量索引。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
value:流量索引值,取值范围为1~64。
clear:清除路由的流量索引值。
【使用指导】
本命令用于BGP策略计费功能。BGP策略计费利用BGP丰富的路由属性(如下一跳、团体属性、AS_PATH等),对IP流量进行分类,为同一类的流量分配相同的流量索引值,进而基于流量索引值对该类流量进行统计。
关于BGP策略计费功能的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配扩展团体列表号100的BGP路由,那么配置路由的流量索引值为6。
<Sysname> system-view
[Sysname] ip extcommunity-list 100 permit soo 100:100
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match extcommunity 100
[Sysname-route-policy-policy1-10] apply traffic-index 6
apply vpn-peer-id命令用来配置BGP路由信息的VPN peer ID值。
undo apply vpn-peer-id命令用来恢复缺省情况。
【命令】
apply vpn-peer-id peer-id
undo apply vpn-peer-id
【缺省情况】
未配置BGP路由信息的VPN peer ID值。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
peer-id:BGP路由信息的VPN peer ID值,取值范围为1~134217727。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配扩展团体列表号100的BGP路由,那么配置BGP路由信息的VPN peer ID值为1。
<Sysname> system-view
[Sysname] ip extcommunity-list 100 permit soo 100:100
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match extcommunity 100
[Sysname-route-policy-policy1-10] apply vpn-peer-id 1
【相关命令】
· vpn-peer(MPLS命令参考/MPLS L3VPN)
continue命令用来配置下一个执行节点。
undo continue命令用来恢复缺省情况。
【命令】
continue [ node-number ]
undo continue
【缺省情况】
未配置下一个执行节点。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
node-number:标识本命令会跳转到的节点索引,取值范围为1~65535。下一个执行节点序列号必须大于当前节点序列号。
【使用指导】
当路由成功匹配当前路由策略节点(必须是permit节点)时,可以指定路由继续匹配同一路由策略内的下一个节点,这样可以组合路由策略各个节点的if-match子句和apply子句,增强路由策略的灵活性。配置了continue子句后,路由如果未匹配下一个执行节点,则会进入后续的其他节点继续匹配。如果需要拒绝该路由继续匹配其他节点,则需要在下一个执行节点之后添加一个没有子句的deny节点。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义continue子句,配置下一个执行节点序列号为20。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] continue 20
description命令用来配置当前策略节点的描述信息。
undo description命令用来恢复缺省情况。
【命令】
description text
undo description
【缺省情况】
未配置策略节点的描述信息。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
text:策略节点的描述信息,为1~80个字符的字符串,区分大小写。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit,描述信息为aa。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] description aa
display ip as-path命令用来显示BGP AS路径过滤列表信息。
【命令】
display ip as-path [ as-path-number | as-path-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
as-path-number:AS路径过滤列表号,取值范围为1~256。
as-path-name:AS路径过滤列表名,为1~51个字符的字符串,区分大小写,不能全为数字。
【使用指导】
如果未指定任何参数,将显示所有已配置的BGP AS路径过滤列表信息。
【举例】
# 显示列表号为1的BGP AS路径列表信息。
<Sysname> display ip as-path 1
As-path-number: 1
Permitted 0
Denied 0
Mode: Permit Regular experssion:10:1
# 显示所有BGP AS路径过滤列表信息。
<Sysname> display ip as-path
As-path-number : 122
Permitted : 41
Denied : 32
Mode : Permit Regular expression: ^10
As-path-name : www
Permitted : 22
Denied : 8
Mode : Permit Regular expression: *200.*300
表1-2 display ip as-path命令显示信息描述表
字段 |
描述 |
As-path-number |
AS路径列表号 |
As-path-name |
AS路径列表名 |
Permitted |
通过策略匹配的路由数目 |
Denied |
未通过策略匹配的路由数目 |
Mode |
匹配模式,有两种取值: · Permit:表示允许 · Deny:表示拒绝 |
Regular expression |
匹配的AS路径正则表达式 |
display ip community-list命令用来显示BGP团体属性列表信息。
【命令】
display ip community-list [ basic-community-list-number | adv-community-list-number | name comm-list-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
basic-community-list-number:为基本团体属性列表号,取值范围为1~99。
adv-community-list-number:为高级团体属性列表号,取值范围为100~199。
name comm-list-name:团体属性列表名,为1~63个不全为数字的字符串,区分大小写。
【使用指导】
如果未指定团体属性列表号或团体属性列表名,将显示所有已配置的BGP团体属性列表信息。
【举例】
# 显示所有的BGP团体属性列表信息。
<Sysname> display ip community-list
Community List Basic aaa
Permit
Community List Advanced bbb
Permit 3333
表1-3 display ip community-list命令显示信息描述表
字段 |
描述 |
Community List Basic |
基本团体属性列表 |
Community List Advanced |
高级团体属性列表 |
permit |
匹配模式,有两种取值: · Permit:表示允许 · Deny:表示拒绝 |
display ip extcommunity-list命令用来显示BGP扩展团体属性列表信息。
【命令】
display ip extcommunity-list [ ext-comm-list-number | ext-comm-list-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
ext-comm-list-number:扩展团体属性列表号,取值范围为1~65535。
ext-comm-list-name:扩展团体属性列表名,为1~63个不全为数字的字符串,区分大小写。
【使用指导】
如果未指定任何参数,将显示所有已配置的BGP扩展团体属性列表信息。
【举例】
# 显示列表号为1的BGP扩展团体属性列表信息。
<Sysname> display ip extcommunity-list 1
Extended Community List Number 1
Permit rt: 9:6
Permit soo: 9:6
Extended Community List Name extlist
Permit rt: 10:10
Permit soo: 1:100
Permit bandwidth: 9:6
表1-4 display ip extcommunity-list命令显示信息描述表
字段 |
描述 |
Extended Community List Number |
扩展团体属性列表 |
Extended Community List Name |
扩展团体属性列表名 |
permit |
匹配模式,有两种取值: · Permit:表示允许 · Deny:表示拒绝 |
rt |
RT(Route Target,路由目标)扩展团体属性 |
soo |
SoO(Site of Origin,源站点)扩展团体属性 |
bandwidth |
Bandwidth(link-bandwidth,链路带宽)扩展团体属性 |
display ip rd-list命令用来显示RD(Route Distinguisher,路由标识符)列表信息。
【命令】
display ip rd-list [ rd-list-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
rd-list-number:显示指定编号的RD列表信息。rd-list-number表示RD列表编号,取值范围为1~65535。如果不指定本参数,则显示所有RD列表的信息。
【举例】
# 显示所有RD列表的信息。
<Sysname> display ip rd-list
Route Distinguisher List Number 1
index: 1 Permit 1.1.1.1:1 2.2.2.2:* 100:1 200:*
Route Distinguisher List Number 2
index: 2 Deny 1:1 2:2
表1-5 display ip rd-list命令显示信息描述表
字段 |
描述 |
Route Distinguisher List Number |
RD属性列表号 |
index |
RD属性列表的表项编号 |
Permit |
匹配模式,取值包括: · Permit:表示允许 · Deny:表示拒绝 |
【相关命令】
· ip rd-list
display route tag-list命令用来显示IGP路由标记列表信息。
【命令】
display route tag-list [ tag-list-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
tag-list-number:IGP路由标记列表号,取值范围为1~65535。如果未指定本参数,将显示所有IGP路由标记列表信息。
【举例】
# 显示列表号为1的IGP路由标记列表信息。
<Sysname> display route tag-list 1
Tag list 1
Index: 1 Mode: Permit Tag value: 1 2 3
Index: 2 Mode: Permit Tag value: 6 7 8
表1-6 display route tag-list命令显示信息描述表
字段 |
描述 |
Tag list |
IGP路由标记列表号 |
Index |
IGP路由标记列表的表项编号 |
Mode |
匹配模式,取值包括: · Permit:表示允许 · Deny:表示拒绝 |
Tag value |
路由标记值 |
【相关命令】
· route tag-list
display route-policy命令用来显示配置的路由策略信息。
【命令】
display route-policy [ name route-policy-name ]
【视图】
【缺省用户角色】
network-admin
network-operator
【参数】
name route-policy-name:指定显示的路由策略名,为1~63个字符的字符串,区分大小写。如果未指定本参数,将显示所有已配置的路由策略信息。
【举例】
# 显示名为policy1的路由策略信息。
<Sysname> display route-policy name policy1
Route-policy: policy1
Permit : 1
Description : permitpolicy
if-match cost 10
continue: next node 11
apply comm-list a delete
表1-7 display route-policy命令显示信息描述表
字段 |
描述 |
Route-policy |
路由策略名称 |
permit |
匹配模式,有两种取值: · Permit:表示允许 · Deny:表示拒绝 |
Description |
路由策略描述信息 |
if-match |
if-match子句,配置的匹配条件 |
continue |
continue字句,配置下一个执行节点 |
apply |
apply子句,如满足匹配条件,则要执行的动作 |
if-match as-path命令用来配置BGP路由信息的AS路径域的匹配条件。
undo if-match as-path命令用来取消BGP路由信息的AS路径域的匹配条件的配置。
【命令】
if-match as-path { as-path-number&<1-32> | as-path-name }
undo if-match as-path [ as-path-number&<1-32> | as-path-name ]
【缺省情况】
未配置BGP路由信息的AS路径域的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
as-path-number&<1-32>:为AS路径过滤列表号,取值范围为1~256。&<1-32>表示前面的参数可以输入1~32次。
name as-path-name:AS路径过滤列表名,为1~51个字符的字符串,区分大小写,不能全为数字。
【使用指导】
如果本命令中指定的AS路径过滤列表尚未创建,则需要通过ip as-path命令创建对应的AS路径过滤列表。
本命令与ip as-path命令配合使用,可以作为路由策略的匹配条件,通过匹配条件可以筛选出存在指定AS_PATH的BGP路由。
有关AS_PATH属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 首先配置一个编号为2的as-path,允许自治系统号包含200和300的路由信息通过。然后创建一个名为test的路由策略,该路由策略编号为10的节点定义了一条if-match子句,它引用的是先前定义的as-path。
<Sysname> system-view
[Sysname] ip as-path 2 permit _*200.*300
[Sysname] route-policy test permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 2
【相关命令】
· apply as-path
· ip as-path
if-match community命令用来配置BGP路由信息的团体属性的匹配条件。
undo if-match community命令用来取消BGP路由信息的团体属性的匹配条件的配置。
【命令】
if-match community { { basic-community-list-number | name comm-list-name } [ whole-match ] | adv-community-list-number }&<1-32>
undo if-match community [ { basic-community-list-number | name comm-list-name } [ whole-match ] | adv-community-list-number ]&<1-32>
【缺省情况】
未配置BGP路由信息的团体属性的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
basic-community-list-number:为基本团体属性列表号,取值范围为1~99。
adv-community-list-number:为高级团体属性列表号,取值范围为100~199。
comm-list-name:团体属性列表名,为1~63个不全为数字的字符串,区分大小写。
whole-match:为确切匹配,即所有团体而且仅有这些团体必须出现。
&<1-32>:表示前面的参数可以输入1~32次。
【使用指导】
如果本命令中指定的团体属性列表尚未创建,则需要通过ip community-list命令创建对应的团体属性列表。
本命令与ip community-list命令配合使用,可以作为路由策略的匹配条件,通过匹配条件可以筛选出存在指定团体属性的BGP路由。
有关团体属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 首先配置一个编号为1的community-list,允许包含团体号100和200的路由信息。然后创建一个名为test的路由策略,该路由策略编号为10的节点定义了一条if-match子句,它引用的是先前定义的community-list。
<Sysname> system-view
[Sysname] ip community-list 1 permit 100 200
[Sysname] route-policy test permit node 10
[Sysname-route-policy-test-10] if-match community 1
【相关命令】
· apply community
· ip community-list
if-match cost命令用来配置路由信息的路由开销的匹配条件。
undo if-match cost命令用来恢复缺省情况。
【命令】
if-match cost cost-value
undo if-match cost
【缺省情况】
未配置路由信息的路由开销的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
cost-value:路由开销,取值范围为0~4294967295。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许路由开销为8的路由信息通过。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match cost 8
if-match extcommunity命令用来配置BGP路由信息的扩展团体属性的匹配条件。
undo if-match extcommunity命令用来取消BGP路由信息的扩展团体属性的匹配条件的配置。
【命令】
if-match extcommunity { ext-comm-list-number | ext-comm-list-name }&<1-32>
undo if-match extcommunity [ ext-comm-list-number | ext-comm-list-name ]&<1-32>
【缺省情况】
未配置BGP路由信息的扩展团体属性的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
ext-comm-list-number&<1-32>:扩展团体属性列表号,取值范围为1~65535。&<1-32>表示前面的参数可以输入1~32次。
ext-comm-list-name:扩展团体属性列表名,为1~63个不全为数字的字符串,区分大小写。&<1-32>表示前面的参数可以输入1~32次。
【使用指导】
如果本命令中指定的扩展团体属性列表尚未创建,则需要通过ip extcommunity-list命令创建对应的团体属性列表。
本命令与ip extcommunity-list命令配合使用,可以作为路由策略的匹配条件,通过匹配条件可以筛选出存在指定扩展团体属性的BGP路由。
有关扩展团体属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配已存在的扩展团体列表号100和150定义的扩展团体属性的路由。
<Sysname> system-view
[Sysname] ip extcommunity-list 100 permit soo 100:100
[Sysname] ip extcommunity-list 150 permit soo 150:150
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match extcommunity 100 150
【相关命令】
· apply extcommunity
· ip extcommunity-list
if-match interface命令用来配置路由信息的出接口的匹配条件。
undo if-match interface命令用来取消路由信息的出接口的匹配条件的配置。
【命令】
if-match interface { interface-type interface-number }&<1-16>
undo if-match interface [ interface-type interface-number ]&<1-16>
【缺省情况】
未配置路由信息的出接口的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
interface-type interface-number:指定接口类型和编号。
&<1-16>:表示前面的参数可以输入1~16次。
【使用指导】
将路由策略应用到BGP时,BGP协议不支持配置路由信息的出接口的匹配条件。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配出接口为GigabitEthernet0/0/1的路由信息。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match interface gigabitethernet 0/0/1
if-match l3-vni命令用来配置L3VNI的匹配条件。
undo if-match l3-vni命令用来恢复缺省情况。
【命令】
if-match l3-vni vxlan-id
undo if-match l3-vni
【缺省情况】
未配置L3VNI的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
vxlan-id:L3VNI,取值范围为0~16777215。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配L3VNI值为8的BGP EVPN路由。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match l3-vni 8
if-match local-preference命令用来配置BGP路由信息的本地优先级的匹配条件。
undo if-match local-preference命令用来恢复缺省情况。
【命令】
if-match local-preference preference
undo if-match local-preference
【缺省情况】
未配置BGP路由信息的本地优先级的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
preference:BGP路由信息的本地优先级,取值范围为0~4294967295。
【使用指导】
本地优先级用来判断流量离开AS时的最佳路由。当BGP路由器通过不同的IBGP对等体得到目的地址相同但下一跳不同的多条路由时,将优先选择本地优先级较高的路由。
有关本地优先级的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许BGP路由信息的本地优先级为2的路由信息通过。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match local-preference 2
if-match mpls-label命令用来配置路由信息的MPLS标签的匹配条件。
undo if-match mpls-label命令用来恢复缺省情况。
【命令】
if-match mpls-label
undo if-match mpls-label
【缺省情况】
未配置路由信息的MPLS标签的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配路由信息的MPLS标签。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match mpls-label
if-match protocol命令用来配置路由协议类型的匹配条件。
undo if-match protocol命令用来取消路由协议类型匹配条件的配置。
【命令】
if-match protocol { bgp | direct | isis | ospf | ospfv3 | rip | ripng | static | unr } *
undo if-match protocol [ bgp | direct | isis | ospf | ospfv3 | rip | ripng | static | unr ] *
【缺省情况】
未配置路由协议类型的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
bgp:匹配BGP协议的路由。
direct:匹配直连路由。
isis:匹配IS-IS协议的路由。
ospf:匹配OSPF协议的路由。
ospfv3:匹配OSPFv3协议的路由。
rip:匹配RIP协议的路由。
ripng:匹配RIPng协议的路由。
static:匹配静态路由。
unr:匹配UNR(User Network Route,用户网络路由)路由。
【使用指导】
通过本命令可以实现路由策略根据路由协议类型对路由进行过滤。指定多个协议类型时,各个协议类型之间是“或”的关系,即路由信息只要属于其中一种协议类型,就认为通过本命令的匹配。
如果某条命令既指定了路由协议类型,又引用配置了本命令的路由策略,则本命令不生效。例如,执行import-route static route-policy route-policy-name命令为BGP路由引入静态路由时,指定的路由策略中配置了if-match protocol命令,则if-match protocol命令不生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配直连路由和静态路由。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match protocol direct static
if-match rd-list命令用来配置VPN路由RD(Route Distinguisher,路由标识符)属性的匹配条件。
undo if-match rd-list命令用来取消VPN路由RD属性匹配条件的配置。
【命令】
if-match rd-list rd-list-number
undo if-match rd-list
【缺省情况】
未配置VPN路由RD属性的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
rd-list-number:指定RD属性列表号,取值范围为1~65535。
【使用指导】
如果本命令中指定的RD属性列表尚未创建,则需要通过ip rd-list命令创建对应的RD属性列表。
本命令与ip rd-list命令配合使用,可以作为路由策略的匹配条件,通过匹配条件可以筛选出存在指定RD属性的BGP路由。
有关RD的详细介绍,请参见“MPLS配置指导”中的“MPLS L3VPN”。
【举例】
# 配置一个编号为1的RD属性列表,允许包含RD号为1:1的路由信息通过,创建一个名为rp1的路由策略,该路由策略中编号为10的节点定义了一条if-match子句,引用编号为1的RD属性列表。
<Sysname> system-view
[Sysname] ip rd-list 1 permit 1:1
[Sysname] route-policy rp1 permit node 10
[Sysname-route-policy-rp1-10] if-match rd-list 1
【相关命令】
· ip rd-list
if-match route-policy命令用来将子路由策略作为路由策略的匹配条件。
undo if-match route-policy命令用来恢复缺省情况。
【命令】
if-match route-policy route-policy-name
undo if-match route-policy
【缺省情况】
未将子路由策略作为路由策略的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
route-policy-name:指定子路由策略名,为1~63个字符的字符串,区分大小写。
【使用指导】
使用子路由策略作为父路由策略的匹配条件时,对于子路由策略中不同的节点匹配模式,匹配机制如下:
· 如果节点的匹配模式为deny,则当路由项满足该节点的所有if-match子句时被拒绝通过该节点的过滤,并且不会进行下一个节点的匹配;如果路由项不满足该节点的if-match子句,将进入下一个节点继续匹配。匹配完成时,父路由策略将继承该匹配结果。
· 如果节点的匹配模式为permit,则当路由项满足该节点的所有if-match子句时被允许通过该节点的过滤并执行该节点的apply子句,父路由策略将继承apply结果。如路由项不满足该节点的if-match子句,将继续匹配该路由策略的下一个节点。
将子路由策略作为路由策略的匹配条件时,需要注意的是:
· 如果指定的子路由策略不存在,则默认满足该匹配条件。
· 最多只能嵌套一层,即不支持子路由策略再嵌套子路由策略。例如路由策略a使用路由策略b作为匹配条件,则路由策略b不能再使用其他路由策略作为匹配条件,路由策略a也不能作为其他路由策略的匹配条件。
· 不能形成循环,例如路由策略a使用路由策略b作为匹配条件,则路由策略b不能使用路由策略a作为匹配条件。
同一路由策略视图下,多次执行本命令时,最后一次执行的命令生效。
【举例】
# 创建一个名为parent的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许满足子路由策略child的路由信息通过。
<Sysname> system-view
[Sysname] route-policy parent permit node 10
[Sysname-route-policy-parent-10] if-match route-policy child
if-match route-type命令用来配置路由信息类型的匹配条件。
undo if-match route-type命令用来取消路由信息类型的匹配条件的配置。
【命令】
if-match route-type { bgp-evpn-imet | bgp-evpn-ip-prefix | bgp-evpn-mac-ip | bgp-evpn-s-pmsi | bgp-evpn-smet | external-type1 | external-type1or2 | external-type2 | internal | is-is-level-1 | is-is-level-2 | nssa-external-type1 | nssa-external-type1or2 | nssa-external-type2 } *
undo if-match route-type [ bgp-evpn-imet | bgp-evpn-ip-prefix | bgp-evpn-mac-ip | bgp-evpn-s-pmsi | bgp-evpn-smet | external-type1 | external-type1or2 | external-type2 | internal | is-is-level-1 | is-is-level-2 | nssa-external-type1 | nssa-external-type1or2 | nssa-external-type2 ] *
【缺省情况】
未配置路由信息的类型的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
bgp-evpn-imet:BGP EVPN的IMET(Inclusive Multicast Ethernet Tag Route,包含性组播以太网标签路由)路由。
bgp-evpn-ip-prefix:BGP EVPN的IP前缀路由。
bgp-evpn-mac-ip:BGP EVPN的MAC/IP发布路由。
bgp-evpn-s-pmsi:BGP EVPN的S-PMSI(Selective Provider Multicast Service Interface Route,选择性组播业务接口路由)路由。
bgp-evpn-smet:BGP EVPN的SMET(Selective Multicast Ethernet Tag Route,选择性组播以太网标签路由)路由。
external-type1:OSPF Type1的外部路由。
external-type1or2:OSPF外部路由。
external-type2:OSPF Type2的外部路由。
internal:内部路由(包括OSPF区域间和区域内路由)。
is-is-level-1:IS-IS的Level-1路由。
is-is-level-2:IS-IS的Level-2路由。
nssa-external-type1:OSPF NSSA Type1的外部路由。
nssa-external-type1or2:OSPF NSSA的外部路由。
nssa-external-type2:OSPF NSSA Type2的外部路由。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配internal类型的路由。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match route-type internal
if-match rpki命令用来配置BGP RPKI验证结果的匹配条件。
undo if-match rpki命令用来恢复缺省情况。
【命令】
if-match rpki { invalid | not-found | valid }
undo if-match rpki
【缺省情况】
未配置BGP RPKI验证结果的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
invalid:匹配BGP RPKI验证结果为Invalid的路由。
not-found:匹配BGP RPKI验证结果为Not-found的路由。
valid:匹配BGP RPKI验证结果为Valid的路由。
【使用指导】
BGP RPKI(Resource Public Key Infrastructure,资源公钥基础设施)功能用于在设备在收到BGP路由的时候,验证源AS是否合法,并根据验证结果来决定是否使用该BGP路由以及是否发布该路由。
关于BGP RPKI的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许BGP RPKI验证结果为Valid的路由信息通过。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match rpki valid
if-match tag命令用来配置IGP路由信息标记的匹配条件。
undo if-match tag命令用来恢复缺省情况。
【命令】
if-match tag tag-value
undo if-match tag
【缺省情况】
未配置IGP路由信息标记的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
tag-value:指定要求的标记值,取值范围为0~4294967295。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,匹配标记为8的IGP路由信息。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match tag 8
if-match tag-list命令用来配置IGP路由标记列表的匹配条件。
undo if-match tag-list命令用来恢复缺省情况。
【命令】
if-match tag-list tag-list-number
undo if-match tag-list
【缺省情况】
未配置IGP路由标记列表的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
tag-list-number:IGP路由标记列表号,取值范围为1~65535。
【使用指导】
通过指定匹配IGP路由标记列表,可在同一策略节点下匹配多个IGP路由标记。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许匹配路由标记列表号为100的IGP路由通过。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match tag-list 100
【相关命令】
· route tag-list
ip as-path命令用来配置一个AS路径过滤列表。
undo ip as-path命令用来删除指定的AS路径过滤列表。
【命令】
ip as-path { as-path-number | as-path-name } { deny | permit } regular-expression
undo ip as-path { as-path-number | as-path-name } [ regular-expression | deny | permit ]
【缺省情况】
不存在AS路径过滤列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
as-path-number:指定的AS路径过滤列表号,取值范围为1~256。
as-path-name:指定的AS路径过滤列表名,为1~51个字符的字符串,区分大小写,不能全为数字。
deny:指定AS路径过滤列表的匹配模式为拒绝模式。
permit:指定AS路径过滤列表的匹配模式为允许模式。
regular-expression:AS路径正则表达式,为1~256个字符的字符串。
【使用指导】
AS_PATH属性记录了某条路由从本地到目的地址所要经过的所有AS号。当BGP路由器将一条路由通告到其他AS时,会把本地AS号添加在AS_PATH列表中。收到此路由的BGP路由器根据AS_PATH属性就可以知道到达目的地址所要经过的AS。
通过本命令可以使用正则表达式筛选BGP路由的AS_PATH属性。例如^200.*100$,表示匹配所有AS 200开始、以AS 100结束的AS路径域。
AS路径正则表达式所用到的特殊字符及其含义,请参见“三层技术-IP路由配置指导”中的“路由策略”。AS_PATH属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 配置序号为1的AS路径过滤列表,允许AS_PATH以10开头的路由信息通过。
<Sysname> system-view
[Sysname] ip as-path 1 permit ^10
【相关命令】
· apply as-path
· display ip as-path
· if-match as-path
ip community-list命令用来配置一个团体属性列表。
undo ip community-list命令用来删除指定的团体属性列表。
【命令】
ip community-list { basic-comm-list-num | basic basic-comm-list-name } { deny | permit } [ community-number&<1-32> | aa:nn&<1-32> ] [ internet | no-advertise | no-export | no-export-subconfed ] *
undo ip community-list { basic-comm-list-num | basic basic-comm-list-name } [ deny | permit ] [ community-number&<1-32> | aa:nn&<1-32> ] [ internet | no-advertise | no-export | no-export-subconfed ] *
ip community-list { adv-comm-list-num | advanced adv-comm-list-name } { deny | permit } regular-expression
undo ip community-list { adv-comm-list-num | advanced adv-comm-list-name } [ deny | permit ] [ regular-expression ]
【缺省情况】
不存在团体属性列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
basic-comm-list-num:基本团体属性列表号,取值范围为1~99。
basic basic-comm-list-name:标识基本团体属性名称。basic-comm-list-name为1~63个不全为数字的字符串,区分大小写。
advanced adv-comm-list-name:标识高级团体属性名称。adv-comm-list-name为1~63个不全为数字的字符串,区分大小写。
adv-comm-list-num:高级团体属性列表号,取值范围为100~199。
regular-expression:指定高级团体属性的正则表达式,为1~63个字符的字符串。有关正则表达式的详细介绍,请参见“三层技术-IP路由配置指导”中的“路由策略”。
deny:指定团体属性列表的匹配模式为拒绝模式。
permit:指定团体属性列表的匹配模式为允许模式。
community-number&<1-32>:团体序号,取值范围为1~4294967295。&<1-32>表示前面的参数可以输入1~32次。
aa:nn&<1-32>:团体号,aa和nn的取值范围为0~65535。&<1-32>表示前面的参数可以输入1~32次。
internet:预定义的团体属性。缺省情况下,所有的路由都具有internet团体属性,可以被通告给所有的BGP对等体。
no-advertise:具有此属性的路由在收到后,不能被通告给任何其他的BGP对等体。
no-export:具有此属性的路由在收到后,不能被发布到本地AS之外。如果使用了联盟,则不能被发布到联盟之外,但可以发布给联盟中的其他子AS。
no-export-subconfed:具有此属性的路由在收到后,不能被发布到本地AS之外,也不能发布到联盟中的其他子AS。
【使用指导】
BGP将具有相同特征的路由归为一组,称为一个团体,通过在路由中携带团体属性标识路由所属的团体。使用团体属性列表可以自定义团体属性,以便更为灵活地控制路由策略。
有关团体属性的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
【举例】
# 配置序号为1的基本团体属性列表,允许internet团体属性的路由信息通过。
<Sysname> system-view
[Sysname] ip community-list 1 permit internet
# 配置序号为100的高级团体属性列表,允许团体属性内容以“10”开头的路由信息通过。
<Sysname> system-view
[Sysname] ip community-list 100 permit ^10
【相关命令】
· apply comm-list delete
· apply community
· display ip community-list
ip extcommunity-list命令用来配置一个扩展团体属性列表。
undo ip extcommunity-list命令用来删除指定的扩展团体属性列表。
【命令】
ip extcommunity-list { ext-comm-list-number | ext-comm-list-name } { deny | permit } { bandwidth link-bandwidth-value | rt route-target | soo site-of-origin | color color }&<1-32>
ip extcommunity-list { ext-comm-list-number | ext-comm-list-name } { deny | permit } priority-color { basic priority-color&<1-32> [ not-match-priority ] | advanced regular-expression }
undo ip extcommunity-list { ext-comm-list-number | ext-comm-list-name } [ { deny | permit } [ bandwidth link-bandwidth-value | rt route-target | soo site-of-origin | color color ]&<1-32> ]
undo ip extcommunity-list { ext-comm-list-number | ext-comm-list-name } [ { deny | permit } [ priority-color { basic priority-color&<1-32> | advanced regular-expression } ] ]
【缺省情况】
不存在扩展团体属性列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
ext-comm-list-number:扩展团体属性列表号,取值范围为1~65535。
ext-comm-list-name:扩展团体属性列表名,为1~63个不全为数字的字符串,区分大小写。
deny:指定扩展团体属性列表的匹配模式为拒绝模式。
permit:指定扩展团体属性列表的匹配模式为允许模式。
bandwidth link-bandwidth-value:指定的链路带宽扩展团体属性,为3~16个字符的字符串。&<1-32>表示前面的参数可以输入1~32次。link-bandwidth-value的形式为16位自治系统号:32位用户自定义数,例如:100:3。其中,自治系统号取值范围为0~65535,用户自定义数取值范围为0~4294967295。
rt route-target:指定的RT(Route Target,路由目标)扩展团体属性,为3~24个字符的字符串。&<1-32>表示前面的参数可以输入1~32次。
soo site-of-origin:指定的SoO(Site of Origin,源站点)扩展团体属性,为3~24个字符的字符串。&<1-32>表示前面的参数可以输入1~32次。
route-target和site-of-origin有五种形式,分别如下:
· 16位整数形式自治系统号:32位用户自定义数,例如:101:3。其中,自治系统号取值范围为0~65535,用户自定义数取值范围为0~4294967295。
· 16位点分形式自治系统号:32位用户自定义数字。例如:0.1:1。其中,自治系统号的取值范围为0.1~0.65535。
· 32位IP地址:16位用户自定义数,例如:192.168.122.15:1。其中,用户自定义数取值范围为0~65535。
· 32位整数形式自治系统号:16位用户自定义数,例如:70000:3。其中,自治系统号取值范围为65536~4294967295,用户自定义数取值范围为0~65535。
· 32位IP地址/IPv4地址掩码:16位用户自定义数。例如:192.168.122.15/24:1。
· 32位点分形式自治系统号:16位用户自定义数字。例如:10.1:1。其中,自治系统号的最小值为1.0。
color color:Color扩展团体属性,为4~13个字符的字符串。color形式为CO(Color-Only)标记位:color-value,例如:10:3。其中,CO标记位取值为二进制数00~11,color-value取值范围为0~4294967295。
priority-color:Priority-Color扩展团体属性列表。
basic priority-color&<1-32>:通过指定的Priority-Color扩展团体属性匹配路由。priority-color为3~12个字符的字符串。priority-color的格式为优先级:Site ID:Device ID或优先级:Site ID。其中,优先级的取值范围为0~15;Site ID的取值范围为1~65535;Device ID的取值范围为1~255。不指定Device ID时,所有Site ID为指定值的Priority-Color扩展团体属性都会被匹配。&<1-32>表示前面的参数最多可以重复输入32次。
not-match-priority:不匹配Priority-Color扩展团体属性中的优先级字段,只匹配Site ID和Device ID字段。如果未指定本参数,则Priority-Color扩展团体属性中,所有字段都与指定值相同的路由才会被匹配。
advanced regular-expression:使用正则表达式匹配Priority-Color扩展团体属性,进而匹配路由。regular-expression为正则表达式,为1~63个字符的字符串。只要路由携带了能够匹配正则表达式的Priority-Color扩展团体属性,该路由就会被扩展团体属性列表匹配。
【使用指导】
扩展团体属性列表用来对路由信息进行过滤。
扩展团体属性列表中可以定义多个表项。在匹配过程中,各表项之间是“或”的关系,即只要路由信息通过该列表中的一条表项,就认为通过该扩展团体属性列表。同一个表项中如果指定了多个属性,则路由信息只有同时匹配这些属性,才会匹配该表项。
使用display ip extcommunity-list命令可以查看扩展团体属性列表的详细配置。
对于同一个扩展团体属性列表中的多个表项,只能同时配置或者同时不配置advanced regular-expression参数,否则后执行的命令失败。
执行本命令时,如果指定了已存在的扩展团体属性列表编号ext-comm-list-number或名称ext-comm-list-name,可以向列表中添加新的表项,或者修改已存在的表项:
· 如果未指定index index-number参数或者指定了列表中不存在的表项编号,则执行本命令可以向列表中添加新的表项。
· 如果指定了列表中已存在的表项编号,则执行本命令可以修改已存在的表项,最后一次执行的命令生效。
【举例】
# 配置序号为1的扩展团体属性列表,允许RT为200:200的路由信息通过。
<Sysname> system-view
[Sysname] ip extcommunity-list 1 permit rt 200:200
# 配置序号为2的扩展团体属性列表,允许SoO为100:100的路由信息通过。
<Sysname> system-view
[Sysname] ip extcommunity-list 2 permit soo 100:100
# 配置序号为3的扩展团体属性列表,允许链路带宽扩展团体属性为100:100的路由信息通过。
<Sysname> system-view
[Sysname] ip extcommunity-list 3 permit bandwidth 100:100
# 配置序号为3的扩展团体属性列表,允许Priority-Color为10:10:10的路由信息通过。
<Sysname> system-view
[Sysname] ip extcommunity-list 3 permit priority-color 10:10:10
# 配置序号为4的扩展团体属性列表,允许Color为00:1的路由信息通过。
<Sysname> system-view
[Sysname] ip extcommunity-list 4 permit color 00:1
【相关命令】
· apply extcommunity
· apply extcommunity priority-color
· display ip extcommunity-list
· if-match extcommunity
ip rd-list命令用来配置一个RD(Route Distinguisher,路由标识符)属性列表。
undo ip rd-list命令用来删除指定RD属性列表或其某个表项。
【命令】
ip rd-list rd-list-number [ index index-number ] { deny | permit } route-distinguisher&<1-10>
undo ip rd-list rd-list-number [ index index-number ] [ { deny | permit } route-distinguisher&<1-10> ]
【缺省情况】
不存在RD属性列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
rd-list-number:RD属性列表编号,取值范围为为1~65535。
index index-number:指定RD属性列表中的表项编号,index-number取值范围为1~4294967295。表项编号值小的表项先被匹配。如果未指定本参数,该表项编号按照配置先后顺序依次递增,每次加10,第一个序号值为10;若当前表项编号已为最大值,则从未使用的表项编号中从小到大分配。
deny:指定所定义的RD属性列表的匹配模式为拒绝模式。
permit:指定所定义的RD属性列表的匹配模式为允许模式。
route-distinguisher&<1-10>:路由标识符,为3~21个字符的字符串。&<1-10>表示前面的参数最多可以输入10次。路由标识符有以下几种配置格式:
· 16位整数形式自治系统号:32位用户自定义数。例如:101:3。
· 16位点分形式自治系统号:32位用户自定义数,例如:0.1:3。其中,自治系统号的取值范围为0.1~0.65535。
· 16位整数形式自治系统号:*,*表示任意值。例如:101:*表示匹配RD号为101:xxx(xxx表示取值范围内的任意值)的VPN路由。
· 16位点分形式自治系统号:*,*表示任意值,例如:0.1:*表示匹配RD号为0.1:xxx(xxx表示取值范围内的任意值)的VPN路由。其中,自治系统号的取值范围为0.1~0.65535。
· 32位IP地址:16位用户自定义数。例如:192.168.122.15:1。
· 32位IP地址:*,*表示任意值。例如:192.168.122.15:*表示匹配RD号为192.168.122.15:xxx(xxx表示取值范围内的任意值)的VPN路由。
· 32位整数形式自治系统号:16位用户自定义数字,其中的自治系统号最小值为65536。例如:65536:1。
· 32位点分形式自治系统号:16位用户自定义数,其中的自治系统号最小值为1.0。例如:65535.65535:1。
· 32位整数形式自治系统号:*,*表示任意值,其中的自治系统号最小值为65536。例如:65536:*表示匹配RD号为65536:xxx(xxx表示取值范围内的任意值)的VPN路由。
· 32位点分形式自治系统号:*,*表示任意值,其中的自治系统号最小值为1.0。例如:1.0:*表示匹配RD号为1.0:xxx(xxx表示取值范围内的任意值)的VPN路由。
【使用指导】
RD属性列表用于过滤VPN路由信息,一个RD属性列表可以有若干条表项,每一表项可指定一个或多个路由标识符。RD属性列表中各个表项之间的过滤关系是“或”的关系,其使用规则如下:
· 引用不存在的RD属性列表进行过滤时,认为通过该RD属性列表的过滤。
· 引用已经存在的RD属性列表进行过滤时,如果路由信息的RD通过一条表项的过滤,则认为通过该RD属性列表的过滤;如果路由信息的RD没有通过RD属性列表中任何一条表项的过滤,则认为未通过该RD属性列表的过滤。
有关RD的详细介绍,请参见“MPLS配置指导”中的“MPLS L3VPN”。
【举例】
# 配置一个编号为1的RD属性列表,允许包含RD号100:1的路由信息通过。
<Sysname> system-view
[Sysname] ip rd-list 1 permit 100:1
【相关命令】
· display ip rd-list
· if-match rd-list
route tag-list命令用来配置IGP路由标记列表。
undo route tag-list命令用来删除指定的IGP路由标记列表或某个表项。
【命令】
route tag-list tag-list-number [ index index-number ] { deny | permit } tag-value&<1-32>
undo route tag-list tag-list-number [ index index-number [ { deny | permit } tag-value&<1-32> ] ]
【缺省情况】
不存在路由信息标记列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
tag-list-number:路由标记列表号,取值范围为1~65535。
index index-number:路由标记列表中的表项编号,用来唯一标识一条表项,取值范围为1~4294967295。每个路由标记列表可以包含多条表项,index-number取值小的表项优先匹配。如果未指定本参数,表项编号值按照配置先后顺序依次递增,每次加1,第一个表项编号值为1;若当前表项编号已为最大值,则从未使用的表项编号中从小到大分配。
deny:指定路由标记列表的匹配模式为拒绝模式。
permit:指定路由标记列表的匹配模式为允许模式。
tag-value:路由标记值,取值范围为0~4294967295。&<1-32>表示前面的参数最多可以输入32次。
【使用指导】
重复执行本命令配置路由标记列表中的同一条表项时,配置后表项中的路由标记为多次配置结果的集合,且标记的个数不能超过32。
【举例】
# 配置列表号为1、表项编号为10的IGP路由标记列表表项,允许标记值为100的路由通过。
<Sysname> system-view
[Sysname] route tag-list 1 index 10 permit 100
【相关命令】
· display route tag-list
· if-match tag-list
reset ip as-path命令用来清除BGP AS路径过滤列表统计信息。
【命令】
reset ip as-path [ as-path-number | as-path-name ]
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
as-path-number:指定的AS路径过滤列表号,取值范围为1~256。
as-path-name:指定AS路径过滤列表名,为1~51个字符的字符串。
【使用指导】
如果未指定任何参数,将清除所有的BGP AS路径过滤列表统计信息。
【举例】
# 清除名称为abc的BGP AS路径过滤列表的统计信息。
<Sysname> reset ip as-path abc
【相关命令】
· display ip as-path
route-policy命令用来创建路由策略,并进入该路由策略视图。如果指定的路由策略已经存在,则直接进入该路由策略视图。
undo route-policy命令用来删除指定的路由策略。
【命令】
route-policy route-policy-name { deny | permit } node node-number
undo route-policy route-policy-name [ deny | permit ] [ node node-number ]
【缺省情况】
不存在路由策略。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
route-policy-name:指定路由策略名,为1~63个字符的字符串,区分大小写。
deny:指定所定义的路由策略节点的匹配模式为拒绝模式。当路由项满足该节点的所有if-match子句时被拒绝通过该节点的过滤,并且不会进行下一个节点的匹配;如果路由项不满足该节点的if-match子句,将进入下一个节点继续匹配。
permit:指定所定义的路由策略节点的匹配模式为允许模式。当路由项满足该节点的所有if-match子句时被允许通过该节点的过滤并执行该节点的apply子句,如路由项不满足该节点的if-match子句,将继续匹配该路由策略的下一个节点。
node node-number:标识路由策略中的一个节点索引,当该路由策略用于路由信息过滤时,node-number小的节点先被匹配,取值范围为0~65535。
【使用指导】
路由策略用于路由信息过滤。
一个路由策略由若干节点组成,每一节点由一些if-match子句和apply子句组成。if-match子句定义该节点的匹配规则,apply子句定义通过该节点过滤后进行的动作。节点中不同类型的if-match子句之间的过滤关系是“与”的关系,相同类型的if-match子句是“或”的关系,即必须满足该节点所有类型的if-match子句。路由策略节点之间的过滤关系是“或”的关系,即通过一个节点的过滤就意味着通过该路由策略的过滤。若没有通过任一节点的过滤,则表示没有通过该路由策略的过滤。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit,并进入路由策略视图。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10]
【相关命令】
· display route-policy
route-policy-change delay-time命令用来在路由策略变化后控制路由策略的生效延迟时间。
undo route-policy-change delay-time命令用来恢复缺省情况。
【命令】
route-policy-change delay-time { time-value | unlimited }
undo route-policy-change delay-time
【缺省情况】
变化后的路由策略立即生效,但路由协议会延迟5秒才会响应。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
time-value:配置生效延迟时间,单位为秒,取值范围为60~3600。生效延迟时间结束后,路由协议会再延迟5秒才响应。
unlimited:配置生效延迟时间为无穷大。
【使用指导】
当路由策略配置内容较多(如节点、if-match子句、apply子句)时,为了防止尚未配置完成的路由策略提前生效导致路由被错误的发布,可通过配置本命令使得路由策略延迟生效。
路由策略的变化包括:
· 创建路由策略。
· 新增、修改或删除已经存在的路由策略的节点、if-match子句、apply子句等。
· 新增、修改或删除IPv4地址前缀列表、IPv6地址前缀列表、AS路径过滤列表、团体属性列表、扩展团体属性列表、MAC地址列表。
· if-match子句中使用的ACL发生变化。
配置本命令后,当路由策略发生变化时,将触发系统启动定时器,定时器的值为用户通过本命令设置的生效延迟时间。在定时器超时前,路由策略发生的所有变化均不会生效。
如果配置路由策略需要的时间比较长,可以先指定unlimited参数,当路由策略配置完成后再执行undo route-policy delay-time命令。
如果在定时器超时前修改了路由策略的生效延迟时间,定时器将重新开始计时。
【举例】
# 路由策略变化后路由策略的生效延迟时间为60秒。
<Sysname> system-view
[Sysname] route-policy-change delay-time 60
route-policy non-exist-deny命令用来配置使用未创建的路由策略进行路由过滤时,路由不能通过该路由策略的过滤。
undo route-policy non-exist-deny命令用来恢复缺省情况。
【命令】
route-policy non-exist-deny
undo route-policy non-exist-deny
【缺省情况】
使用路由策略进行路由过滤时,如果该路由策略未创建,则路由可以通过该路由策略的过滤。
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
配置本命令后,使用未创建的路由策略进行路由过滤时,路由无法通过该路由策略的过滤。如果后续创建了该路由策略,设备将使用该路由策略进行路由过滤。
本命令仅对BGP路由生效。配置本命令后,如果使用未创建的路由策略进行路由过滤,则其他协议的路由仍然可以通过该路由策略的过滤。
【举例】
# 配置使用未创建的路由策略进行路由过滤时,路由不能通过该路由策略的过滤。
<Sysname> system-view
[Sysname] route-policy non-exist-deny
route-policy prefix-protocol-check命令用来配置路由策略对路由信息的协议类型(IPv4或IPv6)和通过if-match子句指定的地址前缀列表的协议类型进行匹配检查,协议类型不一致的路由信息无法通过该if-match子句的过滤。
undo route-policy prefix-protocol-check命令用来恢复缺省情况。
【命令】
route-policy prefix-protocol-check
undo route-policy prefix-protocol-check
【缺省情况】
路由策略不会对路由信息的协议类型(IPv4或IPv6)和通过if-match子句指定的地址前缀列表的协议类型进行匹配检查。如果if-match子句指定了IPv6地址前缀列表,则所有的IPv4路由信息都会匹配该子句;如果if-match子句指定了IPv4地址前缀列表,则所有的IPv6路由信息都会匹配该子句。
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
配置本命令后,如果路由策略的if-match子句指定了IPv6地址前缀列表,则所有的IPv4路由信息都无法通过该子句的匹配;如果if-match子句指定了IPv4地址前缀列表,则所有的IPv6路由信息都无法通过该子句的匹配。
配置route-policy prefix-protocol-check命令后,所有引用路由策略进行路由过滤的IGP和BGP协议会对路由信息的协议类型(IPv4或IPv6)和通过if-match子句指定的地址前缀列表的协议类型进行匹配检查。
配置undo route-policy prefix-protocol-check命令后,所有引用路由策略进行路由过滤的IGP和BGP协议会取消对路由信息的协议类型(IPv4或IPv6)和通过if-match子句指定的地址前缀列表的协议类型的匹配检查。
【举例】
# 配置路由策略对路由信息的协议类型(IPv4或IPv6)和通过if-match子句指定的地址前缀列表的协议类型进行匹配检查,协议类型不一致的路由信息无法通过该if-match子句的过滤。
<Sysname> system-view
[Sysname] route-policy prefix-protocol-check
【相关命令】
· if-match ip
· if-match ipv6
apply fast-reroute命令用来配置快速重路由备份。
undo apply fast-reroute命令用来恢复缺省情况。
【命令】
apply fast-reroute { backup-interface interface-type interface-number [ backup-nexthop ip-address ] | backup-nexthop ip-address }
undo apply fast-reroute
【缺省情况】
未配置快速重路由备份。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
backup-interface interface-type interface-number:备份出接口。对于备份出接口为非P2P类型的接口时(包括NBMA类型接口或广播类型接口),必须同时指定其对应的备份下一跳地址。interface-type interface-number为指定的接口类型和编号。
backup-nexthop ip-address:备份下一跳地址。
【使用指导】
配置本命令后,路由策略会为路由指定备份出接口或下一跳信息。如果主用路由是最优路由,则备份出接口或下一跳信息也会和主用路由一起下发到转发表,当主用路由故障时,备份下一跳或出接口可以迅速替换故障路由,从而避免流量转发中断。
【举例】
# 创建一个名为policy1的路由策略,为到达目的地100.1.1.0/24的路由配置备份出接口为GigabitEthernet0/0/1,备份下一跳地址为193.1.1.8。
<Sysname> system-view
[Sysname] ip prefix-list abc index 10 permit 100.1.1.0 24
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match ip address prefix-list abc
[Sysname-route-policy-policy1-10] apply fast-reroute backup-interface gigabitethernet 0/0/1 backup-nexthop 193.1.1.8
apply ip-address next-hop命令用来配置IPv4路由信息的下一跳地址。
undo apply ip-address next-hop命令用来恢复缺省情况。
【命令】
apply ip-address { next-hop ip-address [ public | vpn-instance vpn-instance-name ] | advertiser-address | blackhole | original }
undo apply ip-address next-hop
【缺省情况】
未配置IPv4路由信息的下一跳地址。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
ip-address:下一跳IP地址。
public:指定公网。
vpn-instance vpn-instance-name:指定VPN实例的信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示下一跳地址为公网地址。
advertiser-address:配置设备在向IPv4 BGP对等体/对等体组发布路由时,将下一跳属性修改为本地建立BGP对等体的地址;从IPv4 BGP对等体/对等体组引入路由时,将下一跳属性修改为对端BGP对等体的地址。
blackhole:配置路由为黑洞路由,匹配该路由的报文会被丢弃。
original:配置设备在向IPv4 BGP对等体/对等体组发布路由时,将下一跳属性修改为路由的原始下一跳地址。缺省情况下,设备在发布路由时的下一跳属性修改情况如下:
· 向EBGP对等体/对等体组发布的所有路由时,都将下一跳属性修改为自身的地址。
· 向IBGP对等体/对等体组发布EBGP路由时,对于VPNv4和VPNv6路由,设备将下一跳属性修改为自身的地址;对于其他地址族的路由,不修改下一跳属性。
· 向IBGP对等体发送形成了等价的BGP路由时,修改其中最优路由的下一跳地址为本地地址。
【使用指导】
本命令仅对IPv4路由生效。
当引入路由时,使用本命令设置下一跳地址无效。
如果未指定参数public或vpn-instance vpn-instance-name,则表示下一跳地址为公网地址。
对于来自直连EBGP对等体的路由,如果使用路由策略(通过peer route-policy命令)修改了下一跳为设备非直连接口地址,则需要配置peer ebgp-max-hop命令允许本地路由器同非直连网络上的邻居建立EBGP会话,否则会导致路由的下一跳不可达,影响业务。
如果通过本命令指定了original参数时又配置了如下命令,则original参数优先生效:
· 通过peer next-hop-local命令配置设备向对等体/对等体组发布路由时将下一跳属性修改为自身的地址。
· 通过peer next-hop-invariable命令配置设备向对等体/对等体组发布路由时不改变下一跳属性。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的AS路径访问列表,那么设置路由信息的下一跳地址为193.1.1.8。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply ip-address next-hop 193.1.1.8
display ip prefix-list命令用来显示IPv4地址前缀列表的统计信息。
【命令】
display ip prefix-list [ name prefix-list-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
name prefix-list-name:指定显示的地址前缀列表名,为1~63个字符的字符串,区分大小写。如果未指定本参数,将显示所有已配置的地址前缀列表的统计信息。
【举例】
# 显示名为abc的地址前缀列表的统计信息。
<Sysname> display ip prefix-list name abc
Prefix-list: abc
Permitted 0
Denied 0
index: 10 Deny 6.6.6.0/24 ge 26 le 28
表1-8 display ip prefix-list命令显示信息描述表
字段 |
描述 |
Prefix-list |
地址前缀列表的名称 |
Permitted |
地址前缀列表被创建后,满足匹配条件并且被允许通过的路由个数的累计值。重启设备会导致本字段的数量变为零 |
Denied |
地址前缀列表被创建后,满足匹配条件并且被拒绝通过的路由个数的累计值。重启设备会导致本字段的数量变为零 |
index |
地址前缀列表的内部序列号 |
deny |
匹配模式,有两种取值: · Permit:表示允许 · Deny:表示拒绝 |
6.6.6.0/24 |
匹配的IP地址和掩码长度 |
ge |
即greater-equal,匹配的IP地址掩码长度的下限值 |
le |
即less-equal,匹配的IP地址掩码长度的上限值 |
【相关命令】
· ip prefix-list
· reset ip prefix-list
if-match ip命令用来配置IPv4的路由信息的匹配条件。
undo if-match ip命令用来取消IPv4的路由信息的匹配条件的配置。
【命令】
if-match ip { address | next-hop | route-source } { acl { ipv4-acl-number | name ipv4-acl-name } | prefix-list prefix-list-name }
undo if-match ip { address | next-hop | route-source } [ acl | prefix-list ]
【缺省情况】
未配置IPv4的路由信息的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
address:匹配IPv4路由信息的目的地址。
next-hop:匹配下一跳地址。
route-source:匹配路由发布的源地址。仅对BGP路由有效,对IGP路由无效,其识别匹配的是IP路由表详细信息中的"Neighbor"字段。
acl ipv4-acl-number:指定用于过滤的ACL号。对于address,ipv4-acl-number的取值范围为2000~3999;对于next-hop和route-source,ipv4-acl-number的取值范围为2000~2999。
acl name ipv4-acl-name:指定用于过滤的ACL名称,ipv4-acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,ACL的名称不允许使用英文单词all。
prefix-list prefix-list-name:指定用于过滤的地址前缀列表名称,为1~63个字符的字符串,区分大小写。
【使用指导】
引用ACL时,需要注意的是:
· 若引用的ACL不存在,或者引用的ACL中没有配置规则,则匹配所有的IPv4路由信息。
· 在引用的ACL中,若某规则指定了vpn-instance参数,则该规则将不生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一个if-match子句,允许下一跳地址匹配已存在的地址前缀列表p1的路由信息通过。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match ip next-hop prefix-list p1
ip prefix-list命令用来配置一个IPv4地址前缀列表或表项。
undo ip prefix-list命令用来删除指定的IPv4地址前缀列表或其某个表项。
【命令】
ip prefix-list prefix-list-name [ index index-number ] { deny | permit } ip-address mask-length [ greater-equal min-mask-length ] [ less-equal max-mask-length ]
undo ip prefix-list prefix-list-name [ index index-number ]
【缺省情况】
不存在IPv4地址前缀列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
prefix-list-name:指定IPv4地址前缀列表名,为1~63个字符的字符串,区分大小写。
index-number:标识IPv4地址前缀列表中的一条表项,index-number小的表项先被匹配,取值范围为1~65535。如果未指定本参数,该序号值按照配置先后顺序依次递增,每次加10,第一个序号值为10。对设备进行目标配置时,本参数为必选参数。关于目标配置的详细介绍请参见“基础配置指导”中的“目标配置管理”。
deny:指定所定义的IPv4地址前缀列表表项的匹配模式为拒绝模式。在该模式下,如果过滤的IPv4地址在定义的范围内,则不能通过过滤,并且不进行下一节点的匹配;否则,进行下一节点的匹配。
permit:指定所定义的IPv4地址前缀列表表项的匹配模式为允许模式。在该模式下,如果过滤的IPv4地址在定义的范围内,则通过过滤,不进行下一个节点的匹配;否则,进行下一节点的匹配。
ip-address mask-length:指定IPv4地址前缀和前缀长度,mask-length的取值范围为0~32。
greater-equal min-mask-length、less-equal max-mask-length:如果IPv4地址和前缀长度都已匹配,则使用该参数来指定地址前缀长度范围。greater-equal表示大于等于,less-equal表示小于等于。前缀长度范围可以表达为mask-length <= min-mask-length <= max-mask-length <= 32。如果只指定min-mask-length时,则前缀长度范围为[ min-mask-length,32 ];如果只指定max-mask-length时,则前缀长度范围为[ mask-length,max-mask-length ];如果二者都指定,则前缀长度范围为[ min-mask-length,max-mask-length ]。
【使用指导】
IPv4地址前缀列表用于IPv4地址的过滤。
一个IPv4地址前缀列表可以有若干条表项,每一表项指定一个地址前缀范围。表项之间的过滤关系是“或”的关系,即通过一条表项的过滤就意味着通过该IPv4地址前缀列表的过滤。若没有通过任一表项的过滤,则不能通过该IPv4地址前缀列表的过滤。
如果将ip-address mask-length指定为0.0.0.0 0,则只匹配缺省路由。如果需要匹配所有路由,则应配置为0.0.0.0 0 less-equal 32。
【举例】
# 定义一条名为p1的IPv4地址前缀列表,只允许10.0.0.0/8网段的,掩码长度为17或18的路由通过。
<Sysname> system-view
[Sysname] ip prefix-list p1 permit 10.0.0.0 8 greater-equal 17 less-equal 18
【相关命令】
· display ip prefix-list
· reset ip prefix-list
reset ip prefix-list命令用来清除IPv4地址前缀列表的统计信息。
【命令】
reset ip prefix-list [ prefix-list-name ]
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
prefix-list-name:指定地址前缀列表的名称,为1~63个字符的字符串,区分大小写。如果未指定本参数,将清除所有的IPv4地址前缀列表的统计信息。
【举例】
# 清除IPv4地址前缀列表abc的统计信息。
<Sysname> reset ip prefix-list abc
【相关命令】
· display ip prefix-list
· ip prefix-list
apply ipv6 fast-reroute命令用来配置快速重路由备份。
undo apply ipv6 fast-reroute命令用来恢复缺省情况。
【命令】
apply ipv6 fast-reroute { backup-interface interface-type interface-number [ backup-nexthop ipv6-address ] | backup-nexthop ipv6-address }
undo apply ipv6 fast-reroute
【缺省情况】
未配置快速重路由备份。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
backup-interface interface-type interface-number:备份出接口。对于备份出接口为非P2P类型的接口时(包括NBMA类型接口或广播类型接口),必须同时指定其对应的备份下一跳地址。interface-type interface-number为指定的接口类型和编号。
backup-nexthop ipv6-address:备份下一跳IPv6地址。
【使用指导】
配置本命令后,路由策略会为路由指定备份出接口或下一跳信息。如果主用路由是最优路由,则备份出接口或下一跳信息也会和主用路由一起下发到转发表,当主用路由故障时,备份下一跳或出接口可以迅速替换故障路由,从而避免流量转发中断。
【举例】
# 创建一个名为policy1的路由策略,为到达目的地100::1/64的路由配置备份下一跳地址为1::1/64。
<Sysname> system-view
[Sysname] ipv6 prefix-list abc index 10 permit 100::1 64
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match ipv6 address prefix-list abc
[Sysname-route-policy-policy1-10] apply ipv6 fast-reroute backup-nexthop 1::1
apply ipv6 next-hop命令用来配置IPv6路由信息的下一跳地址。
undo apply ipv6 next-hop命令用来恢复缺省情况。
【命令】
apply ipv6 next-hop { ipv6-address | advertiser-address | blackhole | original }
undo apply ipv6 next-hop
【缺省情况】
未配置IPv6路由信息的下一跳地址。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:指定下一跳IPv6地址。
advertiser-address:配置在向IPv6 BGP对等体/对等体组发布路由时,将下一跳属性修改为本地建立BGP对等体的地址;从IPv6 BGP对等体/对等体组引入路由时,将下一跳属性修改为对端BGP对等体的地址。
blackhole:配置路由为黑洞路由,匹配该路由的报文会被丢弃。
original:配置设备在向IPv6 BGP对等体/对等体组发布路由时,将下一跳属性修改为路由的原始下一跳地址。缺省情况下,设备在发布路由时的下一跳属性修改情况如下:
· 向EBGP对等体/对等体组发布的所有路由时,都将下一跳属性修改为自身的地址。
· 向IBGP对等体/对等体组发布EBGP路由时,对于VPNv4和VPNv6路由,设备将下一跳属性修改为自身的地址;对于其他地址族的路由,不修改下一跳属性。
· 向IBGP对等体发送形成了等价的BGP路由时,修改其中最优路由的下一跳地址为本地地址。
【使用指导】
本命令仅对IPv6路由生效。
引入路由时,使用apply ipv6 next-hop命令设置下一跳地址无效。
对于来自直连EBGP对等体的路由,如果使用路由策略(通过peer route-policy命令)修改了下一跳为设备非直连接口地址,则需要配置peer ebgp-max-hop命令允许本地路由器同非直连网络上的邻居建立EBGP会话,否则会导致路由的下一跳不可达,影响业务。
如果通过本命令指定了original参数时又配置了如下命令,则original参数优先生效:
· 通过peer next-hop-local命令配置设备向对等体/对等体组发布路由时将下一跳属性修改为自身的地址。
· 通过peer next-hop-invariable命令配置设备向对等体/对等体组发布路由时不改变下一跳属性。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。如果匹配已存在的编号为1的as-path,那么配置路由的下一跳地址为3ffe:506::1。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match as-path 1
[Sysname-route-policy-policy1-10] apply ipv6 next-hop 3ffe:506::1
display ipv6 prefix-list命令用来显示IPv6地址前缀列表的统计信息。
【命令】
display ipv6 prefix-list [ name prefix-list-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
name prefix-list-name:指定IPv6地址前缀列表的名称,为1~63个字符的字符串,区分大小写。如果未指定本参数,将显示所有配置的IPv6地址前缀列表的统计信息。
【举例】
# 显示所有IPv6地址前缀列表的统计信息。
<Sysname> display ipv6 prefix-list
Prefix-list6: 666
Permitted 0
Denied 0
index: 10 Permit 6::/64 ge 66 le 88
表1-9 display ipv6 prefix-list命令显示信息描述表
字段 |
描述 |
Prefix-list6 |
IPv6地址前缀列表的名称 |
Permitted |
地址前缀列表被创建后,满足匹配条件并且被允许通过的路由个数的累计值。重启设备会导致本字段的数量变为零 |
Denied |
地址前缀列表被创建后,满足匹配条件并且被拒绝通过的路由个数的累计值。重启设备会导致本字段的数量变为零 |
index |
地址前缀列表的内部序列号 |
permit |
匹配模式,有两种取值: · Permit:表示允许 · Deny:表示拒绝 |
6::/64 |
匹配的IPv6地址和前缀长度 |
ge |
即greater-equal,匹配的IPv6前缀长度的下限值 |
le |
即less-equal,匹配的IPv6前缀长度的上限值 |
【相关命令】
· ipv6 prefix-list
· reset ipv6 prefix-list
if-match ipv6命令用来配置IPv6的路由信息的匹配条件。
undo if-match ipv6命令用来取消IPv6的路由信息的匹配条件的配置。
【命令】
if-match ipv6 { address | next-hop | route-source } { acl { ipv6-acl-number | name ipv6-acl-name } | prefix-list prefix-list-name }
undo if-match ipv6 { address | next-hop | route-source } [ acl | prefix-list ]
【缺省情况】
未配置IPv6的路由信息的匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
address:匹配IPv6路由信息的目的地址。
next-hop:匹配IPv6路由信息的下一跳。
route-source:匹配IPv6路由信息的源地址。
acl ipv6-acl-number:指定用于过滤的IPv6 ACL号。对于address,ipv6-acl-number的取值范围为2000~3999;对于next-hop和route-source,ipv6-acl-number的取值范围为2000~2999。
acl name ipv6-acl-name:指定用于过滤的IPv6 ACL名称,ipv6-acl-name表示ACL的名称,为1~63个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,ACL的名称不允许使用英文单词all。
prefix-list prefix-list-name:指定用于过滤的IPv6地址前缀列表的名称,为1~63个字符的字符串,区分大小写。
【使用指导】
引用IPv6 ACL时,需要注意的是:
· 若引用的IPv6 ACL不存在,或者引用的IPv6 ACL中没有配置规则,则匹配所有的IPv6路由信息。
· 在引用的IPv6 ACL中,若某规则指定了vpn-instance参数,则该规则将不生效。
【举例】
# 创建一个名为policy1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许下一跳地址匹配已存在的IPv6地址前缀列表p1的路由信息通过。
<Sysname> system-view
[Sysname] route-policy policy1 permit node 10
[Sysname-route-policy-policy1-10] if-match ipv6 next-hop prefix-list p1
if-match ipv6 even-prefix-length命令用来配置符合指定前缀长度且前缀最后一位为偶数的IPv6路由匹配条件。
undo if-match ipv6 even-prefix-length命令用来恢复缺省情况。
【命令】
if-match ipv6 even-prefix-length prefix-length-number
undo if-match ipv6 even-prefix-length
【缺省情况】
未配置符合指定前缀长度且前缀最后一位为偶数的IPv6路由匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
prefix-length-number:指定IPv6路由前缀长度,取值范围为1~128。
【举例】
# 创建一个名为rp1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许前缀长度为64且前缀第64位为偶数的IPv6路由通过。
<Sysname> system-view
[Sysname] route-policy rp1 permit node 10
[Sysname-route-policy-rp1-10] if-match ipv6 even-prefix-length 64
if-match ipv6 odd-prefix-length命令用来配置符合指定前缀长度且前缀最后一位为奇数的IPv6路由匹配条件。
undo if-match ipv6 odd-prefix-length命令用来恢复缺省情况。
【命令】
if-match ipv6 odd-prefix-length prefix-length-number
undo if-match ipv6 odd-prefix-length
【缺省情况】
未配置符合指定前缀长度且前缀最后一位为奇数的IPv6路由匹配条件。
【视图】
路由策略视图
【缺省用户角色】
network-admin
【参数】
prefix-length-number:指定IPv6路由前缀长度,取值范围为1~128。
【举例】
# 创建一个名为rp1的路由策略,其节点序列号为10,匹配模式为permit。定义一条if-match子句,允许前缀长度为64且前缀第64位为奇数的IPv6路由通过。
<Sysname> system-view
[Sysname] route-policy rp1 permit node 10
[Sysname-route-policy-rp1-10] if-match ipv6 odd-prefix-length 64
ipv6 prefix-list命令用来配置IPv6地址前缀列表或表项。
undo ipv6 prefix-list命令用来删除指定的IPv6地址前缀列表或其中某个表项。
【命令】
ipv6 prefix-list prefix-list-name [ index index-number ] { deny | permit } ipv6-address { prefix-length [ greater-equal min-prefix-length ] [ less-equal max-prefix-length ] | inverse inverse-prefix-length }
undo ipv6 prefix-list prefix-list-name [ index index-number ]
【缺省情况】
不存在IPv6地址前缀列表。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
prefix-list-name:指定IPv6地址前缀列表名,为1~63个字符的字符串,区分大小写。
index-number:标识IPv6地址前缀列表中的一条表项,index-number小的表项先被匹配,取值范围为1~65535。如果未指定本参数,该序号值按照配置先后顺序依次递增,每次加10,第一个序号值为10。对设备进行目标配置时,本参数为必选参数。关于目标配置的详细介绍请参见“基础配置指导”中的“目标配置管理”。
deny:指定所定义的IPv6地址前缀列表表项的匹配模式为拒绝模式。在该模式下,如果过滤的IPv6地址在定义的范围内,则不能通过过滤,并且不进行下一节点的匹配;否则,进行下一节点的匹配。
permit:指定所定义的IPv6地址前缀列表表项的匹配模式为允许模式。在该模式下,如果过滤的IPv6地址在定义的范围内,则通过过滤,不进行下一个节点的匹配;否则,进行下一节点的匹配。
ipv6-address:指定IPv6地址。
prefix-length:指定前缀长度,取值范围为0~128。
greater-equal min-prefix-length、less-equal max-prefix-length:如果IPv6地址和前缀长度都已匹配,则使用该参数来指定地址前缀长度范围。greater-equal表示大于等于,less-equal表示小于等于。前缀长度范围可以表达为prefix-length <= min-prefix-length <= max-prefix-length <= 128。如果只指定了min-prefix-length,则前缀范围为[ min-prefix-length,128 ];如果只指定了max-prefix-length,则前缀范围为[ prefix-length,max-prefix-length ];如果二者都指定,则前缀范围为[ min-prefix-length,max-prefix-length ]。
inverse inverse-prefix-length:指定反向前缀长度,即与指定的IPv6地址前缀从最低位开始需要匹配的位数。inverse-prefix-length的取值范围为1~128。
【使用指导】
IPv6地址前缀列表用于IPv6地址过滤。一个IPv6地址前缀列表可包含多个表项,一个表项指定一个地址前缀范围。表项之间的过滤关系是“或”,即通过一个表项就可通过该IPv6地址前缀列表的过滤。没有通过任何一个表项的过滤就意味着没有通过该IPv6地址前缀列表的过滤。
如果将ipv6-address prefix-length指定为:: 0,则只匹配缺省路由。如果需要匹配所有路由,则应配置为:: 0 less-equal 128。
【举例】
# 配置一条IPv6地址前缀列表,允许前缀长度在32位到64位之间的IPv6地址通过。
<Sysname> system-view
[Sysname] ipv6 prefix-list abc permit :: 0 greater-equal 32 less-equal 64
# 配置一条IPv6地址前缀列表,拒绝地址前缀为3FFE:D00::/32,前缀长度大于等于32位的IPv6地址通过。
<Sysname> system-view
[Sysname] ipv6 prefix-list abc deny 3FFE:D00:: 32 less-equal 128
【相关命令】
· display ipv6 prefix-list
· reset ipv6 prefix-list
reset ipv6 prefix-list命令用来清除IPv6地址前缀列表的统计信息。
【命令】
reset ipv6 prefix-list [ prefix-list-name ]
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
prefix-list-name:指定地址前缀列表的名称,为1~63个字符的字符串,区分大小写。如果未指定本参数,将清除所有的IPv6地址前缀列表的统计信息。
【举例】
# 清除指定IPv6地址前缀列表的统计信息。
<Sysname> reset ipv6 prefix-list abc
【相关命令】
· display ipv6 prefix-list
· ipv6 prefix-list
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!