Cisco Systems社認定資格であるCCNA(Cisco Certified Network Associate)出題範囲における技術について、定期的にご紹介します。
CCNA資格は【ICND1】【ICND2】の2つの試験に合格することで取得できます。
今回はICND2の出題範囲であるVTP(VLAN Trunking Protocol)について説明します。
VTPとは?
Catalystスイッチでは、VTP(VLAN Trunking Protocol)とよばれるCisco独自のVLAN管理プロトコルを実装しています。
このVTPはVLANの作成や変更、削除などのVLAN設定情報を動的に他のCatalystスイッチに伝えることにより、ネットワーク内のスイッチ全体でVLAN構成に関する設定の同期を取ることができるプロトコルです。
企業ネットワークなどの多数のスイッチが存在する環境では、VTPを利用することで効果的に管理を行うことができるようになります。
VTP動作環境
VTPを利用する場合でも、すべての環境でVTPが動作するとは限りません。
VTPを正しく動作させるためには、次の2つの環境が必要になってくることに注意してください。
◆環境1:トランク接続環境
VTPを正しく動作させるためには、トランク接続環境が必須となります。
また、VTPレポートのパケットはVLAN1を使用してアドバタイズされるため、VLAN1が必ずトランク接続の対象となっている必要があります。
◆環境2:VTPドメインとVTPパスワード
VTP情報を共有したいCatalystスイッチは同じVTPドメインに所属し、VTPパスワードを共有する必要があります(VTPパスワードは必須項目ではありません)。
そのため、VTPドメイン名が違うCatalystスイッチ同士は、VTP情報を共有することができません。
VTPモード
VTPには以下の3つのモードが存在します。
◆Serverモード
CatalystスイッチはデフォルトでServerモードとなっています。 このモードではVLANの新規作成・VLANの設定変更(VLAN名の変更など)、VLANの削除を行うことができ、更新されたVLAN情報をVTPアドバタイズパケットにより、他のスイッチに伝達できます。
また、VTPアドバタイズパケットによりレポートされてきたVLAN情報に従い、VLAN設定を更新します。
◆Transparentモード
VTP Transparentモードとして設定されたCatalystスイッチは、VLANの新規作成・変更・削除などVLAN設定を行うことができますが、VTPアドバタイズパケットを生成しません。
また、Transparentモードのスイッチは、VTPアドバタイズパケットによりレポートされてきたVLAN設定情報には一切関与せず、転送のみを行います。 よって、自身で作成したVLAN設定情報以外は、設定に反映されません。
◆Clientモード
VTP Clientモードとして設定されたCatalystスイッチは、VLANの新規作成・変更・削除などVLAN設定を一切行うことができません。 ClientモードのスイッチはVTPアドバタイズパケットによりレポートされてきたVLAN設定情報に従い、VLAN設定を更新します。
リビジョン番号
VTPスイッチは、「VTP設定リビジョン番号」によって最新情報を管理します。 VTPドメイン内の全てのスイッチが、最後に受信したVTPアドバタイズメントに含まれている設定リビジョン番号を更新します。
リビジョン番号は0から始まり、VTPサーバで変更が加えられるたびに、リビジョン番号が1つ増えます。
これにより、受信側のスイッチはどのVTPアドバタイズメントに含まれる情報が、最新のものかを判断することができます。
VTPアドバタイズメントを受信したスイッチは、自身が保存しているリビジョン番号より大きい場合、そのアドバタイズメントによって情報が更新されます。
VTPアドバタイズメントによって、トランクリンク上で以下の情報が伝達されます。
- VTPドメイン名
- リビジョン番号
- 設定されているVLAN番号
- VLANパラメータ
リビジョン番号の注意点
既存のVTPドメインに新たにスイッチを接続する場合には、リビジョン番号に注意する必要があります。
例えば、上図のように既存のVTPドメイン「cisco」内のリビジョン番号は「5」で運用されていたとして、そこに同じVTPドメイン「cisco」として構成された別のスイッチを接続するとします。
このとき、別のスイッチのリビジョン番号が「10」になっていた場合、このスイッチのVTPモードがServerもしくはClientに設定されていると、このスイッチが保持しているVLAN設定情報が最新であると判断され、既存のVTPドメイン内のVLAN構成が変わってしまいます。
それにより、ネットワークの接続性に障害が発生する可能性があるため、十分注意しなければなりません。
基本的には、既存VTPドメインに接続する前にVTPリビジョン番号をリセットしておきます。
VTPリビジョン番号をリセット(0にする)には、以下の2つの方法のどちらかを使用します。
- VTPドメイン名を一度使用していない名前に変更後、使用するドメイン名に設定しなおす。
- VTPモードを一度、Transparentに変更後、使用するVTPモードに設定しなおす。
VTPアドバタイズメント
VTPアドバタイズメントは、以下の3つの形式のいずれかで送信されます。
VTPアドバタイズメント |
含まれる情報 |
要約アドバタイズメント |
・VTPバージョン ・VTPドメイン名 ・設定リビジョン番号 ・MD5ハッシュコード ※1 |
サブセットアドバタイズメント ※2 |
・VTPバージョン ・VTPドメイン名 ・設定リビジョン番号 ・VLANタイプ ・各VLAN名の長さ ・VLAN番号 ・MTU |
アドバタイズメント要求 |
・VTPバージョン ・VTPドメイン名 |
※1 パスワードがドメインに設定されている場合、情報と共に送信される値。
※2 情報が多い場合は複数のサブセットアドバタイズに分割し送信する。
◆要約アドバタイズメント
VTPドメインサーバは300秒ごと、および変更が加えられると要約アドバタイズメントを送信します。
要約アドバタイズメントには「VTPのバージョン」「ドメイン名」「設定リビジョン番号」「タイムスタンプ」「MD5ハッシュコード」が含まれます。 VLAN設定変更の場合は、要約アドバタイズメントに続いて、より詳細なVLAN情報を含んだサブセットアドバタイズメントが送信されます。
◆サブセットアドバタイズメント
VLANの設定が変更されると、VTPドメインサーバはサブセットアドバタイズメントを送信します。
サブセットアドバタイズメントには、VLANの設定に関する詳細な情報が含まれます。
◆アドバタイズメント要求
VTPクライアントは、自分が持っていないVLAN情報を要求します。VLANデータベースが消去されたり、現在保持している情報より大きいリビジョン番号のVTP要約アドバタイズメントを受信したりした場合に、VTPサーバに最新情報の要求を行います。
また、VTPアドバタイズメントが送信されるタイミングは、以下のとおりです。
◆VLAN情報変更時
CatalystスイッチでVLANの追加、削除または変更を実行すると、変更が実行されたVTPサーバが設定リビジョン番号を上げ、要約アドバタイズメントを発行します。 要約アドバタイズメントの後に、サブセットアドバタイズメントが発行されます。 サブセット アドバタイズメントには、VLAN情報のリストが含まれています。 複数のVLAN構成されている場合は、これらすべてのVLANのアドバタイジングを行うために、複数のサブセットアドバタイズメントが必要な場合があります。
◆同期
Catalystスイッチは、デフォルトでは、要約アドバタイズメントを 300秒ごとに発行します。
要約アドバタイズメントは、隣接スイッチに現在のVTPドメイン名と設定リビジョン番号を通知します。
受信スイッチが、自身が保持するものより高い設定リビジョンを持つ VTP 要約アドバタイズメントを受信するとアドバタイズメント要求を送信します。
アドバタイズメント要求を受信すると、VTP デバイスは要約アドバタイズメントを送信します。要約アドバタイズメントの後には、1 つまたは複数のサブセット アドバタイズメントが続きます。
VTPプルーニング
トランクリンクは、デフォルトで全てのVLANから送信されたトラフィックを搬送します。 これには、ブロードキャストや宛先不明のユニキャストトラフィックも含まれます。
しかし、これらのトラフィックは、該当するVLANのアクティブなユーザーが接続されていなければ、そのトラフィックを受信したスイッチは、トランクリンクの帯域とスイッチのCPUリソースを浪費するだけになります。
そこで、VTPプルーニングによって不要なトラフィックフラッディングを減らすことで、トランクリンクの利用効率を高めることができます。
VTPプルーニングは、トランクリンクで接続された転送先のスイッチに、該当するVLANが設定されていない場合、そのトラフィックを転送しない機能です。
ただし、スイッチ間でやり取りされる各種の情報はVLAN1(管理VLAN)を利用しているため、VLAN1はプルーニング対象になりません。
VTPプルーニングを有効にするには、VTPサーバ上で設定します。
VTPの設定
Catalystスイッチの種類によって設定方法は異なりますが、最新機種ではグローバルコンフィグレーションモードでの設定が推奨されています。
①VTPドメインの設定
VTP情報を共有するスイッチはすべて同じドメイン名にする必要がある。
②VTPモードの設定
デフォルトではServerモードに設定されている。 Clientモード、Transparentモードに設定する場合はそれぞれ「client」、「transparent」パラメータを設定。
③VTPパスワードの設定
同じパスワードを持つスイッチ同士のみVTP情報を共有する。 必須の設定ではない。
④VTPバージョンの設定
サーバモードスイッチ上で設定を行う(デフォルトは、バージョン1を使用)
バージョン2では、トークンリングのサポートが可能。
⑤VTPプルーニングの設定
サーバモードスイッチ上で設定を行う。(VLAN1はプルーニングされない)
VTPステータス確認
VTPの設定状況を確認するには、「show vtp status」を使用します。
- VTPバージョン バージョン2が利用可能かどうかを示している。
- リビジョン番号
- VTPモード
- VTPドメイン名
- VTPプルーニングモードの状態
- VTPバージョン2の有効・無効
ただし、VTPパスワードに関してはこのコマンドでは出力されないため、以下のコマンドにて確認します。
プルーニング状態の確認
トランクリンクでのVTPプルーニングの状態を確認するには、トランクを設定したインタフェース番号を指定して、「show interface f0/24 pruning」のようにします。
上記の例は、プルーニングを有効にしたスイッチのf0/24の状況を示しています。
① Vlans pruned for lack of request by neighbor
ネイバーからの要求がなく、プルーニングされたVLANを示しています。
上記の例では、SW2の先に「VLAN50」がなく、SW2から「VLAN50」に対しての要求がないため、SW1上でプルーニングされています。
② Vlan traffic requested of neighbor
ネイバーに対して要求したVLANを示しています。
上記の例では、SW1からSW2に対してすべてのVLAN(VLAN1、VLAN10、VLAN50)のフレームを要求しています。
また、プルーニングが有効になっているかどうかは、「show vtp status」コマンドの出力結果で確認できます。