概要
このドキュメントでは、プロバイダー エッジ(PE)ルータとカスタマー エッジ(CE)ルータ間で Open Shortest Path First(OSPF)ルーティング プロトコルを実行する際の、ループ防止機能と最小限の設定手順を説明します。 ここでは、リンク ステート アドバタイズメント(LSA)およびドメイン タグのオプションである、下方ビット(DN)の使用を示すネットワーク シナリオを示します。
前提条件
要件
OSPF およびマルチプロトコル ラベル スイッチング(MPLS)のレイヤ 3 VPN の専門知識があることが推奨されます。
使用するコンポーネント
このドキュメントは、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
本書の情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。 稼働中のネットワークで作業を行う場合、コマンドの影響について十分に理解したうえで作業してください。
背景説明
サービス プロバイダー(SP)と CE ルータは、SP および顧客の両方が合意するルーティング プロトコルを使用してルートを交換します。 このドキュメントで扱う範囲は、OSPFv2 が使用される場合のループ防止機能を説明することです。
OSPFv2 が特定の Virtual Routing and Forwarding(VRF)または VPN に属する PE-CE リンクで使用される場合、PE ルータは次のように動作します。
- その VPN の OSPF 経由で受信したルートを Multiprotocol-Border Gateway Protocol(MP-BGP)に再配布し、他の PE ルータにアドバタイズします。
- MP-BGP 経由で VPN に導入された BGP ルートをその VPN の OSPF インスタンスに再配布し、CE ルータにアドバタイズします。
設定
ネットワーク図
ループ防止技法を理解するために、このネットワーク トポロジを検討します。

この設定では、ループが発生する可能性があります。 たとえば、CE1 が OSPF LSA タイプ 1 を PE1 にアドバタイズする場合、PE1 はルートを VPNv4 に再配布し、PE2 にアドバタイズします。次に、PE2 はサマリー LSA を CE2 にアドバタイズします。 CE2 によって受信されるこのルートは PE3 にアドバタイズされ戻ってくる可能性があります。 3 番目の PE ルータは OSPF ルートを学習し、BGP ルートよりも適切なため、顧客サイト 2 のローカルとして、ルートを BGP に再アドバタイズします。PE3 は、アドバタイズされたルートが顧客サイト 2 から発生していないことを学習しません。
この状況を克服するために、ルートが MP-BGP から OSPF に再配布される際、LSA タイプ 3、5、または 7 の DN ビットでマークされ、タイプ 5 および 7 では LSA ドメイン タグが付けられます。
設定
PEルータの設定例です。 この設定には、VRF 設定、PE-CE ルータ間で動作する OSPF プロセス 2、MPLS コアで内部ゲートウェイ プロトコル(IGP)として動作する OSPF プロセス 1、および MP-BGP 設定が含まれます。

DN ビット
OSPF LSA オプション フィールドで、従来未使用だったビットは DN ビットと呼ばれます。 タイプ 3、5、および 7 LSA のこのビットは、MP-BGP ルートが OSPF に再配布される際に設定されます。 他の PE ルータが CE ルータからタイプ 3、5、または 7 に DN ビットが設定された LSA を受信すると、その LSA の情報は OSPF ルートの計算には使用されません。

ネットワーク トポロジに基づいて、PE2 は再配布される LSA の DN ビットを設定して、この LSA は PE3 の OSPF プロセス 2 のルート計算では考慮されません。 したがって、PE3 は MP-BGP にこのルートを再配布しません。
ルートがタイプ 3 LSA で PE ルータからアドバタイズされた際の DN ビット設定を示す OSPF ヘッダーの例を次に示します。
Open Shortest Path First
OSPF Header
Version: 2
Message Type: LS Update (4)
Packet Length: 56
Source OSPF Router: 10.10.23.3 (10.10.23.3)
Area ID: 0.0.0.0 (0.0.0.0) (Backbone)
Checksum: 0x4034 [correct]
Auth Type: Null (0)
Auth Data (none): 0000000000000000
LS Update Packet
Number of LSAs: 1
Summary-LSA (IP network)
.000 1110 0001 0000 = LS Age (seconds): 3600
0... .... .... .... = Do Not Age Flag: 0
Options: 0xa2 (DN, DC, E)
1... .... = DN: Set
.0.. .... = O: Not set
..1. .... = DC: Demand Circuits are supported
...0 .... = L: The packet does NOT contain LLS data block
.... 0... = NP: NSSA is NOT supported
.... .0.. = MC: NOT Multicast Capable
.... ..1. = E: External Routing Capability
.... ...0 = MT: NO Multi-Topology Routing
ドメイン タグ
ドメイン タグは OSPF タイプ 5 およびタイプ 7 LSA にのみ適用されます。 VPNv4 ルートが PE ルータで MP-BGP から OSPF に再配布されると、ドメイン タグは OSPF の外部ルート向けに設定されます。 タグは OSPF プロセスで domain-tag コマンドを使用して手動で設定するか、または 32 ビット値が自動的に生成されます。


ネットワーク トポロジに基づいて、PE2 は、VPNv4 ルートを OSPF に再配布するときに、タイプ 5 およびタイプ 7 LSA にドメイン タグを設定します。 DN ビットがすでに設定されているため、この LSA はルート計算に考慮されませんが、ドメイン タグも設定されており、VPN/VRF タグに一致するので LSA は無視されます。 したがって、ルートは OSPF に再配布されません。
次の例では、PE3 のローカル VRF ドメイン タグと同じ設定で、CE3 から受信した際に、LSA タイプ 5 が無視される例を示します。
*Jan 31 00:29:23.947: OSPF-2 EXTER: adv_rtr 10.10.57.5, age 3, seq 0x80000001,
metric 10, metric-type 2, fw-addr 0.0.0.0
*Jan 31 00:29:23.947: OSPF-2 EXTER: Tag equals to VPN Tag, ignoring the LSA
*Jan 31 00:29:23.947: OSPF-2 EXTER: Process partial nssa spf queue
PE3#show ip ospf database external 192.168.5.5
OSPF Router with ID (10.3.3.3) (Process ID 1)
OSPF Router with ID (10.10.68.6) (Process ID 2)
Type-5 AS External Link States
LS age: 38
Options: (No TOS-capability, DC)
LS Type: AS External Link
Link State ID: 192.168.5.5 (External Network Number )
Advertising Router: 10.10.57.5
LS Seq Number: 80000001
Checksum: 0x89A3
Length: 36
Network Mask: /32
Metric Type: 2 (Larger than any link state path)
MTID: 0
Metric: 10
Forward Address: 0.0.0.0
External Route Tag: 3489725928
確認
該当する LSA とドメイン タグに関して DN ビットが設定されているかどうかを検出するコマンドは、LSA データベースをチェックするために使用するものと同じです。
この出力は OSPF タイプ 3 およびタイプ 5 LSA の例を示し、VPNv4 ルートが PE2 で OSPF に再配布されるときの DN ビットとタグ セットを強調表示しています。

注: MPLS VPN OSPF PE-CE は問題に対処するためにループ防止機能を常に含みます。 古い Cisco IOS® では、当初の IETF ドラフトに従ったタイプ 3 LSA が LSA 内の DN ビットを使用し、タイプ 5 LSA がタグを使用します。 新しい RFC 4576 では、タイプ 3 とタイプ 5 の両方の LSA に対して DN ビットの使用が必須になっています。
これは、Cisco Bug ID CSCtw79182 で確定されました。
この障害の修正が含まれた Cisco IOS イメージを持つ PE ルータは、ループ防止機能として DN ビットとタグの両方を持つタイプ 5 外部 LSA を発生させます。 以前の Cisco IOS バージョンでは、外部ルートのこの目的のタグのみをアドバタイズしていました。
動作の変更理由は、タグは書き換えの可能性がある(VPN ドメイン ID の変更またはルートマップによる)のに対して、DN ビットはユーザ制御できないためです。 一部の特殊な状況の設計では、PE ルータが BGP ルートよりも OSPF ルートを優先させるために、お客様が外部 LSA のタグを上書きすることによって、ループ防止機能を故意に無効にしている場合があります。
新しいバージョンの Cisco IOS では、これはできません。 標準どおりの設定で PE-CE OSPF を使用するほとんどのお客様は影響を受けません。 タグを上書きするお客様では動作の変化が見られることがあります。
トラブルシューティング
現在のところ、この設定に関する特定のトラブルシューティング情報はありません。