05-IP转发基础配置
本章节下载: 05-IP转发基础配置 (230.09 KB)
FIB(Forwarding Information Base,转发信息库)表用来指导IP报文转发。
路由器通过路由表选择路由,把优选路由下发到FIB表中,通过FIB表指导IP报文转发。FIB表中每条转发表项都指明了要到达某子网或某主机的报文的下一跳IP地址以及出接口。
关于路由表的详细介绍,请参见“三层技术-IP路由配置指导”中的“IP路由基础”。
通过命令display fib可以查看FIB表的信息,例如:
<Sysname> display fib
Route destination count: 4
Directly-connected host count: 0
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.0.0/16 10.2.1.1 U GE3/1/1 Null
10.2.1.1/32 127.0.0.1 UH InLoop0 Null
127.0.0.0/8 127.0.0.1 U InLoop0 Null
127.0.0.1/32 127.0.0.1 UH InLoop0 Null
FIB表中包含了下列关键项:
· Destination:目的地址。用来标识IP报文的目的地址或目的网络。
· Mask:网络掩码。与目的地址一起来标识目的主机或路由器所在的网段的地址。将目的地址和网络掩码“逻辑与”后可得到目的主机或路由器所在网段的地址。例如:目的地址为192.168.1.40、掩码为255.255.255.0的主机或路由器所在网段的地址为192.168.1.0。掩码由若干个连续“1”构成,既可以用点分十进制法表示,也可以用掩码中连续“1”的个数来表示。
· NextHop:转发的下一跳地址。
· Flag:路由的标志。
· OutInterface:转发接口。指明IP报文将从哪个接口转发。
· Token:LSP(Label Switched Path,标签交换路径)索引号。
· Label:内层标签值。
保存IP转发表项信息到用户指定的文件中时,如果指定的文件不存在,系统会先创建该文件,再保存;如果已存在,则会覆盖原文件。
本功能只用来触发一次IP转发表项保存到用户指定的文件中。
如果需要周期性地自动保存IP转发表,可以通过配置定时执行任务功能,采用循环执行方式,让设备在指定时间到达时,自动执行命令。关于配置定时执行任务功能的详细介绍,请参见“基础配置指导”中“设备管理”。
可在任意视图下执行本命令,将当前的IP转发表项保存到用户指定的文件中。
ip forwarding-table save filename filename
为了支持在双栈情况下,IPv4路由可以通过IPv6邻居发送,即IPv4路由下一跳是IPv6地址,要开启未配置IPv4地址的接口上的IPv4报文转发功能。
在同时支持IPv4协议和IPv6协议的设备上,IPv4路由的下一跳可以是IPv4地址或IPv6地址。如果出接口上未配置IPv4地址,IPv4报文将无法在该接口上进行转发。通过配置本命令,可以在接口未配置IPv4地址的情况下,实现IPv4报文在接口上的转发功能。
本命令可在所有配置IPv4地址的视图下配置。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启接口的IPv4报文转发功能。
ip forwarding
缺省情况下,设备的IPv4报文转发功能处于关闭状态。
为了支持在双栈情况下,IPv6路由可以通过IPv4邻居发送,即IPv6路由下一跳是IPv4地址,要开启未配置IPv6地址的接口上的IPv6报文转发功能。
在同时支持IPv4协议和IPv6协议的设备上,IPv6路由的下一跳可以是IPv6地址或IPv4地址。如果出接口上未配置IPv6地址,IPv6报文将无法在该接口上进行转发。通过配置本命令,可以在接口未配置IPv6地址的情况下,实现IPv6报文在接口上的转发功能。
本命令可在所有配置IPv6地址的视图下配置。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启接口的IPv6报文转发功能。
ipv6 forwarding
缺省情况下,设备的IPv6报文转发功能处于关闭状态。
查看转发表的信息是定位转发问题的基本方法。在任意视图下执行display命令可以显示转发表信息。
表1-1 IP转发表显示和维护
操作 |
命令 |
显示FIB表项的信息(独立运行模式) |
display fib [ vpn-instance vpn-instance-name ] [ ip-address [ mask | mask-length ] ] [ slot slot-number ] |
显示FIB表项的信息(IRF模式) |
display fib [ vpn-instance vpn-instance-name ] [ ip-address [ mask | mask-length ] ] [chassis chassis-number slot slot-number] |
对同一路由协议来说,允许配置多条目的地相同且开销也相同的路由。当到同一目的地的路由中,没有更高优先级的路由时,这几条路由都被采纳,在转发去往该目的地的报文时,依次通过各条路径发送,从而实现网络的负载分担。
设备上存在多条等价路由时,可以根据报文中的信息(源IP地址、目的IP地址、源MAC地址、目的MAC地址、源端口、目的端口、IP协议号和入端口)配置逐流进行负载分担。
在某些复杂的组网环境中,单一的负载分担算法不能满足负载分担的需求,可能出现设备负载分担不均匀的时候。这种情况下可以通过指定不同的负载分担算法来实现设备负载分担算法切换,保证负载分担均匀。
在CSPEX-1104-E、CSPEX-1204单板和CSPC-GE16XP4L-E、CSPC-GE24L-E、CSPC-GP24GE8XP2L-E单板上配置本功能不生效。
在CSPEX类单板(CSPEX-1204和CSPEX-1104-E除外)、SPE类单板和CEPC类单板上配置ip-pro方式不生效。
在CSPEX类单板(CSPEX-1204、CSPEX-1104-E、CSPEX-1802X、CSPEX-1812X-E除外)、SPE类单板和CEPC类单板(CEPC-CQ8L除外)上,负载分担方式生效的优先级为:
(1) 在指定单板上或全局配置的按照指定算法基于报文逐流进行负载分担(配置algorithm参数)。
(2) 在指定单板上配置的dest-ip、dest-mac、dest-port、src-ip、src-mac、src-port负载分担方式。
(3) 在全局配置的dest-ip、dest-mac、dest-port、src-ip、src-mac、src-port负载分担方式。
(4) 聚合负载分担类型(配置link-aggregation global load-sharing mode命令)。
(5) 缺省情况下的负载分担方式。
有关聚合负载分担的介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。
在CSPEX-1802X、CSPEX-1812X-E、CEPC-CQ8L单板上,负载分担方式生效的优先级为:
(1) 在指定单板上或全局配置的按照指定算法基于报文逐流进行负载分担(配置algorithm参数)。
(2) 在指定单板上配置的dest-ip、dest-mac、dest-port、src-ip、src-mac、src-port负载分担方式。
(3) 在全局配置的dest-ip、dest-mac、dest-port、src-ip、src-mac、src-port负载分担方式。
(4) 缺省情况下的负载分担方式。
(1) 进入系统视图。
system-view
(2) 配置负载分担方式。
(独立运行模式)
ip load-sharing mode per-flow [ algorithm algorithm-number | [ dest-ip | dest-mac | dest-port | ip-pro | src-ip | src-mac | src-port ] * ] { global | slot slot-number [ cpu cpu-number ] }
(IRF模式)
ip load-sharing mode per-flow [ algorithm algorithm-number | [ dest-ip | dest-mac | dest-port | ip-pro | src-ip | src-mac | src-port ] * ] { chassis chassis-number slot slot-number [ cpu cpu-number ] | global }
缺省情况下,CSPEX类单板(CSPEX-1204、CSPEX-1104-E、CSPEX-1802X、CSPEX-1812X-E除外)、SPE类单板和CEPC类单板(CEPC-CQ8L除外)采用的负载分担方式请参见表2-1;CSPEX-1802X、CSPEX-1812X-E、CEPC-CQ8L单板采用的负载分担方式请参见表2-2;
CSPEX-1104-E、CSPEX-1204单板和CSPC-GE16XP4L-E、CSPC-GE24L-E、CSPC-GP24GE8XP2L-E单板采用的负载分担方式请参见表2-3;、CSPC类单板(CSPC-GE16XP4L-E、CSPC-GE24L-E和CSPC-GP24GE8XP2L-E除外)、CMPE-1104单板不支持对MPLS和隧道报文进行负载分担,仅支持对IP报文进行负载分担,采用的负载分担方式请参见表2-4。
转发报文类型 |
采用的负载分担方式 |
IP单播报文 |
dest-ip、src-ip |
IP组播报文 |
dest-mac、src-mac |
二层数据帧 |
dest-mac、src-mac |
MPLS L3VPN报文 |
dest-ip、src-ip |
MPLS L2VPN报文 |
· 对于IP报文:dest-ip、src-ip · 对于其他报文:dest-mac、src-mac |
MPLS标签交换报文 |
· 对于IP报文:mpls-label1、mpls-label2、dest-ip、src-ip · 对于其他报文:mpls-label1、mpls-label2、dest-mac、src-mac |
MPLS其他报文 |
mpls-label1、mpls-label2 |
IP隧道报文 |
· 对于IP报文:内层dest-ip、内层src-ip · 对于MPLS的非终结类报文:mpls-label1、mpls-label2 |
转发报文类型 |
采用的负载分担方式 |
IP单播报文 |
dest-ip、src-ip、dest-port、src-port |
IP组播报文 |
dest-ip、src-ip、dest-port、src-port |
二层数据帧 |
dest-mac、src-mac |
MPLS L3VPN报文 |
dest-ip、src-ip、dest-port、src-port |
MPLS L2VPN报文 |
· 对于IP报文:dest-ip、src-ip、dest-port、src-port · 对于其他报文:dest-mac、src-mac |
MPLS标签交换报文 |
· 对于IP报文:mpls-label1、mpls-label2、dest-ip、src-ip、dest-port、src-port · 对于其他报文:mpls-label1、mpls-label2、dest-mac、src-mac |
MPLS其他报文 |
mpls-label1、mpls-label2 |
IP隧道报文 |
· 对于IP报文:内层dest-ip、内层src-ip、内层src-port、内层dest-port · 对于MPLS的非终结类报文:mpls-label1、mpls-label2 |
转发报文类型 |
采用的负载分担方式 |
IP单播报文 |
dest-ip、src-ip |
IP组播报文 |
dest-mac、src-mac |
二层数据帧 |
dest-mac、src-mac |
MPLS L3VPN报文 |
dest-ip、src-ip |
MPLS L2VPN报文 |
· 对于IP报文:dest-ip、src-ip · 对于MPLS VPLS报文:dest-mac、src-mac · 对于MPLS L2VPN报文:mpls-label1、mpls-label2 · 对于其他报文:dest-mac、src-mac |
MPLS标签交换报文 |
mpls-label1、mpls-label2 |
MPLS其他报文 |
mpls-label1、mpls-label2 |
IP隧道报文 |
· 对于IP报文:内层dest-ip、内层src-ip · 对于MPLS的非终结类报文:mpls-label1、mpls-label2 |
转发报文类型 |
采用的负载分担方式 |
IP报文 |
dest-ip、src-ip、dest-port、src-port、ip-pro |
使能基于带宽的负载分担功能情况下,如果转发时查到多个出接口/下一跳,则按照接口的带宽值计算出各个接口应该分配的报文比例,然后按照带宽比例对报文进行转发。
支持负载分担的协议(如LISP)的设备,无论是否配置负载分担命令,负载分担比例以协议定义的负载分担比例为准。
仅从CSPEX类单板(CSPEX-1204和CSPEX-1104-E除外)、SPE类单板和CEPC类单板进入的流量支持基于带宽的负载分担。
(1) 进入系统视图。
system-view
(2) 开启IPv4基于带宽的负载分担功能。
bandwidth-based-sharing
缺省情况下,IPv4基于带宽的负载分担功能处于关闭状态。
(3) (可选)配置接口的期望带宽值。
a. 进入接口视图。
interface interface-type interface-number
b. 配置接口的期望带宽值。
bandwidth bandwidth
缺省情况下,接口期望带宽为接口的物理带宽。
在任意视图下执行display命令可以显示配置后的运行情况,通过查看显示信息验证配置的效果。
表2-5 负载分担显示和维护
操作 |
命令 |
显示当前使用的负载分担方式(独立运行模式) |
display ip load-sharing mode slot slot-number [ cpu cpu-number ] |
显示当前使用的负载分担方式(IRF模式) |
display ip load-sharing mode chassis chassis-number slot slot-number [ cpu cpu-number ] |
在Router A和Router B之间存在两条等价路由,要求实现通过Router B到达目的地址为1.2.3.4/24的报文在两条等价路由上基于源和目的地址进行负载分担。
图2-1 负载分担配置举例组网图
# 配置Router A接口和的IP地址。
<RouterA> system-view
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] ip address 10.1.1.1 24
[RouterA-GigabitEthernet3/1/1] quit
[RouterA] interface gigabitethernet 3/1/2
[RouterA-GigabitEthernet3/1/2] ip address 20.1.1.1 24
[RouterA-GigabitEthernet3/1/2] quit
# 配置Router B接口和的IP地址。
<RouterB> system-view
[RouterB] interface gigabitethernet 3/1/1
[RouterB-GigabitEthernet3/1/1] ip address 10.1.1.2 24
[RouterB-GigabitEthernet3/1/1] quit
[RouterB] interface gigabitethernet 3/1/2
[RouterB-GigabitEthernet3/1/2] ip address 20.1.1.2 24
[RouterB-GigabitEthernet3/1/2] quit
# 在Router A上配置静态路由
[RouterA] ip route-static 1.2.3.4 24 10.1.1.2
[RouterA] ip route-static 1.2.3.4 24 20.1.1.2
[RouterA] quit
# 通过查看转发表观察两条等价路由
<RouterA> display fib 1.2.3.4
FIB entry count: 2
Flag:
U:Usable G:Gateway H:Host B:Blackhole D:Dynamic S:Static
R:Relay F:FRR
Destination/Mask Nexthop Flag OutInterface/Token Label
1.2.3.0/24 10.1.1.2 USGR GE3/1/1 Null
1.2.3.0/24 20.1.1.2 USGR GE3/1/2 Null
# 配置基于源IP地址和目的IP地址的负载分担
<RouterA> system-view
[RouterA] ip load-sharing mode per-flow dest-ip src-ip global
[RouterA] quit
<RouterA> display counters outbound interface GigabitEthernet
Interface Total (pkts) Broadcast (pkts) Multicast (pkts) Err (pkts)
GE3/1/1 1045 0 0 0
GE3/1/2 1044 0 0 0
由上表可以看出来,通过Router A的两个接口的报文数量基本相同,实现了负载分担。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!