ユニキャスト RIB および FIB について
ユニキャスト RIB(IPv4 RIB と IPv6 RIB)および FIB は、図 14-1 に示すように、Cisco NX-OS の転送アーキテクチャの一部です。
図 14-1 Cisco NX-OS 転送アーキテクチャ
ユニキャスト RIB は、アクティブなスーパーバイザ上にあります。ユニキャスト RIB は、直接接続のルート、スタティック ルート、ダイナミック ユニキャスト ルーティング プロトコルで検出されたルートを含むルーティング テーブルを維持しています。また、アドレス解決プロトコル(ARP)などの送信元から、隣接情報を収集します。ユニキャスト RIB は、ルートに最適なネクスト ホップを決定し、さらにユニキャスト FIB 分散モジュール(FDM)のサービスを使用して、モジュール上のユニキャスト転送情報ベース(FIB)を入力します。
各ダイナミック ルーティング プロトコルは、タイム アウトしたあらゆるルートについて、ユニキャスト RIB を更新する必要があります。その後、ユニキャスト RIB はそのルートを削除し、そのルートに最適なネクスト ホップを再計算します(代わりに使用できるパスがある場合)。
この項では、次のトピックについて取り上げます。
• 「レイヤ 3 整合性チェッカー」
レイヤ 3 整合性チェッカー
まれな状況において、各モジュールのユニキャスト RIB と FIB の間に不整合が発生することがあります。Cisco NX-OS は、レイヤ 3 整合性チェッカーをサポートします。この機能は、スーパーバイザ モジュールのユニキャスト IPv4 RIB と各インターフェイス モジュールの FIB の間で不整合を検出します。不整合には次のようなものがあります。
• 欠落したプレフィックス
• 余分なプレフィックス
• ネクストホップ アドレスの誤り
• ARP またはネイバー探索(ND)キャッシュ内の不正なレイヤ 2 リライト文字列
レイヤ 3 整合性チェッカーは、FIB のエントリと隣接マネージャ(AM)から取得した最新の隣接情報を比較し、不整合があれば記録します。次に整合性チェッカーは、ユニキャスト RIB のプレフィックスをモジュールの FIB と比較し、不整合があればログに記録します。「レイヤ 3 整合性チェッカーのトリガー」を参照してください。
不整合は手動で解消できます。「FIB 内の転送情報の消去」を参照してください。
ユニキャスト RIB および FIB のライセンス要件
次の表に、この機能のライセンス要件を示します。
|
|
Cisco NX-OS |
ユニキャスト RIB および FIB にライセンスは不要です。ライセンス パッケージに含まれていない機能は nx-os イメージにバンドルされており、無料で提供されます。Cisco NX-OS のライセンス スキームの詳細については、『 Cisco NX-OS Licensing Guide 』を参照してください。 |
ユニキャスト RIB および FIB の管理
この項では、次のトピックについて取り上げます。
• 「モジュールの FIB 情報の表示」
• 「ユニキャスト FIB のロード シェアリングの設定」
• 「ルーティング情報と隣接情報の表示」
• 「レイヤ 3 整合性チェッカーのトリガー」
• 「FIB 内の転送情報の消去」
• 「ユニキャスト RIB の最大ルート数の設定」
• 「ルートのメモリ要件の見積もり」
• 「ユニキャスト RIB 内のルートの消去」
(注) Cisco IOS の CLI に慣れている場合、この機能に対応する Cisco NX-OS コマンドは通常使用する Cisco IOS コマンドと異なる場合があるので注意してください。
モジュールの FIB 情報の表示
モジュールの FIB 情報を表示できます。
手順の詳細
モジュールの FIB 情報を表示するには、任意のモードで次のコマンドを使用します。
|
|
show forwarding {
ipv4 |
ipv6 }
adjacency module
slot
switch# show forwarding ipv6 adjacency module 2
|
IPv4 または IPv6 の隣接情報を表示します。 |
show forwarding {
ipv4 |
ipv6 }
route module
slot
switch# show forwarding ipv6 route module 2
|
IPv4 または IPv6 のルート テーブルを表示します。 |
ユニキャスト FIB のロード シェアリングの設定
Open Shortest Path First(OSPF)などのダイナミック ルーティング プロトコルは、等コスト マルチパス(ECMP)によるロード シェアリングをサポートしています。ルーティング プロトコルは、そのプロトコルに設定されたメトリックに基づいて最適なルートを決定し、そのプロトコルに設定された最大数までのパスをユニキャスト ルーティング情報ベース(RIB)に組み込みます。ユニキャスト RIB は、RIB に含まれるすべてのルーティング プロトコル パスのアドミニストレーティブ ディスタンスを比較し、ルーティング プロトコルによって組み込まれたすべてのパス セットから最適なパス セットを選択します。ユニキャスト RIB は、この最適なパス セットを転送情報ベース(FIB)に組み込み、転送プレーンで使用できるようにします。
フォワーディング プレーンは、ロード シェアリングのアルゴリズムを使用して、FIB に組み込まれたパスのいずれかを選択し、それを特定のデータ パケットに使用します。
(注) ロード シェアリングでは、特定のフローに含まれるすべてのパケットに対して同じパスが使用されます。フローは、ユーザが設定したロード シェアリング方式によって定義されます。たとえば、送信元/宛先のロード シェアリングを設定すると、送信元 IP アドレスと宛先 IP アドレスのペアが同じであるすべてのパケットが同じパスをたどります。
ユニキャスト FIB のロード シェアリング アルゴリズムを設定するには、グローバル コンフィギュレーション モードで次のコマンドを使用します。
|
|
ip load-sharing address {
destination port destination |
source-destination [
port
source-destination ]} [
universal-id
seed ][
rotate
rotate ] [
concatenation ]
switch(config)# ip load-sharing address source-destination
|
データ トラフィックに対するユニキャスト FIB のロード シェアリング アルゴリズムを設定します。 • universal-id オプションは、ハッシュ アルゴリズムのランダム シードを設定します。汎用 ID を設定する必要はありません。ユーザが設定しなかった場合は、Cisco NX-OS が汎用 ID を選択します。 universal-id の範囲は 1 ~ 4294967295 です。 • rotate オプションを使用すると、ハッシュ アルゴリズムはネットワーク内のすべてのノードで同じリンクを継続的に選択しないように、リンク ピッキング選択を循環させます。これは、ハッシュ アルゴリズムのビット パターンに影響を与えることによって機能します。 rotate 値を指定すると、64 ビットのストリームが循環回転でそのビット位置から解釈されます。 rotate 値の範囲は 1 ~ 63 で、デフォルトは 32 です。 』を参照してください。 • concatenation オプションを使用すると、ECMP のハッシュ タグ値とポート チャネルのハッシュ タグ値が一つに結合され、より強力な 64 ビットのハッシュを使用できるようになります。このオプションを使用しない場合、ECMP のロード バランシングおよびポート チャネルのロード バランシングを個別に制御できます。デフォルトではディセーブルになっています。 |
ユニキャスト FIB のロード シェアリング アルゴリズムを表示するには、任意のモードで次のコマンドを使用します。
|
|
switch(config)# show ip load-sharing address source-destination
|
データ トラフィックに対するユニキャスト FIB のロード シェアリング アルゴリズムを表示します。 |
ユニキャスト RIB および FIB が特定の送信元アドレス/宛先アドレスに使用するルートを表示するには、任意のモードで次のコマンドを使用します。
|
|
show routing hash
source-addr dest-addr [
source-port dest-port ] [
vrf
vrf-name ]
switch# show routing hash 192.0.2.1 10.0.0.1
|
ユニキャスト RIB および FIB が特定の送信元/宛先アドレス ペアに使用するルートを表示します。送信元アドレスと宛先アドレスの形式は x.x.x.x です。送信元ポートと宛先ポートの範囲は 1 ~ 65535 です。VRF 名には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 |
次に、送信元/宛先ペアのために選択されたルートを表示する例を示します。
switch# show routing hash 10.0.0.5 192.0.0.2
Load-share parameters used for software forwarding:
load-share mode: address source-destination port source-destination
Universal-id seed: 0xe05e2e85
Hashing to path *172.0.0.2 (hash: 0x0e), for route:
ルーティング情報と隣接情報の表示
ルーティング情報と隣接情報を表示できます。
ルーティング情報と隣接情報を表示するには、任意のモードで次のコマンドを使用します。
|
|
show {
ip |
ipv6 }
route [
route-type |
interface
int-type number |
next-hop ]
|
ユニキャスト ルート テーブルを表示します。 route-type 引数には、1 つのルート プレフィックス、ダイレクト、スタティック、またはダイナミック ルーティング プロトコルを指定します。 ? コマンドを使用すると、サポートされているインターフェイスを表示できます。 |
show {
ip |
ipv6 }
adjacency [
prefix |
interface-type number [
summary ]|
non-best ] [
detail ] [
vrf
vrf-id ]
switch# show ip adjacency
|
隣接関係テーブルを表示します。引数の範囲は次のとおりです。 • prefix :任意の IPv4 または IPv6 プレフィックス アドレス。 • interface-type number : ? コマンドを使用すると、サポートされているインターフェイスを表示できます。 • vrf-id :最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 |
show {
ip |
ipv6 }
routing [
route-type |
interface
int-type number |
next-hop |
recursive-next-hop |
summary |
updated {
since |
until }
time ]
switch# show routing summary
|
ユニキャスト ルート テーブルを表示します。 route-type 引数には、1 つのルート プレフィックス、ダイレクト、スタティック、またはダイナミック ルーティング プロトコルを指定します。 ? コマンドを使用すると、サポートされているインターフェイスを表示できます。 |
次に、ユニキャスト ルート テーブルを表示する例を示します。
IP Route Table for Context "default"
'*' denotes best ucast next-hop '**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
0.0.0.0/0, 1 ucast next-hops, 0 mcast next-hops
*via 10.1.1.1, mgmt0, [1/0], 5d21h, static
0.0.0.0/32, 1 ucast next-hops, 0 mcast next-hops
*via Null0, [220/0], 1w6d, local, discard
10.1.0.0/22, 1 ucast next-hops, 0 mcast next-hops, attached
*via 10.1.1.55, mgmt0, [0/0], 5d21h, direct
10.1.0.0/32, 1 ucast next-hops, 0 mcast next-hops, attached
*via 10.1.0.0, Null0, [0/0], 5d21h, local
10.1.1.1/32, 1 ucast next-hops, 0 mcast next-hops, attached
*via 10.1.1.1, mgmt0, [2/0], 5d16h, am
10.1.1.55/32, 1 ucast next-hops, 0 mcast next-hops, attached
*via 10.1.1.55, mgmt0, [0/0], 5d21h, local
10.1.1.253/32, 1 ucast next-hops, 0 mcast next-hops, attached
*via 10.1.1.253, mgmt0, [2/0], 5d20h, am
10.1.3.255/32, 1 ucast next-hops, 0 mcast next-hops, attached
*via 10.1.3.255, mgmt0, [0/0], 5d21h, local
255.255.255.255/32, 1 ucast next-hops, 0 mcast next-hops
*via Eth Inband Port, [0/0], 1w6d, local
次に、隣接関係情報を表示する例を示します。
switch#
show ip adjacency
IP Adjacency Table for context default
Total number of entries: 2
Address Age MAC Address Pref Source Interface Best
10.1.1.1 02:20:54 00e0.b06a.71eb 50 arp mgmt0 Yes
10.1.1.253 00:06:27 0014.5e0b.81d1 50 arp mgmt0 Yes
レイヤ 3 整合性チェッカーのトリガー
レイヤ 3 整合性チェッカーを手動でトリガーできます。
レイヤ 3 整合性チェッカーを手動でトリガーにするには、グローバル コンフィギュレーション モードで次のコマンドを使用します。
|
|
test forwarding [
ipv4 |
ipv6 ] [
unicast] inconsistency [
vrf
vrf-name ] [
module {
slot |
all }]
switch(config)# test forwarding inconsistency
|
レイヤ 3 整合性チェックを開始します。 vrf-name には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 スロット の範囲は 1 ~ 26 です。 |
レイヤ 3 整合性チェッカーを停止するには、グローバル コンフィギュレーション モードで次のコマンドを使用します。
|
|
test forwarding [
ipv4 |
ipv6 ] [
unicast ]
inconsistency [
vrf
vrf-name ] [
module {
slot |
all }]
stop
switch# test forwarding inconsistency stop
|
レイヤ 3 整合性チェックを停止します。 vrf-name には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 スロット の範囲は 1 ~ 26 です。 |
レイヤ 3 の不整合を表示するには、任意のモードで次のコマンドを使用します。
|
|
show forwarding [
ipv4 |
ipv6 ]
inconsistency [
vrf
vrf-name ] [
module {
slot |
all }]
switch# show forwarding inconsistency
|
レイヤ 3 整合性チェックの結果を表示します。 vrf-name には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 スロット の範囲は 1 ~ 26 です。 |
FIB 内の転送情報の消去
FIB 内の 1 つまたは複数のエントリを消去できます。FIB のエントリを消去しても、ユニキャスト RIB に影響はありません。
注意
clear forwarding コマンドを実行すると、デバイス上の転送は中断されます。
FIB 内のエントリ(レイヤ 3 の不整合を含む)を消去するには、任意のモードで次のコマンドを使用します。
|
|
clear forwarding {
ipv4 |
ipv6 }
route {* |
prefix } [
vrf
vrf-name ]
module {
slot |
all }
switch# clear forwarding ipv4 route * module 1
|
FIB から 1 つまたは複数のエントリを消去します。ルートのオプションは次のとおりです。 • *:すべてのルート。 • prefix :任意の IP または IPv6 プレフィックス vrf-name には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 スロット の範囲は 1 ~ 26 です。 |
ユニキャスト RIB の最大ルート数の設定
ルーティング テーブルで許可されている最大ルート数を設定できます。
手順の概要
1. configure terminal
2. vrf context vrf-name
3. ipv4 unicast
4. maximum routes max-routes [ threshold [ reinstall threshold ] | warning-only]
5. (任意)copy running-config startup-config
手順の詳細
|
|
|
ステップ 1 |
configure terminal 例: switch# configure terminal switch(config)# |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
vrf context vrf-name 例: switch(config)# vrf context Red switch(config-vrf)# |
VRF を作成し、VRF コンフィギュレーション モードを開始します。 |
ステップ 3 |
ipv4 unicast 例 : switch(config-vrf)# ipv4 unicast switch(config-vrf-af-ipv4)# |
アドレスファミリ コンフィギュレーション モードに入ります。 |
ステップ 4 |
maximum routes
max-routes
[
threshold
[reinstall
threshold
] | warning-only]
switch(config-vrf-af-ipv4)# maximum routes 250 90 |
ルーティング テーブルで許可される最大ルート数を設定します。指定できる範囲は 1 ~ 4294967295 です。 次の項目を任意で指定できます。 • threshold :警告メッセージをトリガーする最大ルート数のパーセンテージ。範囲は 1 ~ 100 です。 • warning-only :ルートの最大数を超えたときの警告メッセージを記録します。 • reinstall threshold :以前に最大ルート数の制限を超過し、拒否されたルートを再インストールして、それらを再インストールするしきい値を指定します。しきい値の範囲は 1 ~ 100 です。 |
ステップ 5 |
copy running-config startup-config 例: switch(config-vrf-af-ipv4)# copy running-config startup-config |
(任意)この設定の変更を保存します。 |
ルートのメモリ要件の見積もり
一連のルートおよびネクストホップ アドレスが使用するメモリを見積もることができます。
ルートのメモリ要件を見積もるには、任意のモードで次のコマンドを使用します。
|
|
show routing {ipv6} memory estimate routes
num-routes
next-hops
num-nexthops
switch# show routing memory estimate routes 5000 next-hops 2
|
ルートのメモリ要件を表示します。 num-routes の範囲は 1000 ~ 1000000 です。 num-nexthops の範囲は 1 ~ 16 です。 |
ユニキャスト RIB 内のルートの消去
ユニキャスト RIB から 1 つまたは複数のルートを消去できます。
注意
* キーワードはルーティングに破壊的な影響を与えます。
ユニキャスト RIB 内の 1 つまたは複数のエントリを消去するには、任意のモードで次のコマンドを使用します。
|
|
clear {
ip |
ipv4 |
ipv6 }
route {* | {
route |
prefix/length }[
next-hop
interface ]} [
vrf
vrf-name ]
switch(config)# clear ip route 10.2.2.2
|
ユニキャスト RIB とすべてのモジュール FIB から 1 つまたは複数のルートを消去します。ルートのオプションは次のとおりです。 • *:すべてのルート。 • route :個々の IP または IPv6 ルート。 • prefix/length :任意の IP または IPv6 プレフィックス。 • next-hop :ネスクトホップ アドレス。 • interface :ネスクトホップ アドレスに到達するためのインターフェイス。 vrf-name には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 |
clear routing [
multicast |
unicast ] [
ip |
ipv4 |
ipv6 ] {* | {
route |
prefix/length }[
next-hop
interface ]} [
vrf
vrf-name ]
switch(config)# clear routing ip 10.2.2.2
|
ユニキャスト RIB から 1 つまたは複数のルートを消去します。ルートのオプションは次のとおりです。 • *:すべてのルート。 • route :個々の IP または IPv6 ルート。 • prefix/length :任意の IP または IPv6 プレフィックス。 • next-hop :ネスクトホップ アドレス。 • interface :ネスクトホップ アドレスに到達するためのインターフェイス。 vrf-name には最大 64 文字の英数字文字列を指定します。大文字と小文字は区別されます。 |
ユニキャスト RIB および FIB の確認
ユニキャスト RIB および FIB 情報を表示するには、次のいずれかの作業を行います。
|
|
show forwarding adjacency |
モジュールの隣接関係テーブルを表示します。 |
show forwarding distribution { clients | fib-state } |
FIB の分散情報を表示します。 |
show forwarding interfaces module slot |
モジュールの FIB 情報を表示します。 |
show forwarding { ip | ipv4 | ipv6 } route |
FIB 内のルートを表示します。 |
show { ip | ipv6 } adjacency |
隣接関係テーブルを表示します。 |
show { ip | ipv6 } route |
ユニキャスト RIB から受け取った IPv4 または IPv6 ルートを表示します。 |
show routing |
ユニキャスト RIB から受け取ったルートを表示します。 |
その他の関連資料
ユニキャスト RIB および FIB の管理に関連する詳細情報については、次の項を参照してください。
• 「関連資料」
関連資料
|
|
EEM の設定 |
『 Cisco Nexus 9000 シリーズ NX-OS システム管理コンフィギュレーション ガイド 』 |