この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章の内容は、次のとおりです。
Q-in-Q VLAN トンネルを使用することで、サービス プロバイダーは第 2 の 802.1Q タグをすでにタグ付けされたフレームに追加して、カスタマーに内部使用の VLAN をすべて提供しながら、インフラストラクチャ内で異なるカスタマーのトラフィックを分離することができます。
サービス プロバイダーのビジネス カスタマーには、多くの場合、サポートする VLAN ID および VLAN の数に固有の要件があります。同一サービスプロバイダー ネットワークのさまざまなカスタマーが必要とする VLAN 範囲は重複し、インフラストラクチャを通るカスタマーのトラフィックは混合してしまうことがあります。カスタマーごとに一意の VLAN ID 範囲を割り当てると、カスタマーの設定が制限され、802.1Q 仕様の 4096 の VLAN に関する上限を容易に超えてしまいます。
(注) | Q-in-Q は、ポート チャネルおよび仮想ポート チャネル(vPC)でサポートされます。非対称リンクとしてポート チャネルを設定するには、ポート チャネル内のすべてのポートが同じトンネリング設定でなければなりません。 |
サービス プロバイダーは、802.1Q トンネリング機能を使用すると、単一の VLAN を使用して、複数の VLAN を含むカスタマーをサポートできます。同一の VLAN 上にあるように見えるときでも、サービス プロバイダー インフラストラクチャ内のカスタマーの VLAN ID を保護したり、異なるカスタマーの VLAN トラフィックを分離しておくことができます。
IEEE 802.1Q トンネリングは、VLAN-in-VLAN 階層構造およびタグ付きパケットへのタギングによって、VLAN スペースを拡張します。802.1Q トンネリングをサポートするように設定されたポートは、トンネル ポートといいます。トンネリングを設定する場合、トンネリング専用の VLAN にトンネル ポートを割り当てます。カスタマーごとに個別の VLAN が必要ですが、その VLAN はカスタマーの VLAN をすべてサポートします。
カスタマー デバイスの IEEE 802.1Q トランク ポートから、通常どおりに適切な VLAN ID でタグ付けされたカスタマー トラフィックが、サービスプロバイダー エッジ スイッチのトンネル ポートに着信します。カスタマー デバイスとエッジ スイッチの間のリンクは、一方の端が 802.1Q トランク ポート、反対側がトンネル ポートとして設定されているので、非対称リンクです。それぞれのカスタマーに固有のアクセス VLAN ID には、トンネル ポート インターフェイスを割り当てます。
(注) | 選択的 Q-in-Q トンネリングはサポートされません。トンネル ポートに着信すべてのフレームは、Q-in-Q タギングの対象となります。 |
サービスプロバイダー エッジ スイッチのトンネル ポートに着信するパケット(適切な VLAN ID ですでに 802.1Q タグ付けされている)は、カスタマーに一意である VLAN ID を含む 802.1Q タグの別のレイヤでカプセル化されます。元々のカスタマーの 802.1Q タグは、カプセル化されたパケットの中に維持されます。したがって、サービスプロバイダー インフラストラクチャに着信するパケットは二重にタグ付けされます。
外部タグには、カスタマーの(サービス プロバイダーによって割り当てられた)アクセス VLAN ID が含まれます。(カスタマーによって割り当てられた)内部タグの VLAN ID は、受信トラフィックの VLAN です。この二重タギングは、以下の図に示すようにタグ スタック構成 Double-Q または Q-in-Q と呼ばれます。
この方法で、外部タグの VLAN ID スペースは内部タグの VLAN ID スペースに依存しません。単一の外部 VLAN ID は、個々のカスタマーの全体の VLAN ID スペースを表すことができます。この方法により、カスタマーのレイヤ 2 ネットワークをサービス プロバイダー ネットワーク全体に拡張して、複数のサイトに仮想 LAN インフラストラクチャを作成することも可能になります。
(注) | 階層型タギング、すなわちマルチレベルの dot1q タギング Q-in-Q はサポートされていません。 |
エッジ スイッチで 802.1Q トンネリングを設定する場合は、サービス プロバイダー ネットワークにパケットを送信するために、802.1Q トランク ポートを使用する必要があります。ただし、サービスプロバイダー ネットワークのコアを通過するパケットは、IEEE 802.1Q トランク、ISL トランク、または非トランキング リンクで伝送される場合があります。802.1Q トランクをこれらのコア スイッチで使用する場合には、802.1Q トランクのネイティブ VLAN を、同じスイッチ上の dot1q トンネル ポートのどのネイティブ VLAN にも一致させないでください。ネイティブ VLAN 上のトラフィックが 802.1Q 送信トランク ポートでタグ付けされなくなるためです。
以下の図では、VLAN 40 は、サービス プロバイダー ネットワークの入力エッジ スイッチ(スイッチ B)において、カスタマー X からの 802.1Q トランク ポートのネイティブ VLAN として設定されています。カスタマー X のスイッチ A は、VLAN 30 のタグ付きパケットを、アクセス VLAN 40 に属する、サービスプロバイダー ネットワークのスイッチ B の入力トンネル ポートに送信します。トンネル ポートのアクセス VLAN(VLAN 40)は、エッジ スイッチのトランク ポートのネイティブ VLAN(VLAN 40)と同じなので、トンネル ポートから受信したタグ付きパケットに 802.1Q タグは追加されません。パケットには VLAN 30 タグだけが付いて、サービスプロバイダー ネットワークで出力エッジ スイッチ(スイッチ C)のトランク ポートに送信され、出力スイッチ トンネルによってカスタマー Y に間違えて送信されます。
ネイティブ VLAN の問題を解決する方法は 2 つあります。
(注) | vlan dot1q tag native コマンドは、すべてのトランク ポート上のタギング動作に影響を与えるグローバル コマンドです。 |
サービスプロバイダー ネットワーク経由で接続される複数のサイトのカスタマーは、さまざまなレイヤ 2 プロトコルを実行して、すべてのリモート サイトおよびローカル サイトを含むようにトポロジを拡大する必要があります。スパニングツリー プロトコル(STP)が適切に稼働している必要があり、すべての VLAN で、ローカル サイトおよびサービスプロバイダー インフラストラクチャ経由のすべてのリモート サイトを含む、適切なスパニングツリーを構築する必要があります。Cisco Discovery Protocol(CDP)は、ローカルおよびリモート サイトから隣接するシスコ デバイスを検出することができる必要があり、VLAN トランキング プロトコル(VTP)は、カスタマー ネットワークのすべてのサイトを通して一貫した VLAN 設定を提供する必要があります。
プロトコル トンネリングがイネーブルになると、サービス プロバイダー インフラストラクチャの受信側にあるエッジ スイッチが、レイヤ 2 プロトコルを特別の MAC アドレスでカプセル化し、サービス プロバイダー ネットワークの端まで送信します。ネットワークのコア スイッチでは、このパケットが処理されずに通常のパケットとして転送されます。CDP、STP、または VTP のブリッジ プロトコル データ ユニット(BPDU)は、サービスプロバイダー インフラストラクチャを通過し、サービスプロバイダー ネットワークの発信側にあるカスタマー スイッチまで配信されます。同一パケットは同じ VLAN のすべてのカスタマー ポートで受信されます。
802.1Q トンネリング ポートでプロトコルのトンネリングをイネーブルにしていない場合、サービスプロバイダー ネットワークの受信側のリモート スイッチでは BPDU を受信せず、STP、CDP、802.1X、および VTP を適切に実行できません。プロトコルのトンネリングがイネーブルである場合、それぞれのカスタマー ネットワークのレイヤ 2 プロトコルは、サービスプロバイダー ネットワーク内で動作しているものから完全に区別されます。802.1Q トンネリングでサービスプロバイダー ネットワークを通してトラフィックを送信する、さまざまなサイトのカスタマー スイッチでは、カスタマー VLAN が完全に認識されます。
(注) | レイヤ 2 プロトコルのトンネリングは、ソフトウェアで BPDU をトンネリングすることで動作します。スーパーバイザが受信する多数の BPDU により CPU の負荷が大きくなります。スーパーバイザ CPU の負荷を軽減するために、ハードウェア レート リミッタを使用する必要がある場合があります。ページ 9-14 の「レイヤ 2 プロトコル トンネル ポートのレート制限の設定」の項を参照してください。 |
たとえば、以下の図で、カスタマー X には、サービス プロバイダー ネットワークを介して接続された同じ VLAN に 4 台のスイッチがあります。ネットワークが BPDU をトンネリングしないと、ネットワークの遠端のスイッチは STP、CDP、802.1X、および VTP プロトコルを正しく実行できません。
前の例では、カスタマー X、サイト 1 のスイッチ上の VLAN で動作する STP は、カスタマー X、サイト 2 のスイッチに基づくコンバージェンス パラメータを考慮せずに、このサイトのスイッチのスパニング ツリーを構築します。
以下の図は、BPDU トンネリングがイネーブルになっていない場合の、カスタマーのネットワークでの結果トポロジを示します。
次の表に、この機能のライセンス要件を示します。
製品 | ライセンス要件 |
---|---|
Cisco NX-OS |
802.1Q-in-Q VLAN トンネリングおよび L2 プロトコルのトンネリングにライセンスは必要ありません。ライセンス パッケージに含まれていない機能はすべて Cisco NX-OS システム イメージにバンドルされており、追加費用は一切発生しません。NX-OS ライセンス方式の詳細については、『Cisco NX-OS Licensing Guide』を参照してください。 |
Q-in-Q トンネリングおよびレイヤ 2 トンネリングには、次の設定に関する注意事項と制約事項があります。
Q-in-Q トンネルは、F1 ラインカードではサポートされていません。
サービスプロバイダー ネットワーク内のスイッチは、Q-in-Q タギングによる MTU サイズの増加に対応するように設定する必要があります。
Q-in-Q タグ付きパケットの MAC アドレス ラーニングは、外部 VLAN(サービス プロバイダー VLAN)タグに基づいています。単一の MAC アドレスが複数の内部(カスタマー)VLAN で使用される配置においては、パケット転送の問題が発生する場合があります。
レイヤ 3 以上のパラメータは、トンネル トラフィックでは識別できません(レイヤ 3 宛先や送信元アドレスなど)。トンネル型トラフィックはルーティングできません。
Cisco Nexus デバイスは、トンネル トラフィックに対する MAC レイヤ ACL/QoS(VLAN ID および送信元/宛先 MAC アドレス)のみを提供できます。
MAC アドレスに基づくフレーム配布を使用する必要があります。
非対称リンクでは 1 つのポートだけがトラッキングするため、Dynamic Trunking Protocol(DTP)をサポートしません。無条件でトランクになるように、非対称リンクの 802.1Q トランク ポートを設定する必要があります。
プライベート VLAN をサポートするように設定されたポートに 802.1Q トンネリング機能を設定することはできません。プライベート VLAN は、これらの導入には必要ではありません。
トンネル VLAN の IGMP スヌーピングをディセーブルにする必要があります。
コントロール プレーン ポリシング(CoPP)はサポートされません。
ネイティブ VLAN の誤設定を防ぐには、(dot1q-tunnel ポートではなく)サービス プロバイダー ポートのトランク側でvlan dot1Q tag native コマンドを入力する必要があります。
802.1Q インターフェイスをエッジ ポートにするように手動で設定する必要があります。
Dot1x トンネリングはサポートされていません。
EtherType 設定が複数の Cisco Nexus デバイスで有効になるように、EPLD を新しいバージョンにアップグレードする必要があります。
STP は内部 VLAN でサポートされません。
ファブリックにループ検出機能はありません。
Cisco Discovery Protocol(CDP)は Q-in-Q と互換性がありません。ポートが 802.1Q トンネル ポートとして設定される場合、CDP はインターフェイスでディセーブルになる必要があります。
Quality of Service(QoS)は、802.1Q の 2 バイトの Tag Control Information フィールド内の受信サービス クラス(CoS)値を検出できません。
非対称リンク上で、トンネル ポートの VLAN が .1Q トランクのネイティブ VLAN と一致しない場合、CDP はネイティブ VLAN の不一致をレポートします。.1Q トンネル機能を使用する場合、VLAN が一致する必要はありません。この設定ではメッセージを無視してください。
レイヤ 2 ポート チャネルはトンネル ポートとして設定できますが、ポート チャネルのすべてのメンバーが同じサービス プロバイダー エッジ スイッチに接続する必要があります。
ブレークアウト設定では、同じ転送インスタンスのすべてのポートは all/none 単位で dot1qtunnel に設定されます。dot1q トンネル設定を持たないポートは、ダウンし、err-disabled になります。
FEX のすべてのポートは dot1qtunnel で all/none として設定されます。見つからない dot1qtunnel は error disabled のままになります。
ポート チャネルのすべてのメンバーは、ランタイム設定を同じ fwm ブロックに属する他のポートに伝達します。
AA FEX トポロジの 1 つのスイッチの FEX HIF で Dot1qtunnel を設定すると、他のスイッチでその FEX はオンラインになる前にリセットされます。
Q-in-Q VLAN トンネルは、Cisco Nexus 6000 および Cisco Nexus 5600 プラットフォームでのみサポートされます。
スパニング ツリー プロトコル(STP)ブリッジ プロトコル データ ユニット(BPDU)のパケットまたは Cisco Discovery Protocol(CDP)のパケットを Q-in-Q VLAN トンネル全体で転送するように、レイヤ 2 プロトコル機能を設定できません。
はじめに、スイッチ ポートとしてインターフェイスを設定する必要があります。
次に、802.1Q トンネル ポートを作成する例を示します。
switch# configure terminal switch(config)# interface ethernet 7/1 switch(config-if)# switchport switch(config-if)# switchport mode dot1q-tunnel switch(config-if)# exit switch(config)# exit switch# show dot1q-tunnel
(注) | 二重タグ フレームを伝送する出力トランク インターフェイス(サービス プロバイダーに接続するトランク インターフェイス)だけに EtherType を設定する必要があります。トランクの一方で EtherType を変更した場合、トランクのもう一方でも同じ値を設定する必要があります(対称構成)。この設定は、オプションです。 |
注意 | 設定した EtherType 値は、(Q-in-Q パケットだけではなく)インターフェイスから出るすべてのタグ付きパケットに影響します。 |
次に、802.1Q トンネル ポートを作成する例を示します。
switch# configure terminal switch(config)# interface ethernet 7/1 switch(config-if)# switchport switch(config-if)# switchport dot1q ethertype 0x9100 switch(config-if)# exit switch(config)# exit switch# show dot1q-tunnel
次に、802.1Q トンネル ポートでプロトコルのトンネリングをイネーブルにする例を示します。
switch# configure terminal switch(config)# interface ethernet 7/1 switch(config-if)# switchport switch(config-if)# switchport mode dot1q-tunnel switch(config-if)# l2protocol tunnel stp switch(config-if)# exit switch(config)# exit
次に、レイヤ 2 プロトコルのトンネリングのためのグローバル CoS 値を指定する例を示します。
switch# configure terminal switch(config)# l2protocol tunnel cos 6 switch(config)# exit
レイヤ 2 プロトコルのトンネリング用にハードウェア レート リミッタの設定を指定できます。デフォルトは 500 パケット/秒に設定されます。ロードまたはトンネリングされる VLAN 数によって、ネットワーク上の STP のエラーを回避するためにこの値を調整する必要がある場合があります。
Q-in-Q トンネルおよびレイヤ 2 プロトコルのトンネリング設定情報を表示するには、次のタスクのいずれかを実行します。
コマンド | 目的 |
---|---|
clear l2protocol tunnel counters [interface if-range] |
すべての統計情報カウンタをクリアします。インターフェイスが指定されていない場合、すべてのインターフェイスのレイヤ 2 プロトコル トンネル統計情報がクリアされます。 |
show dot1q-tunnel [interface if-range] |
dot1q トンネル モードのインターフェイス範囲またはすべてのインターフェイスが表示されます。 |
show l2protocol tunnel [interface if-range | vlan vlan-id] |
一定範囲のインターフェイス(特定の VLAN の一部であるすべての dot1q-tunnel インターフェイスまたはすべてのインターフェイス)のレイヤ 2 プロトコル トンネル情報を表示します。 |
show l2protocol tunnel summary |
レイヤ 2 プロトコル トンネルが設定されているすべてのポートのサマリーを表示します。 |
show running-config l2pt |
現在のレイヤ 2 プロトコル トンネルの実行コンフィギュレーションを表示します。 |
次に、イーサネット 7/1 に着信するトラフィックに対し Q-in-Q を処理するよう設定されたサービス プロバイダーのスイッチを示します。レイヤ 2 プロトコル トンネルが STP BPDU に対してイネーブルにされます。 このカスタマーは VLAN 10(外部 VLAN タグ)に割り当てられます。
switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# vlan 10
switch(config-vlan)# no shutdown
switch(config-vlan)# no ip igmp snooping
switch(config-vlan)# exit
switch(config)# interface ethernet 7/1
switch(config-if)# switchport
switch(config-if)# switchport mode dot1q-tunnel
switch(config-if)# switchport access vlan 10
switch(config-if)# spanning-tree port type edge
switch(config-if)# l2protocol tunnel stp
switch(config-if)# no shutdown
switch(config-if)# exit
switch(config)# exit
switch#