07-IP转发基础命令
本章节下载: 07-IP转发基础命令 (287.70 KB)
目 录
1.1.2 forwarding split-horizon
1.1.3 forwarding vxlan-packet inner-protocol
1.1.5 ip forwarding-table save
1.1.6 snmp-agent trap enable fib
2.1.1 display ip load-sharing mode
2.1.2 display ip load-sharing path
2.1.4 ip load-sharing symmetric enable
设备仅在独立运行模式下支持MDC。关于MDC的详细介绍,请参见“虚拟化技术配置指导”中的“MDC”。
display fib命令用来显示FIB表项的信息。
【命令】
display fib [vpn-instance vpn-instance-name ] [ ip-address [ mask | mask-length ] ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
vpn-instance vpn-instance-name:显示指定VPN实例的FIB表项的信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果不指定VPN实例,则显示公网的FIB表项的信息。
ip-address:显示与指定目的IP地址匹配的FIB表项的信息。
mask:IP地址掩码。
mask-length:IP地址掩码长度,取值范围为0~32。
【使用指导】
如果配置ip-address时不指定掩码和掩码长度,则显示与指定目的IP地址最长匹配的FIB表项的信息;如果配置ip-address时指定了掩码或掩码长度,则显示与指定目的IP地址和掩码精确匹配的FIB表项的信息。
【举例】
# 显示公网的所有FIB表项的信息。
<Sysname> display fib
Destination count: 8 FIB entry count: 8
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
0.0.0.0/32 127.0.0.1 UH InLoop0 Null
127.0.0.0/8 127.0.0.1 U InLoop0 Null
127.0.0.0/32 127.0.0.1 UH InLoop0 Null
127.0.0.1/32 127.0.0.1 UH InLoop0 Null
127.255.255.255/32 127.0.0.1 UH InLoop0 Null
224.0.0.0/4 0.0.0.0 UB NULL0 Null
224.0.0.0/24 0.0.0.0 UB NULL0 Null
255.255.255.255/32 127.0.0.1 UH InLoop0 Null
# 显示私网的FIB表项的信息。
<Sysname> display fib vpn-instance vpn1
Destination count: 6 FIB entry count: 6
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
0.0.0.0/32 127.0.0.1 UH InLoop0 Null
20.20.20.0/24 20.20.20.25 U M-GE0/0/0 Null
20.20.20.0/32 20.20.20.25 UBH M-GE0/0/0 Null
20.20.20.25/32 127.0.0.1 UH InLoop0 Null
20.20.20.25/32 20.20.20.25 H M-GE0/0/0 Null
20.20.20.255/32 20.20.20.25 UBH M-GE0/0/0 Null
# 显示目的地址为10.2.1.1的FIB表项的信息。
<Sysname> display fib 10.2.1.1
Destination count: 1 FIB entry count: 1
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
10.2.1.1/32 127.0.0.1 UH InLoop0 Null
表1-1 display fib命令显示信息描述表
字段 |
描述 |
Destination count |
目的地址的个数 |
FIB entry count |
FIB表项数目 |
Destination/Mask |
目的地址/掩码长度 |
Nexthop |
转发的下一跳地址 |
Flag |
路由的标志: · U:表示可用路由 · G:表示网关路由 · H:表示主机路由 · B:表示黑洞路由 · D:表示动态路由 · S:表示静态路由 · R:表示迭代路由 · F:表示快速重路由 |
OutInterface/Token |
转发接口/LSP索引号 |
Label |
内层标签值 |
forwarding split-horizon命令用来开启转发水平分割功能。
undo forwarding split-horizon命令用来关闭转发水平分割功能。
【命令】
forwarding split-horizon
undo forwarding split-horizon
【缺省情况】
转发水平分割功能处于关闭状态。
【视图】
系统视图
二层以太网接口视图
三层以太网接口视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
通过开启转发水平分割功能,可以使从一个物理接口收到的IPv4、IPv6和MPLS报文不再从该接口向外发送,用于避免环路。
系统视图和以太网接口视图都可以配置转发水平分割功能,系统视图下为全局配置,接口视图的配置仅对该接口生效。系统视图和以太网接口视图任意一个开启本功能时,接口的转发水平分割功能生效;系统视图和以太网接口视图均关闭本功能时,接口的转发水平分割功能关闭。
建议需要全局开启本功能时,在系统视图下配置本功能,需要某个接口开启本功能时,在接口视图下配置本功能。
【举例】
# 开启全局的转发水平分割功能。
<Sysname> system-view
[Sysname] forwarding split-horizon
forwarding vxlan-packet inner-protocol命令用来配置设备从VXLAN隧道收到指定协议类型的报文直接转发,不上送CPU。
undo forwarding vxlan-packet inner-protocol命令用来恢复缺省情况。
【命令】
forwarding vxlan-packet inner-protocol { ipv4 | ipv6 } *
undo forwarding vxlan-packet inner-protocol [ ipv4 | ipv6 ]
【缺省情况】
设备从VXLAN隧道收到指定报文后将会上送CPU处理。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
ipv4:表示VXLAN封装的内层协议为IPv4的报文。
ipv6:表示VXLAN封装的内层协议为IPv6的报文。
【使用指导】
在EVPN分布式网关组网中,设备作为VTEP从VXLAN隧道口收到VXLAN封装的指定内层协议类型(VXLAN封装的内层报文的协议类型)的报文后,缺省情况会上送CPU进行处理。当指定内层协议类型的报文较多时,会被限速而导致丢包。这种情况下,VTEP的下行设备或终端可能因无法及时收到指定协议类型的报文,引发业务异常。
为避免此类情况,可配置对VXLAN隧道口收到指定协议类型的报文直接转发,不上送CPU。
【举例】
# 配置设备从VXLAN隧道收到指定协议类型的报文直接转发,不上送CPU。
<Sysname> system-view
[Sysname] forwarding vxlan-packet inner-protocol ipv4
ip forwarding命令用来在接口未配置IPv4地址时,开启接口的IPv4报文转发功能。
undo ip forwarding命令用来在接口未配置IPv4地址时,关闭接口的IPv4报文转发功能。
【命令】
ip forwarding
undo ip forwarding
【缺省情况】
在接口未配置IPv4地址时,接口的IPv4报文转发功能处于关闭状态。
【视图】
接口视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
在同时支持IPv4协议和IPv6协议的设备上,IPv4路由的下一跳可以是IPv4地址或IPv6地址。如果出接口上未配置IPv4地址,IPv4报文将无法在该接口上进行转发。通过配置本命令,可以在接口未配置IPv4地址的情况下,实现IPv4报文在接口上的转发功能。
【举例】
# 在VLAN接口1未配置IPv4地址时,开启接口的IPv4报文转发功能。
<Sysname> system-view
[Sysname] interface vlan-interface 1
[Sysname-Vlan-interface1] ip forwarding
ip forwarding-table save命令用来将当前的IP转发表项保存到用户指定的文件中。
【命令】
ip forwarding-table save filename filename
【视图】
任意视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
filename filename:目标文件名,长度不超过255字节。文件名取值范围的详细介绍,请参见“基础配置指导”中的“文件系统管理配置”。
【使用指导】
执行本命令时,如果名称为filename的文件不存在,系统会先创建该文件,再保存;如果已存在,则会覆盖原文件的内容。
如果需要周期性地自动保存IP转发表,可以通过配置定时执行任务功能,采用循环执行方式,让设备在指定时间到达时,自动执行命令。关于配置定时执行任务功能的详细介绍,请参见“基础配置指导”中“设备管理”。
【举例】
# 将IP转发表保存到名为fib.txt的文件中。
<Sysname> ip forwarding-table save filename fib.txt
snmp-agent trap enable fib命令用来开启FIB模块的告警功能。
undo snmp-agent trap enable fib命令用来关闭FIB模块的告警功能。
【命令】
snmp-agent trap enable fib [ deliver-failed | ecmp-limit | entry-consistency | entry-limit ] *
undo snmp-agent trap enable fib [ deliver-failed | ecmp-limit | entry-consistency | entry-limit ] *
【缺省情况】
FIB模块的告警功能均处于开启状态。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
deliver-failed:FIB表项下发硬件失败的告警功能。
ecmp-limit:等价路由超过系统支持的最大数量告警功能。
entry-consistency:FIB软件表项与驱动硬件表项不一致的告警功能。
entry-limit:FIB表项超过系统支持最大个数的告警功能。
【使用指导】
开启FIB模块的告警功能后,该模块会生成告警信息,用于报告该模块的重要事件,设备将此信息记录在告警信息中,生成的告警信息将发送到设备的SNMP模块。
用户可根据业务需求开启指定功能的FIB模块的告警,当不指定任何参数时,代表打开全部开关:
· 开启等价路由超过系统支持的最大数量告警功能后,如果单板学习到的等价路由的数量超过了配置的系统支持最大等价路由条数,设备会将告警板号信息作为告警信息发送到设备的SNMP模块。
· 开启FIB软件表项与硬件表项不一致的告警功能后,如果单版FIB软件表项和硬件表项不一致,设备会将告警板号信息作为告警信息发送到设备的SNMP模块。
· 开启了FIB表项超过最大个数的告警功能后,如果设备FIB表项超过了告警阈值,设备会将FIB表项模块名信息作为告警信息发送到设备的SNMP模块。
· 开启FIB表项下发硬件失败的告警功能后,如果设备FIB表项下发硬件失败,设备会将下发失败的FIB表项的VRF、IP地址类型、IP地址、掩码、表项下发失败原因等信息作为告警信息发送到设备的SNMP模块。
通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。
【举例】
# 关闭FIB的告警功能。
<Sysname> system-view
[Sysname] undo snmp-agent trap enable fib
display ip load-sharing mode命令用来显示当前使用的负载分担方式。
【命令】
(独立运行模式)
display ip load-sharing mode slot slot-number
(IRF模式)
display ip load-sharing mode chassis chassis-number slot slot-number
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
slot slot-number:显示指定单板上的当前使用的负载分担方式。slot-number表示单板所在的槽位号。如果未指定本参数,则显示所有单板上的当前使用的负载分担方式。(独立运行模式)
chassis chassis-number slot slot-number:显示指定成员设备上指定单板上的当前使用的负载分担方式。chassis-number表示设备在IRF中的成员编号,slot-number表示单板所在的槽位号。如果未指定本参数,则显示所有单板上的当前使用的负载分担方式。(IRF模式)
【举例】
# 显示当前使用的负载分担方式。
<Sysname> display ip load-sharing mode slot 1
Load-sharing mode: per-flow
Load-sharing options: dest-ip | src-ip | ip-pro | dest-port | src-port | ingress-port
Load-sharing algorithm: 1
IP tunnel load-sharing mode: outer
表2-1 display ip load-sharing mode命令显示信息描述表
字段 |
描述 |
Load-sharing mode |
采用的负载分担方式: · per-packet:基于报文逐包进行负载分担 · per-flow:基于报文逐流进行负载分担 |
Load-sharing options |
负载分担时的选项: · dest-ip:基于报文的目的IP地址进行负载分担 · src-ip:基于报文的源IP地址进行负载分担 · ip-pro:基于报文的IP协议号进行负载分担 · dest-port:基于报文的目的端口进行负载分担 · src-port:基于报文的源端口进行负载分担 · ingress-port:基于报文的入端口进行负载分担 |
Load-sharing algorithm |
负载分担算法编号 |
IP tunnel load-sharing mode |
IP tunnel 采用的负载分担方式: · inner:基于内层信息进行负载分担 · outer:基于外层信息进行负载分担 |
【相关命令】
· ip load-sharing mode
display ip load-sharing path命令用来指定计算等价路由哈希选路的参数并显示计算出的等价路由哈希选路信息。
【命令】
display ip load-sharing path ingress-port interface-type interface-number packet-format { ipv4oe dest-ip ip-address [ src-ip ip-address ] | ipv6oe dest-ipv6 ipv6-address [ src-ipv6 ipv6-address | flow-label flow-label ] } [ dest-port port-id | ip-pro protocol-id | src-port port-id | vpn-instance vpn-instance-name ] *
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
mdc-admin
mdc-operator
【参数】
ingress-port interface-type interface-number:指定设备计算等价路由选路信息时的报文入接口。interface-type interface-number为接口类型和接口编号。
packet-format { ipv4oe dest-ip ip-address [src-ip ip-address ] | ipv6oe dest-ipv6 ipv6-address [ src-ipv6 ipv6-address ] }:指定设备计算等价路由选路信息时的报文封装格式。
· ipv4oe:指定报文的封装格式为IPv4封装以太网。
· dest-ip ip-address:指定目的IP地址,为点分十进制格式。如果未指定该参数,则设备计算等价路由选路信息时使用的目的IP地址为0。
· src-ip ip-address:指定源IP地址,为点分十进制格式。如果未指定该参数,则设备计算等价路由选路信息时使用的源IP地址为0。
· ipv6oe:指定报文的封装格式为IPv6封装以太网。
· dest-ipv6 ipv6-address:指定目的IPv6地址。如果未指定该参数,则设备计算等价路由选路信息时使用的目的IPv6地址为0。
· src-ipv6 ipv6-address:指定源IPv6地址。如果未指定该参数,则设备计算等价路由选路信息时使用的源IPv6地址为0。
· flow-label flow-label:指定IPv6流标签,取值范围为0~1048575。如果未指定该参数,则设备计算等价路由选路信息时使用的流标签值为0。
dest-port port-id:指定设备计算等价路由选路信息时的目的端口号,port-id取值范围为1~65535。如果未指定该参数,则设备计算等价路由选路信息时使用的目的端口号为0。
ip-pro protocol-id:指定设备计算等价路由选路信息时使用的IP协议类型,protocol-id取值范围为1~65535。如果未指定该参数,则设备计算等价路由选路信息时使用的IP协议类型值为0。
src-port port-id:指定设备计算等价路由选路信息时的源端口号,port-id取值范围为1~65535。如果未指定该参数,则设备计算等价路由选路信息时使用的源端口号为0。
vpn-instance vpn-instance-name:指定设备计算等价路由选路信息时的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定该参数,则设备计算等价路由选路信息时不存在VPN实例信息(表示公网)。
【使用指导】
本命令行的参数输入需要和display ip load-sharing mode命令显示的配置参数以及负载分担报文所携带的字段相匹配。如不匹配,则显示的等价路由哈希选路信息可能跟实际不一致。
本命令无法显示非已知单播报文的出接口信息和隧道封装报文信息。
当通过ip load-sharing mode命令配置基于报文逐包进行负载分担功能时,本命令显示的等价路由哈希选路信息会与实际不一致。
【举例】
# 指定设备计算等价路由选路信息时的参数:接口Ten-GigabitEthernet3/0/3进入,目的IP地址为10.110.0.2、源IP地址10.100.0.2、IP协议类型编号为153、目的端口号为2000、源端口号为2000。并显示计算出的报文的等价路由选路信息。
<Sysname> display ip load-sharing path ingress-port ten-gigabitethernet 3/0/3 packet-format ipv4oe dest-ip 10.110.0.2 src-ip 10.100.0.2 ip-pro 153 dest-port 2000 src-port 2000
Load-sharing algorithm: 0
Load-sharing options: dest-ip | src-ip | ip-pro | dest-port | src-port | ingress-port
Load-sharing parameters:
Missing configured are set to 0.
ingress-port: Ten-GigabitEthernet3/0/3
packet-format: IPv4oE
dest-ip: 10.110.0.2
src-ip: 10.100.0.2
ip-pro: 153
dest-port: 2000
src-port: 2000
Path selected: 20.0.0.2(interface Ten-GigabitEthernet3/0/3)
表2-2 display ip load-sharing path命令显示信息描述表
字段 |
描述 |
Load-sharing algorithm |
用户配置的逐流负载分担算法编号 |
Load-sharing options |
用户配置的逐流负载分担方式选项 |
Load-sharing parameters |
用户输入信息,用于显示等价路由哈希选路信息 |
Missing configured are set to 0. |
用户未明确输入参数采用缺省值0 |
ingress-port |
报文入接口 |
packet-format |
报文封装格式 |
dest-ip |
目的IP地址 |
src-ip |
源IP地址 |
ip-pro |
IP协议类型 |
dest-port |
目的端口号 |
src-port |
源端口号 |
flow-label |
IPv6报文流标签 |
Path selected |
计算出的等价路由哈希选路信息,包含下一跳的IP/IPv6地址和出接口 |
【相关命令】
· ip load-sharing mode
ip load-sharing mode命令用来配置负载分担方式。
undo ip load-sharing mode命令用来恢复缺省情况。
在VXLAN组网下,配置基于报文逐包进行负载分担功能在SF系列接口板上无法生效。
【命令】
(独立运行模式)
ip load-sharing mode { per-flow [ algorithm algorithm-number [ seed seed-number ] [ shift shift-number ] | [ dest-ip | dest-port | ingress-port | ip-pro | src-ip | src-port ] * | tunnel { inner | outer } ] | per-packet } { global | slot slot-number }
undo ip load-sharing mode [ per-flow { algorithm | tunnel } ] { global | slot slot-number }
(IRF模式)
ip load-sharing mode { per-flow [ algorithm algorithm-number [ seed seed-number ] [ shift shift-number ] | [ dest-ip | dest-port | ingress-port | ip-pro | src-ip | src-port ] * | tunnel { inner | outer } ] | per-packet } { chassis chassis-number slot slot-number | global }
undo ip load-sharing mode [ per-flow { algorithm | tunnel } ] { chassis chassis-number slot slot-number | global }
【缺省情况】
基于报文的源IP地址、目的IP地址、源端口、目的端口和IP协议号逐流进行负载分担。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
algorithm algorithm-number:基于报文逐流进行负载分担的算法切换。algorithm-number指定要进行算法切换的算法编号。范围为0~1。如果指定本参数,则使用undo ip load-sharing mode命令恢复缺省情况后,设备内的算法编号为0。
seed seed-number:负载分担算法的起始HASH值。取值范围为0~ffffffff。
shift shift-number:负载分担算法计算结果的偏移量。取值范围为0~31。
per-flow:基于报文逐流进行负载分担。在命令行中若没有指定dest-ip、dest-port、ingress-port、ip-pro、src-ip以及src-port参数,则表示设备基于报文的目的IP地址和报文的源IP地址逐流进行负载分担。
ingress-port:基于报文的入端口逐流进行负载分担。
tunnel { inner | outer }:指定对IP Tunnel报文采用的逐流负载分担方式,其中inner表示基于Tunnel内层信息进行逐流负载分担;outer表示基于Tunnel外层信息进行逐流负载分担。如果未指定本参数,则基于Tunnel外层信息进行逐流负载分担。
global:表示全局配置。
slot slot-number:在指定单板上配置负载分担方式。slot-number表示单板所在的槽位号。如果未指定本参数,则在所有单板上配置负载分担方式。(独立运行模式)
chassis chassis-number slot slot-number:在指定成员设备上指定单板上配置负载分担方式。chassis-number表示设备在IRF中的成员编号,slot-number表示单板所在的槽位号。如果未指定本参数,则在所有单板上配置负载分担方式。(IRF模式)
【使用指导】
当负载分担不够均匀时,可以通过修改seed和shift参数的值来进行调整。
负载分担hash seed功能对非已知单播报文不生效。
IP Tunnel报文的负载分担功能对非已知单播报文不生效。
对于MPLS报文,设备仅支持基于报文的源IP地址逐流和基于报文的目的IP地址逐流进行负载分担的方式。
指定slot的负载分担方式的优先级高于全局负载分担方式。全局配置只对未指定负载分担方式的slot生效,对指定了负载分担方式的slot不生效。
配置基于报文逐包进行负载分担功能仅支持在等价路由普通模式下配置。有关等价路由模式的介绍,请参见“三层技术-IP路由命令参考”中的“IP路由基础命令”。
开启基于报文逐包进行负载分担功能后,报文会出现乱序。逐包负载分担仅适用于不关心报文乱序的场景。
【举例】
# 配置指定slot基于报文逐流进行负载分担。(独立运行模式)
<Sysname> system-view
[Sysname] ip load-sharing mode per-flow slot 1
# 配置指定slot基于报文目的IP地址、源IP地址逐流进行负载分担。(独立运行模式)
<Sysname> system-view
[Sysname] ip load-sharing mode per-flow dest-ip src-ip slot 1
# 配置指定slot对IP Tunnel报文基于Tunnel内层信息逐流进行负载分担。(独立运行模式)
<Sysname> system-view
[Sysname] ip load-sharing mode per-flow tunnel inner slot 1
# 配置指定slot基于报文逐流进行负载分担的算法切换,算法编号为1。(独立运行模式)
<Sysname> system-view
[Sysname] ip load-sharing mode per-flow algorithm 1 slot 1
【相关命令】
· display ip load-sharing mode
ip load-sharing symmetric enable命令用来开启对称负载分担功能。
undo ip load-sharing symmetric enable命令用来关闭对称负载分担功能。
【命令】
ip load-sharing symmetric enable
undo ip load-sharing symmetric enable
【缺省情况】
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
开启对称负载分担功能后,对于源IP为A、目的IP为B的流量,和源IP为B、目的IP为A的流量,将负载分担到同一条路径。
对称负载分担功能仅对已知单播报文生效。
【举例】
# 开启对称负载分担功能。
<Sysname> system-view
[Sysname] ip load-sharing symmetric enable
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!