IEEE 802.1Q トンネリングおよびレイヤ 2 プロトコル トンネリングの設定
Virtual Private Network(VPN; 仮想私設網)では、多くの場合にイーサネットベースの共有インフラストラクチャである企業規模の接続に、プライベート ネットワークと同じセキュリティ、プライオリティ、信頼性、管理の容易さが提供されます。トンネリングは、サービス プロバイダーのネットワークを越えて複数のカスタマーのトラフィックを運び、その他のカスタマーのトラフィックに影響を与えずに、それぞれのカスタマーの VLAN(仮想 LAN)およびレイヤ 2 プロトコルの設定を維持する必要があるサービス プロバイダー用に設計された機能です。Catalyst 3560 スイッチでは、IEEE 802.1Q トンネリングおよびレイヤ 2 プロトコル トンネリングがサポートされています。
(注) この章で使用するコマンドの構文および使用方法の詳細については、このリリースのコマンド リファレンスを参照してください。
この章で説明する内容は、次のとおりです。
• 「IEEE 802.1Q トンネリングの概要」
• 「IEEE 802.1Q トンネリングの設定」
• 「レイヤ 2 プロトコル トンネリングの概要」
• 「レイヤ 2 プロトコル トンネリングの設定」
• 「トンネリング ステータスのモニタおよびメンテナンス」
IEEE 802.1Q トンネリングの概要
サービス プロバイダーのビジネス カスタマーには、多くの場合、サポートする VLAN ID および VLAN の数に固有の要件があります。同一サービスプロバイダー ネットワークのさまざまなカスタマーが必要とする VLAN 範囲は重複し、インフラストラクチャを通るカスタマーのトラフィックは混在することがあります。それぞれのカスタマーに VLAN ID の固有の範囲を割り当てると、カスタマーの設定が制限され、IEEE 802.1Q 仕様の VLAN 制限(4096)を簡単に越えてしまうことがあります。
サービス プロバイダーは、IEEE 802.1Q トンネリング機能を使用すると、単一の VLAN を使用して、複数の VLAN を含むカスタマーをサポートできます。カスタマーの VLAN ID は、同一 VLAN にあるように見えても保護され、さまざまなカスタマーのトラフィックは、サービスプロバイダー ネットワーク内で区別されます。IEEE 802.1Q トンネリングを使用すると、VLAN 内の VLAN 階層を使用してタグ付きパケットにタグを再び付けることで、VLAN 容量が拡大します。IEEE 802.1Q トンネリングをサポートするように設定したポートは、 トンネル ポート と呼ばれます。トンネリングを設定する場合は、トンネリング専用の VLAN ID にトンネル ポートを割り当てます。それぞれのカスタマーには別個のサービスプロバイダー VLAN ID が必要ですが、その VLAN ID ではすべてのカスタマーの VLAN がサポートされます。
適切な VLAN ID で通常どおりにタグ付けされたカスタマーのトラフィックは、カスタマー デバイスの IEEE 802.1Q トランク ポートからサービスプロバイダーのエッジ スイッチのトンネル ポートに発信されます。カスタマー デバイスとエッジ スイッチ間のリンクは、片方が IEEE 802.1Q トランク ポートとして設定され、もう一方がトンネル ポートとして設定されているので非対称です。それぞれのカスタマーに固有のアクセス VLAN ID には、トンネル ポート インターフェイスを割り当てます。図16-1 を参照してください。
図16-1 サービスプロバイダー ネットワークの IEEE 802.1Q トンネル ポート
カスタマーのトランク ポートからサービスプロバイダーのエッジ スイッチのトンネル ポートに発信されるパケットには、通常、適切な VLAN ID とともに IEEE 802.1Q タグが付いています。タグはスイッチ内でそのまま残り、タグ付きパケットがトランク ポートからサービスプロバイダー ネットワークに発信されると、カスタマーに固有の VLAN ID を含む IEEE 802.1Q タグの別のレイヤ( メトロ タグ と呼ばれる)でカプセル化されます。カスタマーの元の IEEE 802.1Q タグは、カプセル化されたパケット内で保護されます。このため、サービスプロバイダー ネットワークに入るパケットには、カスタマーのアクセス VLAN ID を含む外部(メトロ)タグ、および着信トラフィックのものである内部 VLAN ID という、2 重のタグが付いています。
2 重タグ パケットがサービスプロバイダー コア スイッチの別のトランク ポートに入ると、スイッチがパケットを処理する間に外部タグが外されます。パケットが、そのコア スイッチの別のトランク ポートを出るとき、同じメトロ タグがパケットに再び追加されます。図16-2 は、2 重タグ パケットのタグ構造です。
図16-2 元の(通常)イーサネット パケット、IEEE 802.1Q イーサネット パケット、2 重タグ イーサネット パケットの形式
パケットがサービス プロバイダー出力スイッチのトランク ポートに入ると、スイッチがパケットを内部処理する間に外部タグは再び外されます。しかしパケットがエッジ スイッチのトンネル ポートからカスタマー ネットワークに送信されるとき、メトロ タグは追加されません。パケットは通常の IEEE 802.1Q タグ フレームとして送信され、カスタマー ネットワーク内で元の VLAN 番号は保護されます。
図16-1 では、カスタマー A に VLAN 30 が、カスタマー B に VLAN 40 が割り当てられています。エッジ スイッチのトンネル ポートに入る、IEEE 802.1Q タグが付いたパケットには、サービスプロバイダー ネットワークに入るとき、VLAN ID 30 または 40 を適切に含む外部タグ、および VLAN 100 などの元の VLAN 番号を含む内部タグが付いて 2 重タグになります。カスタマー A とカスタマー B の両方が、それぞれのネットワーク内で VLAN 100 を含んでいても、外部タグが異なるので、サービスプロバイダー ネットワーク内で区別されます。それぞれのカスタマーは、その他のカスタマーが使用する VLAN 番号スペース、およびサービスプロバイダー ネットワークが使用する VLAN 番号スペースから独立した、独自の VLAN 番号スペースを制御します。
発信トンネル ポートでは、カスタマーのネットワーク上の元の VLAN 番号が回復されます。トンネリングおよびタグ付けを複数のレベルにすることもできますが、このリリースのスイッチでは 1 レベルのみがサポートされます。
カスタマー ネットワークから発信されるトラフィックにタグ(ネイティブ VLAN フレーム)が付いていない場合、そのパケットのブリッジングまたはルーティングは通常パケットとして行われます。エッジ スイッチのトンネル ポートを通ってサービスプロバイダー ネットワークに入るすべてのパケットは、タグが付いていないか、IEEE 802.1Q ヘッダーですでにタグが付いているかに関係なく、タグなしパケットとして扱われます。パケットは、IEEE 802.1Q トランク ポートでサービスプロバイダー ネットワークを通じて送信される場合、メトロ タグ VLAN ID(トンネル ポートのアクセス VLAN に設定)でカプセル化されます。メトロ タグのプライオリティ フィールドは、トンネル ポートで設定されているインターフェイス Class of Service(CoS; サービス クラス)プライオリティに設定されます(設定されていない場合、デフォルトはゼロです)。
IEEE 802.1Q トンネリングの設定
ここでは、次の設定情報について説明します。
• 「IEEE 802.1Q トンネリングのデフォルト設定」
• 「IEEE 802.1Q トンネリング設定時の注意事項」
• 「IEEE 802.1Q トンネリングおよびその他の機能」
• 「IEEE 802.1Q トンネリング ポートの設定」
IEEE 802.1Q トンネリングのデフォルト設定
デフォルトの場合、デフォルト switchport モードが dynamic auto であるため、IEEE 802.1Q トンネルはディセーブルです。すべての IEEE 802.1Q トランク ポートにおける IEEE 802.1Q ネイティブ VLAN パケットのタグ付けもディセーブルです。
IEEE 802.1Q トンネリング設定時の注意事項
IEEE 802.1Q トンネリングを設定する場合は、カスタマー デバイスおよびエッジ スイッチの間で非対称リンクを常に使用する必要があります。カスタマー デバイスのポートを IEEE 802.1Q トランク ポートに、エッジ スイッチのポートをトンネル ポートとして設定してください。
トンネリングに使用する VLAN のみにトンネル ポートを割り当ててください。
ネイティブ VLAN および Maximum Transmission Unit(MTU; 最大伝送ユニット)の設定要件については、次のセクションで説明します。
ネイティブ VLAN
エッジ スイッチで IEEE 802.1Q トンネリングを設定する場合は、サービスプロバイダー ネットワークにパケットを送信するために、IEEE 802.1Q トランク ポートを使用する必要があります。しかしサービスプロバイダー ネットワークのコアを通過するパケットは、IEEE 802.1Q トランク、ISL(スイッチ間リンク)トランク、非トランキング リンクのいずれかで送信できます。コア スイッチで IEEE 802.1Q トランクを使用する場合、IEEE 802.1Q トランクのネイティブ VLAN を、同一スイッチの非トランキング(トンネリング)ポートのネイティブ VLAN と一致させることはできません。ネイティブ VLAN のトラフィックに、IEEE 802.1Q 送信トランク ポートでタグが付かないためです。
図16-3 を参照してください。VLAN 40 は、サービスプロバイダー ネットワークの入力エッジ スイッチ(スイッチ B)において、カスタマー X からの IEEE 802.1Q トランク ポートのネイティブ VLAN として設定されています。カスタマー X のスイッチ A は、VLAN 30 のタグ付きパケットを、アクセス VLAN 40 に属す、サービスプロバイダー ネットワークのスイッチ B の入力トンネル ポートに送信します。トンネル ポートのアクセス VLAN(VLAN 40)は、エッジ スイッチのトランク ポートのネイティブ VLAN(VLAN 40)と同じなので、トンネル ポートから受信したタグ付きパケットにメトロ タグは追加されません。パケットには VLAN 30 タグのみが付いて、サービスプロバイダー ネットワークで出力エッジ スイッチ(スイッチ C)のトランク ポートに送信され、出力スイッチ トンネルによってカスタマー Y に間違えて送信されます。
この問題の解決方法は次のとおりです。
• サービスプロバイダー ネットワークのコア スイッチ間で ISL トランクを使用します。エッジ スイッチに接続されているカスタマー インターフェイスは IEEE 802.1Q トランクとしますが、コア レイヤのスイッチの接続には ISL トランクの使用を推奨します。
• vlan dot1q tag native グローバル コンフィギュレーション コマンドを使用し、ネイティブ VLAN を含む、IEEE 802.1Q トランクから発信されるすべてのパケットがタグ付けされるようにエッジ スイッチを設定します。すべての IEEE 802.1Q トランクでネイティブ VLAN パケットにタグを付けるようにスイッチを設定した場合、スイッチはタグなしパケットを受信しますが、タグ付きパケットのみを送信します。
• エッジ スイッチのトランク ポートのネイティブ VLAN ID が、カスタマー VLAN 範囲内でないことを確認します。たとえばトランク ポートが VLAN100~200 のトラフィックを運ぶ場合は、この範囲以外の番号をネイティブ VLAN に割り当てます。
図16-3 IEEE 802.1Q トンネリングおよびネイティブ VLAN に潜在する問題
システム MTU
スイッチのトラフィックのデフォルト システム MTU は 1500 バイトです。 system mtu グローバル コンフィギュレーション コマンドを使用すると、1500 バイトより大きいフレームをサポートするようにファスト イーサネット ポートを設定できます。 system mtu jumbo グローバル コンフィギュレーション コマンドを使用すると、1500 バイトより大きいフレームをサポートするようにギガビット イーサネット ポートを設定できます。IEEE 802.1Q トンネリング機能では、メトロ タグが追加されると、フレーム サイズが 4 バイト増加するので、スイッチ システム MTU サイズを最低 1504 バイトに増加して最大フレームを処理できるように、サービスプロバイダー ネットワークのすべてのスイッチを設定する必要があります。ギガビット イーサネット インターフェイスの最大許容システム MTU は 9000 バイトです。ファスト イーサネット インターフェイスの最大システム MTU は 1546 バイトです。
IEEE 802.1Q トンネリングおよびその他の機能
IEEE 802.1Q トンネリングはレイヤ 2 パケット スイッチングで適切に動作しますが、一部のレイヤ 2 機能およびレイヤ 3 スイッチングの間には非互換性があります。
• トンネル ポートはルーテッド ポートにできません。
• IEEE 802.1Q ポートを含む VLAN では IP ルーティングがサポートされません。トンネル ポートから受信したパケットは、レイヤ 2 情報のみに基づいて転送されます。トンネル ポートを含む Switch Virtual Interface(SVI; スイッチ仮想インターフェイス)でルーティングがイネーブルである場合、トンネル ポートから受信したタグなし IP パケットは、スイッチに認識されてルーティングされます。カスタマーは、ネイティブ VLAN でインターネットにアクセスできます。このアクセスが必要ない場合は、トンネル ポートを含む VLAN で SVI を設定しないでください。
• フォールバック ブリッジングは、トンネル ポートでサポートされません。トンネル ポートから受信したすべての IEEE 802.1Q タグ付きパケットは IP 以外のパケットとして扱われるので、トンネル ポートが設定されている VLAN でフォールバック ブリッジングがイネーブルである場合、IP パケットは VLAN を越えて不適切にブリッジングされます。このため、トンネル ポートを含む VLAN ではフォールバック ブリッジングをイネーブルに しないでください 。
• トンネル ポートでは IP Access Control List(ACL; アクセス制御リスト)がサポートされません。
• レイヤ 3 情報に関連するレイヤ 3 Quality of Service(QoS; サービス品質)ACL およびその他の QoS 機能は、トンネル ポートでサポートされません。MAC ベース QoS はトンネル ポートでサポートされます。
• IEEE 802.1Q 設定が EtherChannel ポート グループ内で矛盾しない場合、EtherChannel ポート グループにはトンネル ポートとの互換性があります。
• Port Aggregation Protocol(PAgP; ポート集約プロトコル)、Link Aggregation Control Protocol(LACP)、UniDirectional Link Detection(UDLD; 単一方向リンク検出)は、IEEE 802.1Q トンネリング ポートでサポートされます。
• トンネル ポートとトランク ポートで非対称リンクを手動で設定する必要があるので、Dynamic Trunking Protocol(DTP; ダイナミック トランキング プロトコル)には IEEE 802.1Q トンネリングとの互換性がありません。
• VLAN Trunking Protocol(VTP)は、非対称リンクで接続されているデバイス間、またはトンネルを通して通信を行うデバイス間で動作しません。
• IEEE 802.1Q トンネル ポートでは、ループバック検出がサポートされます。
• IEEE 802.1Q トンネル ポートとしてポートを設定すると、スパニングツリー Bridge Protocol Data Unit(BPDU; ブリッジ プロトコル データ ユニット)フィルタリングがインターフェイスで自動的にイネーブルになります。Cisco Discovery Protocol(CDP)は、インターフェイスで自動的にディセーブルになります。
IEEE 802.1Q トンネリング ポートの設定
IEEE 802.1Q トンネル ポートとしてポート設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
トンネル ポートとして設定するインターフェイスのインターフェイス コンフィギュレーション モードを開始します。これは、カスタマー スイッチに接続するサービスプロバイダー ネットワークのエッジ ポートである必要があります。有効なインターフェイスには、物理インターフェイスおよびポートチャネル論理インターフェイス(ポート チャネル 1 ~ 48)が含まれます。 |
ステップ 3 |
switchport access vlan vlan-id |
デフォルト VLAN を指定します。これは、インターフェイスがトランキングを停止した場合に使用されます。この VLAN ID は特定カスタマーに固有です。 |
ステップ 4 |
switchport mode dot1q-tunnel |
IEEE 802.1Q トンネル ポートとしてインターフェイスを設定します。 |
ステップ 5 |
exit |
グローバル コンフィギュレーション モードに戻ります。 |
ステップ 6 |
vlan dot1q tag native |
(任意)すべての IEEE 802.1Q トランク ポートでネイティブ VLAN パケットのタグ付けをイネーブルにするようにスイッチを設定します。これを設定せず、カスタマー VLAN ID がネイティブ VLAN と同じである場合、トランク ポートはメトロ タグを適用せず、パケットは誤った宛先に送信される可能性があります。 |
ステップ 7 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 8 |
show running-config show dot1q-tunnel |
IEEE 802.1Q トンネリング用に設定したポートを表示します。 トンネリング モードになっているポートを表示します。 |
ステップ 9 |
show vlan dot1q tag native |
IEEE 802.1Q ネイティブ VLAN タグ付けステータスを表示します。 |
ステップ 10 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
dynamic desirable のデフォルト状態にポートを戻すには、 no switchport mode dot1q-tunnel インターフェイス コンフィギュレーション コマンドを使用します。ネイティブ VLAN パケットのタグ付けをディセーブルにするには、 no vlan dot1q tag native グローバル コンフィギュレーション コマンドを使用します。
以下は、トンネル ポートとしてインターフェイスを設定してネイティブ VLAN パケットのタグ付けをイネーブルにし、設定を確認する方法の例です。この設定では、インターフェイス Gigabit Ethernet 7 に接続するカスタマーの VLAN ID は、VLAN 22 になります。
Switch(config)# interface gigabitethernet0/7
Switch(config-if)# switchport access vlan 22
% Access VLAN does not exist. Creating vlan 22
Switch(config-if)# switchport mode dot1q-tunnel
Switch(config)# vlan dot1q tag native
Switch# show dot1q-tunnel interface gigabitethernet0/7
Switch# show vlan dot1q tag native
dot1q native vlan tagging is enabled
レイヤ 2 プロトコル トンネリングの概要
サービスプロバイダー ネットワークを越えて接続されている、さまざまなサイトに散在するカスタマーは、さまざまなレイヤ 2 プロトコルを使用してトポロジーをスケールし、すべてのリモート サイトおよびローカル サイトを含める必要があります。STP を適切に動作させる必要があり、サービスプロバイダー ネットワークを越えたローカル サイトおよびすべてのリモート サイトを含む、適切なスパニング ツリーをすべての VLAN で構築する必要があります。CDP では、隣接する Cisco デバイスをローカル サイトおよびリモート サイトから検出する必要があります。VTP では、カスタマー ネットワークのすべてのサイトで矛盾しないVLAN設定を提供する必要があります。
プロトコル トンネリングがイネーブルである場合、サービスプロバイダー ネットワークの着信側のエッジ スイッチでは、特殊 MAC アドレスでレイヤ 2 プロトコル パケットがカプセル化され、サービスプロバイダー ネットワークを越えて送信されます。ネットワークのコア スイッチでは、このパケットが処理されずに通常のパケットとして転送されます。CDP、STP、VTP のレイヤ 2 Protocol Data Unit(PDU; プロトコル データ ユニット)は、サービスプロバイダー ネットワークをまたがり、サービスプロバイダー ネットワークの発信側のカスタマー スイッチに配信されます。同一パケットは同じ VLAN のすべてのカスタマー ポートで受信され、次のような結果になります。
• それぞれのカスタマー サイトのユーザは STP を適切に実行でき、すべての VLAN では、ローカル サイトのみではなく、すべてのサイトからのパラメータに基づいて、正しいスパニング ツリーが構築されます。
• CDP では、サービスプロバイダー ネットワークによって接続されているその他の Cisco デバイスに関する情報が検出されて表示されます。
• VTP ではカスタマー ネットワーク全体で矛盾しない VLAN 設定が提供され、サービス プロバイダーを通してすべてのスイッチに伝播されます。
(注) サードパーティ ベンダーとのインターオペラビリティを提供するには、レイヤ 2 プロトコルトンネル バイパス機能を使用します。バイパス モードでは、プロトコル トンネリングの制御方法が異なるベンダー スイッチに制御 PDU が透過的に転送されます。バイパス モードを実装するには、出力トランク ポートでレイヤ 2 プロトコル トンネリングをイネーブルにします。レイヤ 2 プロトコル トンネリングがトランク ポートでイネーブルの場合、カプセル化された MAC アドレスが削除されて、プロトコル パケットに通常の MAC アドレスを有するようになります。
レイヤ 2 プロトコル トンネリングは個別に使用できます。レイヤ 2 プロトコル トンネリングでは、IEEE 802.1Q トンネリングを向上させることができます。IEEE 802.1Q トンネリング ポートでプロトコル トンネリングをイネーブルにしていない場合、サービスプロバイダー ネットワークの受信側のリモート スイッチでは PDU が受信させず、STP、CDP、VTP を適切に実行できません。プロトコル トンネリングがイネーブル である 場合、それぞれのカスタマー ネットワークのレイヤ 2 プロトコルは、サービスプロバイダー ネットワーク内で動作しているものから完全に区別されます。IEEE 802.1Q トンネリングでサービスプロバイダー ネットワークを通してトラフィックを送信する、さまざまなサイトのカスタマー スイッチでは、カスタマー VLAN が完全に認識されます。IEEE 802.1Q トンネリングを使用しない場合は、アクセス ポートでカスタマー スイッチに接続し、サービスプロバイダーのアクセス ポートでトンネリングをイネーブルにすることで、レイヤ 2 プロトコル トンネリングをイネーブルにできます。
たとえば図16-4の場合、カスタマー X には同一 VLAN に 4 つのスイッチがあり、サービスプロバイダー ネットワークで接続されています。ネットワークで PDU がトンネルされない場合、ネットワークの向こう側のスイッチでは、STP、CDP、VTP を適切に実行できません。たとえば、カスタマー X のサイト 1 内のスイッチ上の VLAN に対する STP は、サイト 2 のカスタマー X のスイッチに基づくコンバージェンス パラメータを考慮せずに、サイト 1 のスイッチ上にスパニング ツリーを構築します。そのトポロジーを図16-5に示します。
図16-4 レイヤ 2 プロトコル トンネリング
図16-5 適切なコンバージェンスを含まないレイヤ 2 ネットワーク トポロジー
サービスプロバイダー ネットワークでは、レイヤ 2 プロトコル トンネリングを使用し、ポイントツーポイント ネットワーク トポロジーをエミュレートして、EtherChannel の作成を向上させることができます。サービスプロバイダー スイッチでプロトコル トンネリング(PAgP または LACP)をイネーブルにすると、リモート カスタマー スイッチでは PDU が受信され、EtherChannel の自動作成をネゴシエーションできるようになります。
たとえば図16-6 の場合、カスタマー A には同一 VLAN に 2 つのスイッチがあり、サービスプロバイダー ネットワークで接続されています。ネットワークで PDU がトンネリングされると、ネットワークの向こう側のスイッチでは、専用回線を必要とせずに、EtherChannel の自動作成をネゴシエーションできます。手順については、「EtherChannel のレイヤ 2 トンネリングの設定」を参照してください。
図16-6 EtherChannel のレイヤ 2 プロトコル トンネリング
レイヤ 2 プロトコル トンネリングの設定
サービスプロバイダー ネットワークのエッジ スイッチで、カスタマーに接続されているポートにおいて、レイヤ 2 プロトコル トンネリングをプロトコルごとにイネーブルにできます。カスタマー スイッチに接続されているサービスプロバイダー エッジ スイッチでは、トンネリング処理が実行されます。エッジスイッチ トンネル ポートは、カスタマーの IEEE 802.1Q トランク ポートに接続します。エッジスイッチ アクセス ポートは、カスタマー アクセス ポートに接続します。カスタマー スイッチに接続されているエッジ スイッチでは、トンネリング処理が実行されます。
アクセス ポートまたはトンネル ポートのいずれかとして設定されているポートでは、レイヤ 2 プロトコル トンネリングをイネーブルにできます。 switchport モード が dynamic auto(デフォルト モード) または dynamic desirable に設定されているポートでは、レイヤ 2 プロトコル トンネリングをイネーブルにすることができません。
スイッチでは、CDP、STP、VTP のレイヤ 2 プロトコル トンネリングがサポートされます。ポイントツーポイント ネットワーク トポロジーのエミュレートの場合は、PAgP、LACP、UDLD のプロトコルもサポートされます。
注意 PAgP、LACP、UDLD プロトコル トンネリングでは、ポイントツーポイント トポロジーのエミュレートのみが目的です。トンネリングされるパケットが多くのポートに送信されるエラー設定では、ネットワーク障害となることがあります。
レイヤ 2 プロトコルがイネーブルになっているポートでサービスプロバイダーの着信エッジ スイッチに入ったレイヤ 2 PDU が、トランク ポートからサービスプロバイダー ネットワークに出る場合、スイッチでは、カスタマー PDU 宛先 MAC アドレスが、周知のシスコ固有のマルチキャスト アドレス(01-00-0c-cd-cd-d0)で上書きされます。IEEE 802.1Q トンネリングがイネーブルである場合、パケットにはタグが 2 重に付きます。外部タグはカスタマーのメトロ タグであり、内部タグはカスタマーの VLAN タグです。コア スイッチでは内部タグが無視され、同じメトロ VLAN のすべてのトランク ポートにパケットが転送されます。発信側のエッジ スイッチでは、適切なレイヤ 2 プロトコル情報および MAC アドレス情報が復元され、同じメトロ VLAN のすべてのトンネル ポートかアクセス ポートにパケットが転送されます。このため、レイヤ 2 PDU はそのまま残り、サービスプロバイダー インフラストラクチャを越えてカスタマー ネットワークの反対側に配信されます。
図16-4 を参照してください。カスタマー X およびカスタマー Y が、それぞれアクセス VLAN 30 および 40 になっています。非対称リンクにより、サイト 1 のカスタマーは、サービスプロバイダー ネットワークのエッジ スイッチに接続されています。サイト 1 のカスタマー Y からスイッチ 2 に発信されたレイヤ 2 PDU(たとえば BPDU)は、周知の MAC アドレスが宛先 MAC アドレスになっている 2 重タグ パケットとしてインフラストラクチャに転送されます。この 2 重タグ パケットには、40 というメトロ VLAN タグ、および VLAN 100 などの内部 VLAN タグが付いています。2 重タグ パケットがスイッチ D に入ると、外部 VLAN タグ 40 が外されて周知の MAC アドレスがそれぞれのレイヤ 2 プロトコル MAC アドレスで置き換わり、パケットは、VLAN 100 の1 重タグ フレームとしてサイト 2 のカスタマー Y に送信されます。
カスタマー スイッチのアクセス ポートまたはトランク ポートに接続されているエッジ スイッチのアクセス ポートでも、レイヤ 2 プロトコル トンネリングをイネーブルにできます。この場合は、カプセル化プロセスとカプセル開放プロセスが、前の段落で説明したものと同じですが、パケットはサービスプロバイダー ネットワークで 2 重タグになりません。カスタマー固有のアクセス VLAN タグの 1 重タグになります。
ここでは、次の設定情報について説明します。
• 「レイヤ 2 プロトコル トンネリングのデフォルト設定」
• 「レイヤ 2 プロトコル トンネリング設定時の注意事項」
• 「レイヤ 2 プロトコル トンネリングの設定」
• 「EtherChannel のレイヤ 2 トンネリングの設定」
レイヤ 2 プロトコル トンネリングのデフォルト設定
表16-1 に、レイヤ 2 プロトコル トンネリングのデフォルト設定を示します。
表16-1 レイヤ 2 イーサネット インターフェイス VLAN のデフォルト設定
|
|
レイヤ 2 プロトコル トンネリング |
ディセーブル |
シャットダウン スレッシュホールド |
未設定 |
廃棄スレッシュホールド |
未設定 |
CoS 値 |
データ パケットのインターフェイスで CoS 値が設定されている場合は、その値がレイヤ 2 PDU でデフォルトで使用されます。設定されていない場合、デフォルトは 5 です。 |
レイヤ 2 プロトコル トンネリング設定時の注意事項
以下は、レイヤ 2 プロトコル トンネリングの設定時の注意事項および動作特性です。
• スイッチでは、CDP、STP(Multiple STP [MSTP]を含む)、VTP のトンネリングがサポートされます。プロトコル トンネリングはデフォルトでディセーブルになっていますが、IEEE 802.1Q トンネル ポート、またはアクセス ポートでプロトコルごとにイネーブルにできます。
• スイッチでは、 switchport モード が dynamic auto または dynamic desirable に設定されているポートにおいて、レイヤ 2 プロトコル トンネリングがサポートされません。
• DTP はレイヤ 2 プロトコル トンネリングと互換性がありません。
• サービスプロバイダー ネットワークの発信側のエッジ スイッチでは、適切なレイヤ 2 プロトコル情報および MAC アドレス情報が復元され、同じメトロ VLAN のすべてのトンネル ポートおよびアクセス ポートにパケットが転送されます。
• サードパーティ ベンダー スイッチとのインターオペラビリティのため、スイッチではレイヤ 2 プロトコルトンネル バイパス機能がサポートされます。バイパス モードでは、プロトコル トンネリングの制御方法が異なるベンダー スイッチに制御 PDU が透過的に転送されます。スイッチの入力ポートでレイヤ 2 プロトコル トンネルがイネーブルである場合は、出力トランク ポートにより、トンネリングされたパケットが特殊なカプセル化で転送されます。出力トランク ポートでもレイヤ 2 プロトコル トンネリングをイネーブルにすると、この動作がバイパスされて、スイッチによって、処理や修正が行われずに制御 PDU が転送されます。
• スイッチでは、ポイントツーポイント ネットワーク トポロジーのエミュレートの場合、PAgP、LACP、UDLD のトンネリングがサポートされます。プロトコル トンネリングはデフォルトでディセーブルになっていますが、IEEE 802.1Q トンネル ポート、またはアクセス ポートでプロトコルごとにイネーブルにできます。
• PAgP トンネリングまたは LACP トンネリングの場合は、リンク障害検出を高速にするため、インターフェイスで UDLD もイネーブルにするよう推奨します。
• PAgP パケット、LACP パケット、UDLD パケットのうちいずれかのレイヤ 2 プロトコル トンネリングでは、ループバック検出がサポートされません。
• IEEE 802.1Q 設定が EtherChannel ポート グループ内で矛盾しない場合、EtherChannel ポート グループにはトンネル ポートとの互換性があります。
• 独自の宛先 MAC アドレスでカプセル化された PDU が、レイヤ 2 トンネリングがイネーブルになっているトンネル ポートまたはアクセス ポートから受信される場合、トンネル ポートは、ループを防止するためにシャットダウンされます。このポートは、プロトコル用に設定されたシャットダウン スレッシュホールドに達した場合にもシャットダウンされます。 shutdown コマンドに続けて no shutdown コマンドを入力すると、ポートを再び手動でイネーブルにできます。errdisable recovery がイネーブルである場合は、指定された間隔で動作が再試行されます。
• カプセル化が解除された PDU のみがカスタマー ネットワークに転送されます。サービスプロバイダー ネットワーク上で動作しているスパニングツリー インスタンスでは、BPDU がトンネル ポートに転送されません。CDP パケットはトンネル ポートから転送されません。
• インターフェイスでプロトコル トンネリングがイネーブルである場合は、カスタマー ネットワークによって生成された PDU 用に、プロトコルごとのシャットダウン スレッシュホールドやポートごとのシャットダウン スレッシュホールドを設定できます。制限を越えると、ポートはシャットダウンされます。QoS ACL およびポリシー マップをトンネル ポートで使用すると、BPDU レートを制限することもできます。
• インターフェイスでプロトコル トンネリングがイネーブルである場合は、カスタマー ネットワークによって生成された PDU 用に、プロトコルごとの廃棄スレッシュホールドやポートごとの廃棄スレッシュホールドを設定できます。制限を越えると、ポートが PDU を受信するレートが廃棄スレッシュホールド未満になるまで、ポートで PDU が廃棄されます。
• トンネリングされた PDU(とくに STP BPDU)は、カスタマーの仮想ネットワークが正しく動作するためにすべてのリモート サイトに配信される必要があるので、同じトンネル ポートから受信されるデータ パケットよりも PDU のプライオリティをサービスプロバイダー ネットワーク内で高くできます。デフォルトの場合、PDU ではデータ パケットと同じ CoS 値が使用されます。
レイヤ 2 プロトコル トンネリングの設定
レイヤ 2 プロトコル トンネリング用にポートを設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
インターフェイス コンフィギュレーション モードを開始し、トンネル ポートとして設定するインターフェイスを入力します。これは、カスタマー スイッチに接続するサービスプロバイダー ネットワークのエッジ ポートである必要があります。有効なインターフェイスは、物理インターフェイスおよびポートチャネル論理インターフェイス(ポート チャネル 1 ~ 48)です。 |
ステップ 3 |
switchport mode access または switchport mode dot1q-tunnel |
アクセス ポートまたは IEEE 802.1Q トンネル ポートとしてインターフェイスを設定します。 |
ステップ 4 |
l2protocol-tunnel [ cdp | stp | vtp ] |
目的のプロトコルのプロトコル トンネリングをイネーブルにします。キーワードを入力しない場合、トンネリングは、3 つすべてのレイヤ 2 プロトコルでイネーブルになります。 |
ステップ 5 |
l2protocol-tunnel shutdown-threshold [ cdp | stp | vtp ] value |
(任意)カプセル化用に 1 秒間に受信するパケット数のスレッシュホールドを設定します。設定したスレッシュホールドを超えると、インターフェイスはディセーブルになります。プロトコル オプションを指定しない場合、スレッシュホールドは、それぞれのトンネリングされたレイヤ 2 プロトコル タイプに適用されます。指定できる範囲は 1 ~ 4096 です。デフォルトでは、スレッシュホールドは設定されません。
(注) このインターフェイスで廃棄スレッシュホールドも設定する場合、シャットダウン スレッシュホールドの値は、廃棄スレッシュホールドの値以上とする必要があります。
|
ステップ 6 |
l2protocol-tunnel drop-threshold [ cdp | stp | vtp ] value |
(任意)カプセル化用に 1 秒間に受信するパケット数のスレッシュホールドを設定します。設定したスレッシュホールドを超えると、インターフェイスによってパケットが廃棄されます。プロトコル オプションを指定しない場合、スレッシュホールドは、それぞれのトンネリングされたレイヤ 2 プロトコル タイプに適用されます。指定できる範囲は 1 ~ 4096 です。デフォルトでは、スレッシュホールドは設定されません。 このインターフェイスでシャットダウン スレッシュホールドも設定する場合、廃棄スレッシュホールドの値は、シャットダウン スレッシュホールドの値以下である必要があります。 |
ステップ 7 |
exit |
グローバル コンフィギュレーション モードに戻ります。 |
ステップ 8 |
errdisable recovery cause l2ptguard |
(任意)インターフェイスを再びイネーブルにして再試行できるようにするため、レイヤ 2 最大レート エラーからの回復メカニズムを設定します。errdisable recovery はデフォルトでディセーブルになっています。イネーブルにした場合、デフォルトの間隔は 300 秒です。 |
ステップ 9 |
l2protocol-tunnel cos value |
(任意)トンネリングされたすべてのレイヤ 2 PDU の CoS 値を設定します。範囲は 0 ~ 7 です。デフォルトは、インターフェイスのデフォルト CoS 値です。設定されていない場合、デフォルトは 5 です。 |
ステップ 10 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 11 |
show l2protocol |
設定されているプロトコル、スレッシュホールド、カウンタを含めた、スイッチのレイヤ 2 トンネル ポートを表示します。 |
ステップ 12 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
いずれかのレイヤ 2 プロトコルまたは 3 つすべてのレイヤ 2 プロトコルのプロトコル トンネリングをディセーブルにするには、 no l2protocol-tunnel [ cdp | stp | vtp ] インターフェイス コンフィギュレーション コマンドを使用します。シャットダウン スレッシュホールドおよび廃棄スレッシュホールドをデフォルト設定に戻すには、 no l2protocol-tunnel shutdown-threshold [ cdp | stp | vtp ] コマンドおよび no l2protocol-tunnel drop-threshold [ cdp | stp | vtp ] コマンドを使用します。
以下は、CDP、STP、VTP のレイヤ 2 プロトコル トンネリングを設定し、設定を確認する方法の例です。
Switch(config)# interface fastethernet0/11
Switch(config-if)# l2protocol-tunnel cdp
Switch(config-if)# l2protocol-tunnel stp
Switch(config-if)# l2protocol-tunnel vtp
Switch(config-if)# l2protocol-tunnel shutdown-threshold 1500
Switch(config-if)# l2protocol-tunnel drop-threshold 1000
Switch(config)# l2protocol-tunnel cos 7
COS for Encapsulated Packets: 7
Port Protocol Shutdown Drop Encapsulation Decapsulation Drop
Threshold Threshold Counter Counter Counter
------- -------- --------- --------- ------------- ------------- -------------
Fa 0/11 cdp 1500 1000 2288 2282 0
EtherChannel のレイヤ 2 トンネリングの設定
レイヤ 2 ポイントツーポイント トンネリングを設定して EtherChannel の自動作成を容易にするには、サービスプロバイダー エッジ スイッチおよびカスタマー スイッチの両方を設定する必要があります。
サービスプロバイダー エッジ スイッチの設定
EtherChannel のレイヤ 2 プロトコル トンネリング用にサービスプロバイダー エッジ スイッチを設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
インターフェイス コンフィギュレーション モードを開始し、トンネル ポートとして設定するインターフェイスを入力します。これは、カスタマー スイッチに接続するサービスプロバイダー ネットワークのエッジ ポートである必要があります。有効なインターフェイスは物理インターフェイスです。 |
ステップ 3 |
switchport mode dot1q-tunnel |
IEEE 802.1Q トンネル ポートとしてインターフェイスを設定します。 |
ステップ 4 |
l2protocol-tunnel point-to-point [ pagp | lacp | udld ] |
(任意)目的のプロトコルのポイントツーポイント プロトコル トンネリングをイネーブルにします。キーワードを入力しない場合、トンネリングは、3 つすべてのプロトコルでイネーブルになります。
注意 ネットワーク障害を避けるため、ネットワークがポイントツーポイント トポロジーになっていることを確認してから、PAgP パケット、LACP パケット、UDLD パケットのうちいずれかのトンネリングをイネーブルにしてください。
|
ステップ 5 |
l2protocol-tunnel shutdown-threshold [ point-to-point [ pagp | lacp | udld ]] value |
(任意)カプセル化用に 1 秒間に受信するパケット数のスレッシュホールドを設定します。設定したスレッシュホールドを超えると、インターフェイスはディセーブルになります。プロトコル オプションを指定しない場合、スレッシュホールドは、それぞれのトンネリングされたレイヤ 2 プロトコル タイプに適用されます。指定できる範囲は 1 ~ 4096 です。デフォルトでは、スレッシュホールドは設定されません。
(注) このインターフェイスで廃棄スレッシュホールドも設定する場合、シャットダウン スレッシュホールドの値は、廃棄スレッシュホールドの値以上とする必要があります。
|
ステップ 6 |
l2protocol-tunnel drop-threshold [ point-to-point [ pagp | lacp | udld ]] value |
(任意)カプセル化用に 1 秒間に受信するパケット数のスレッシュホールドを設定します。設定したスレッシュホールドを超えると、インターフェイスによってパケットが廃棄されます。プロトコル オプションを指定しない場合、スレッシュホールドは、それぞれのトンネリングされたレイヤ 2 プロトコル タイプに適用されます。指定できる範囲は 1 ~ 4096 です。デフォルトでは、スレッシュホールドは設定されません。
(注) このインターフェイスでシャットダウン スレッシュホールドも設定する場合、廃棄スレッシュホールドの値は、シャットダウン スレッシュホールドの値以下である必要があります。
|
ステップ 7 |
no cdp enable |
インターフェイス上で CDP をディセーブルにします。 |
ステップ 8 |
spanning-tree bpdufilter enable |
インターフェイス上で BPDU フィルタリングをイネーブルにします。 |
ステップ 9 |
exit |
グローバル コンフィギュレーション モードに戻ります。 |
ステップ 10 |
errdisable recovery cause l2ptguard |
(任意)インターフェイスを再びイネーブルにして再試行できるようにするため、レイヤ 2 最大レート エラーからの回復メカニズムを設定します。errdisable recovery はデフォルトでディセーブルになっています。イネーブルにした場合、デフォルトの間隔は 300 秒です。 |
ステップ 11 |
l2protocol-tunnel cos value |
(任意)トンネリングされたすべてのレイヤ 2 PDU の CoS 値を設定します。範囲は 0 ~ 7 です。デフォルトは、インターフェイスのデフォルト CoS 値です。設定されていない場合、デフォルトは 5 です。 |
ステップ 12 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 13 |
show l2protocol |
設定されているプロトコル、スレッシュホールド、カウンタを含めた、スイッチのレイヤ 2 トンネル ポートを表示します。 |
ステップ 14 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
いずれかのレイヤ 2 プロトコルまたは 3 つすべてのレイヤ 2 プロトコルのポイントツーポイント プロトコル トンネリングをディセーブルにするには、 no l2protocol-tunnel [ point-to-point [ pagp | lacp | udld ]] インターフェイス コンフィギュレーション コマンドを使用します。シャットダウン スレッシュホールドおよび廃棄スレッシュホールドをデフォルト設定に戻すには、 no l2protocol-tunnel shutdown-threshold [ point-to-point [ pagp | lacp | udld ]] コマンドおよび no l2protocol-tunnel drop-threshold [ [ point-to-point [ pagp | lacp | udld ]] コマンドを使用します。
カスタマー スイッチの設定
サービスプロバイダー エッジ スイッチを設定したら、イネーブル EXEC モードで次の手順を実行し、EtherChannel のレイヤ 2 プロトコル トンネリング用にカスタマー スイッチを設定します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
インターフェイス コンフィギュレーション モードを開始します。これは、カスタマー スイッチ ポートにする必要があります。 |
ステップ 3 |
switchport trunk encapsulation dot1q |
トランキング カプセル化形式を IEEE 802.1Q に設定します。 |
ステップ 4 |
switchport mode trunk |
インターフェイス上でトランキングをイネーブルにします。 |
ステップ 5 |
udld enable |
インターフェイスの 通常 モードで UDLD をイネーブルにします。 |
ステップ 6 |
channel-group channel-group-number mode desirable |
チャネル グループにインターフェイスを割り当て、PAgP モードに desirable を指定します。EtherChannel の設定の詳細については、 第33章「EtherChannels およびリンクステート追跡の設定」 を参照してください。 |
ステップ 7 |
exit |
グローバル コンフィギュレーション モードに戻ります。 |
ステップ 8 |
interface port-channe l port-channel number |
ポートチャネル インターフェイス モードに入ります。 |
ステップ 9 |
shutdown |
インターフェイスをシャットダウンします。 |
ステップ 10 |
no shutdown |
インターフェイスをイネーブルにします。 |
ステップ 11 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 12 |
show l2protocol |
設定されているプロトコル、スレッシュホールド、カウンタを含めた、スイッチのレイヤ 2 トンネル ポートを表示します。 |
ステップ 13 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
インターフェイスをデフォルト設定に戻すには、 no switchport mode trunk 、 no udld enable 、 no channel group channel-group-number mode desirable インターフェイス コンフィギュレーション コマンドを使用します。
EtherChannel の場合は、サービスプロバイダー エッジ スイッチおよびカスタマー スイッチをレイヤ 2 プロトコル トンネリング用に設定する必要があります(図16-6 を参照)。
以下は、サービス プロバイダーのエッジ スイッチ 1 およびエッジ スイッチ 2 を設定する方法の例です。VLAN 17、18、19、20 はアクセス VLAN、ファスト イーサネット インターフェイス 1 および 2 は PAgP および UDLD がイネーブルになっているポイントツーポイント トンネル ポート、廃棄スレッシュホールドは 1000、ファスト イーサネット インターフェイス 3 はトランク ポートです。
サービスプロバイダー エッジ スイッチ 1 の設定は次のとおりです。
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport access vlan 17
Switch(config-if)# switchport mode dot1q-tunnel
Switch(config-if)# l2protocol-tunnel point-to-point pagp
Switch(config-if)# l2protocol-tunnel point-to-point udld
Switch(config-if)# l2protocol-tunnel drop-threshold point-to-point pagp 1000
Switch(config)# interface fastethernet0/2
Switch(config-if)# switchport access vlan 18
Switch(config-if)# switchport mode dot1q-tunnel
Switch(config-if)# l2protocol-tunnel point-to-point pagp
Switch(config-if)# l2protocol-tunnel point-to-point udld
Switch(config-if)# l2protocol-tunnel drop-threshold point-to-point pagp 1000
Switch(config)# interface fastethernet0/3
Switch(config-if)# switchport trunk encapsulation isl
Switch(config-if)# switchport mode trunk
サービスプロバイダー エッジ スイッチ 2 の設定は次のとおりです。
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport access vlan 19
Switch(config-if)# switchport mode dot1q-tunnel
Switch(config-if)# l2protocol-tunnel point-to-point pagp
Switch(config-if)# l2protocol-tunnel point-to-point udld
Switch(config-if)# l2protocol-tunnel drop-threshold point-to-point pagp 1000
Switch(config)# interface fastethernet0/2
Switch(config-if)# switchport access vlan 20
Switch(config-if)# switchport mode dot1q-tunnel
Switch(config-if)# l2protocol-tunnel point-to-point pagp
Switch(config-if)# l2protocol-tunnel point-to-point udld
Switch(config-if)# l2protocol-tunnel drop-threshold point-to-point pagp 1000
Switch(config)# interface fastethernet0/3
Switch(config-if)# switchport trunk encapsulation isl
Switch(config-if)# switchport mode trunk
以下は、サイト 1 のカスタマー スイッチを設定する方法の例です。ファスト イーサネット インターフェイス 1、2、3、4 は IEEE 802.1Q トランキング用に設定されており、UDLD はイネーブル、EtherChannel グループ1はイネーブル、ポート チャネルはシャットダウンされたあとでイネーブルになって EtherChannel 設定がアクティブになります。
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# switchport mode trunk
Switch(config-if)# udld enable
Switch(config-if)# channel-group 1 mode desirable
Switch(config)# interface fastethernet0/2
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# switchport mode trunk
Switch(config-if)# udld enable
Switch(config-if)# channel-group 1 mode desirable
Switch(config)# interface fastethernet0/3
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# switchport mode trunk
Switch(config-if)# udld enable
Switch(config-if)# channel-group 1 mode desirable
Switch(config)# interface fastethernet0/4
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# switchport mode trunk
Switch(config-if)# udld enable
Switch(config-if)# channel-group 1 mode desirable
Switch(config)# interface port-channel 1
Switch(config-if)# shutdown
Switch(config-if)# no shutdown
トンネリング ステータスのモニタおよびメンテナンス
表16-2 は、IEEE 802.1Q トンネリングおよびレイヤ 2 プロトコル トンネリングのモニタとメンテナンスを行うイネーブル EXEC コマンドの説明です。
表16-2 トンネリングのモニタおよびメンテナンスのためのコマンド
|
|
clear l2protocol-tunnel counters |
レイヤ 2 プロトコル トンネリング ポートのプロトコル カウンタをクリアします。 |
show dot1q-tunnel |
スイッチの IEEE 802.1Q トンネル ポートを表示します。 |
show dot1q-tunnel interface interface-id |
特定インターフェイスがトンネル ポートであるかどうかを確認します。 |
show l2protocol-tunnel |
レイヤ 2 プロトコル トンネリング ポートに関する情報を表示します。 |
show errdisable recovery |
レイヤ 2 プロトコル トンネル エラー ディセーブル状態からの回復タイマーがイネーブルかどうかを確認します。 |
show l2protocol-tunnel interface interface-id |
特定レイヤ 2 プロトコル トンネリング ポートに関する情報を表示します。 |
show l2protocol-tunnel summary |
レイヤ 2 プロトコルのサマリー情報のみを表示します。 |
show vlan dot1q tag native |
スイッチのネイティブ VLAN タグのステータスを表示します。 |
この表示の詳細については、このリリースのコマンド リファレンスを参照してください。