07-IP转发基础命令
本章节下载: 07-IP转发基础命令 (246.23 KB)
目 录
1.1.2 fib consistency-check enable
1.1.3 forwarding vxlan-packet inner-protocol
1.1.4 ip forwarding-table save
1.1.5 snmp-agent trap enable fib
2.1.1 display ip load-sharing mode
2.1.2 display ip load-sharing path
2.1.3 ip load-sharing local-first enable
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 |
内层标签值 |
fib consistency-check enable命令用来开启IPv4 FIB表项一致性检查功能。
undo fib consistency-check enable命令用来关闭IPv4 FIB表项一致性检查功能。
【命令】
fib consistency-check enable
undo fib consistency-check enable
【缺省情况】
IPv4 FIB表项一致性检查功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
如果当前系统的IP报文转发效果达不到预期,可以通过本功能检查IPv4 FIB软件表项与驱动硬件表项的一致性。该功能开启后,设备将定时对所有的IPv4 FIB软件表项下发驱动进行检查,如果与驱动硬件表项不一致则打印日志信息,同时根据IPv4 FIB软件表项刷新驱动硬件表项。
【举例】
# 开启IPv4 FIB表项一致性检查功能。
<Sysname> system-view
[Sysname] fib consistency-check enable
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的报文,当前仅支持ARP协议报文。
ipv6:表示VXLAN封装的内层协议为IPv6的报文,当前仅支持NS协议报文。
【使用指导】
在EVPN分布式网关组网中,设备作为VTEP从VXLAN隧道口收到的VXLAN封装的ARP报文和NS报文,缺省情况会上送CPU进行处理。当此类报文较多时,大量报文上送CPU会导致软件限速丢包。这种情况下,VTEP的下行设备或终端可能因无法及时收到ARP报文,引发业务异常。
为避免此类情况,设备支持配置对VXLAN隧道口收到指定协议类型的报文(包括ARP协议报文和NS协议报文)直接转发,不上送CPU,从而避免此类报文对CPU的冲击。
【举例】
# 配置设备从VXLAN隧道收到指定协议类型的报文直接转发,不上送CPU。
<Sysname> system-view
[Sysname] forwarding vxlan-packet inner-protocol ipv4
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
表2-1 display ip load-sharing mode命令显示信息描述表
字段 |
描述 |
Load-sharing mode: per-flow |
采用的负载分担方式: per-flow:基于报文逐流进行负载分担 |
Load-sharing options |
负载分担时的选项: · dest-ip:基于报文的目的IP地址进行负载分担 · src-ip:基于报文的源IP地址进行负载分担 · ip-pro:基于报文的IP协议号进行负载分担 · dest-port:基于报文的目的端口进行负载分担 · src-port:基于报文的源端口进行负载分担 · ingress-port:基于报文的入端口进行负载分担 · flow-label:基于IPv6报文的流标签进行负载分担 |
【相关命令】
· 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命令显示的配置参数以及负载分担报文所携带的字段相匹配(报文中不存在的参数无需输入,如dest-port、src-port)。如不匹配,则显示的等价路由哈希选路信息可能跟实际不一致。
执行本命令时,请确保目的地址是经过等价路由后可达的地址,否则查询结果可能不准确。
不支持查询隧道封装报文,如:GRE隧道、VXLAN隧道等。
【举例】
# 指定设备计算等价路由选路信息时的参数:接口Ten-GigabitEthernet1/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 1/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-GigabitEthernet1/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-GigabitEthernet1/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 local-first enable命令用来开启等价路由负载分担本地优先功能。
undo ip load-sharing local-first enable命令用来关闭等价路由负载分担本地优先功能。
【命令】
ip load-sharing local-first enable
undo ip load-sharing local-first enable
【缺省情况】
等价路由负载分担本地优先功能处于开启状态。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【使用指导】
等价路由负载分担本地优先功能仅在IRF模式下生效。
【举例】
# 开启等价路由负载分担本地优先功能。
<Sysname> system-view
[Sysname] ip load-sharing local-first enable
ip load-sharing mode命令用来配置负载分担方式。
undo ip load-sharing mode命令用来恢复缺省情况。
【命令】
(独立运行模式)
ip load-sharing mode { per-flow [ algorithm algorithm-number [ seed seed-number ] [ shift shift-number ] | [ dest-ip | dest-port | ip-pro | src-ip | src-port ] * | tunnel { inner | outer } ] } { global | slot slot-number }
undo ip load-sharing mode [ per-flow 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 | ip-pro | src-ip | src-port ] * | tunnel { inner | outer } ] } { chassis chassis-number slot slot-number | global }
undo ip load-sharing mode [ per-flow tunnel ] { chassis chassis-number slot slot-number | global }
【缺省情况】
基于报文的源IP地址、目的IP地址、源端口、目的端口和IP协议号逐流进行负载分担。
【视图】
系统视图
【缺省用户角色】
network-admin
mdc-admin
【参数】
algorithm algorithm-number:基于报文逐流进行负载分担的算法切换。algorithm-number指定要进行算法切换的算法编号。取值范围为0~13。如果未指定本参数,设备内的缺省算法编号为0。
seed seed-number:负载分担算法的起始HASH值。取值范围为0~ffffffff,缺省值为0。
shift shift-number:负载分担算法计算结果的偏移量。取值范围为0~15,缺省值为0。
per-flow:基于报文逐流进行负载分担。如果基于报文逐流进行负载分担,并在dest-ip、dest-port、ip-pro、src-ip以及src-port中未指定任何参数,则设备缺省基于报文的目的IP地址和报文的源IP地址逐流进行负载分担。
tunnel { inner | outer }:指定对IP Tunnel报文采用的逐流负载分担方式,其中inner表示基于Tunnel内层信息进行逐流负载分担;outer表示基于Tunnel外层信息进行逐流负载分担。如果未指定本参数,则IP Tunnel报文采用的负载分担方式为基于Tunnel内层信息进行逐流负载分担。
global:表示全局配置。
slot slot-number:在指定单板上配置负载分担方式。slot-number表示单板所在的槽位号。如果未指定本参数,则在所有单板上配置负载分担方式。(独立运行模式)
chassis chassis-number slot slot-number:在指定成员设备上指定单板上配置负载分担方式。chassis-number表示设备在IRF中的成员编号,slot-number表示单板所在的槽位号。如果未指定本参数,则在所有单板上配置负载分担方式。(IRF模式)
【使用指导】
当负载分担不够均匀时,可以通过修改seed和shift参数的值来进行调整。
dest-ip、dest-port、ip-pro、src-ip、src-port参数和algorithm algorithm-number参数同时配置后,通过algorithm algorithm-number参数配置的算法切换不生效。
指定slot的负载分担方式的优先级高于全局负载分担方式。全局配置只对未指定负载分担方式的slot生效,对指定了负载分担方式的slot不生效。
【举例】
# 配置指定slot基于报文的源IP地址逐流进行负载分担。(独立运行模式)
<Sysname> system-view
[Sysname] ip load-sharing mode per-flow src-ip 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
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!