07-IP轉發基礎配置
本章節下載: 07-IP轉發基礎配置 (214.99 KB)
FIB(Forwarding Information Base,轉發信息庫)表用來指導IP報文轉發。
路由器通過路由表選擇路由,把優選路由下發到FIB表中,通過FIB表指導IP報文轉發。FIB表中每條轉發表項都指明了要到達某子網或某主機的報文的下一跳IP地址以及出接口。
關於路由表的詳細介紹,請參見“三層技術-IP路由配置指導”中的“IP路由基礎”。
通過命令display 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表中包含了下列關鍵項:
· 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
在EVPN分布式網關組網中,設備作為VTEP從VXLAN隧道口收到VXLAN封裝的指定內層協議類型(VXLAN封裝的內層報文的協議類型)的報文後,缺省情況會上送CPU進行處理。當指定內層協議類型的報文較多時,會被限速而導致丟包。這種情況下,VTEP的下行設備或終端可能因無法及時收到指定協議類型的報文,引發業務異常。
為避免此類情況,設備支持配置對VXLAN隧道口收到指定協議類型的報文直接轉發,不上送CPU。
(1) 進入係統視圖。
system-view
(2) 配置設備從VXLAN隧道收到指定協議類型的報文直接轉發,不上送CPU。
forwarding vxlan-packet inner-protocol { ipv4 | ipv6 } *
缺省情況下,設備從VXLAN隧道收到指定報文後將會上送CPU處理。
查看轉發表的信息是定位轉發問題的基本方法。在任意視圖下執行display命令可以顯示轉發表信息。
表1-1 IP轉發表顯示和維護
操作 |
命令 |
顯示FIB表項的信息 |
display fib [ vpn-instance vpn-instance-name ] [ ip-address [ mask | mask-length ] ] |
對同一路由協議來說,允許配置多條目的地相同且開銷也相同的路由。當到同一目的地的路由中,沒有更高優先級的路由時,這幾條路由都被采納,在轉發去往該目的地的報文時,依次通過各條路徑發送,從而實現網絡的負載分擔。
配置負載分擔的內容包括:
· 配置負載分擔方式:設備上存在多條等價路由時,可以根據報文中的信息(源IP地址、目的IP地址、源端口、目的端口、IP協議號和入端口)配置逐流進行負載分擔,或者根據報文進行逐包負載分擔。
· 配置負載分擔算法切換:在某些複雜的組網環境中,單一的負載分擔算法不能滿足負載分擔的需求,可能出現設備負載分擔不均勻的時候。這種情況下可以通過指定不同的負載分擔算法來實現設備負載分擔算法切換,保證負載分擔均勻。
配置負載分擔方式,目前僅支持以下四種組合方式:
· 基於源IP地址
· 基於源IP地址和目的IP地址
· 基於源IP地址、源端口和目的端口
· 基於源IP地址、目的IP地址、源端口和目的端口
(1) 進入係統視圖。
system-view
(2) 配置負載分擔方式。
ip load-sharing mode per-flow [ dest-ip | dest-port | src-ip | src-port ] * { global | slot slot-number }
缺省情況下,基於報文的源IP地址、目的IP地址、源端口、目的端口、IP協議號和入端口逐流進行負載分擔。
(3) 顯示計算出的等價路由選路信息。
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 ] *
本命令行的參數輸入需要和display ip load-sharing mode命令顯示的配置參數以及負載分擔報文所攜帶的字段相匹配。如不匹配,則顯示的等價路由哈希選路信息可能跟實際不一致。
當IRF設備轉發報文時,如果查詢到的是等價路由且出接口在不同成員設備上,可能會將報文透傳到某個成員設備再發送,這會使報文轉發效率變低,也會影響成員設備間的數據處理能力。當配置了等價路由負載分擔本地優先的功能以後,如果在處理報文的成員設備上存在等價路由的出接口,就隻從當前設備發送報文,而不會再透傳到其他成員設備發送。
(1) 進入係統視圖。
system-view
(2) 開啟等價路由負載分擔本地優先功能。
ip load-sharing local-first enable
缺省情況下,等價路由負載分擔本地優先功能處於開啟狀態。
在任意視圖下執行display命令可以顯示配置後的運行情況,通過查看顯示信息驗證配置的效果。
表2-1 負載分擔顯示和維護
操作 |
命令 |
顯示當前使用的負載分擔方式 |
display ip load-sharing mode slot slot-number |
指定計算等價路由哈希選路的參數並顯示計算出的等價路由哈希選路信息 |
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 ] * |
在Switch A和Switch B之間存在兩條等價路由,要求實現通過Switch B到達目的地址為1.2.3.4/24的報文在兩條等價路由上基於源和目的地址進行負載分擔。
圖2-1 負載分擔配置舉例組網圖
# 配置Switch A
<SwitchA> system-view
[SwitchA] vlan 10
[SwitchA-vlan10] port twenty-fivegige 1/0/1
[SwitchA-vlan10] quit
[SwitchA] vlan 20
[SwitchA-vlan20] port twenty-fivegige 1/0/2
[SwitchA-vlan20] quit
# 配置接口Vlan-interface10和Vlan-interface20的IP地址。
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] ip address 10.1.1.1 24
[SwitchA-Vlan-interface10] quit
[SwitchA] interface vlan-interface 20
[SwitchA-Vlan-interface20] ip address 20.1.1.1 24
[SwitchA-Vlan-interface20] quit
# 配置Switch B
<SwitchB> system-view
[SwitchB] vlan 10
[SwitchB-vlan10] port twenty-fivegige 1/0/1
[SwitchB-vlan10] quit
[SwitchB] vlan 20
[SwitchB-vlan20] port twenty-fivegige 1/0/2
[SwitchB-vlan20] quit
# 配置接口Vlan-interface10和Vlan-interface20的IP地址。
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] ip address 10.1.1.2 24
[SwitchB-Vlan-interface10] quit
[SwitchB] interface vlan-interface 20
[SwitchB-Vlan-interface20] ip address 20.1.1.2 24
[SwitchB-Vlan-interface20] quit
# 在Switch A上配置靜態路由
<SwitchA> system-view
[SwitchA] ip route-static 1.2.3.4 24 10.1.1.2
[SwitchA] ip route-static 1.2.3.4 24 20.1.1.2
[SwitchA] quit
# 通過查看轉發表觀察兩條等價路由
<SwitchA> display fib 1.2.3.4
Destination count: 1 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 Vlan10 Null
1.2.3.0/24 20.1.1.2 USGR Vlan20 Null
# 配置基於源IP地址和目的IP地址的負載分擔
<SwitchA> system-view
[SwitchA] ip load-sharing mode per-flow dest-ip src-ip global
[SwitchA] quit
<SwitchA> display counters outbound interface GigabitEthernet
Interface Total (pkts) Broadcast (pkts) Multicast (pkts) Err (pkts)
WGE1/0/1 1045 0 0 0
WGE1/0/2 1044 0 0 0
由上表可以看出來,通過Switch A的兩個接口的報文數量基本相同,實現了負載分擔。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!