VLANの設定の流れ

まず、全体的な設定の流れを確認しましょう。デフォルトでは、スイッチにはVLAN1が存在します。すべてのポートはCatalystのモデルに応じて、特定のDTPモードになっています。Catalyst3560/3750では、Dynamic autoのモードです。そのため、Catalystスイッチが接続されない場合は、すべてのポートはアクセスポートとして動作します。アクセスポートとして動作する場合のVLANメンバーシップはVLAN1です。

ここから必要に応じて、新しくVLANを作成したり、DTPモードを変更したりしてアクセスポート/トランクポートとして動作させるようにします。アクセスポートの場合はVLANメンバーシップを決め、トランクポートの場合はトランクカプセル化プロトコルの指定などを行います。

デフォルトでは、VLAN1002~1005も存在しています。これらはイーサネット用のVLANではないので、通常、考慮する必要はありません。

CatalystスイッチでVLANに関する設定の流れとコマンドは次の通りです。

  1. VLANの作成
    デフォルトでは、VLAN1が存在。必要に応じて、追加のVLANを作成する
  2. スイッチポートの設定
    DTPモードを変更して、アクセスポートかトランクポートとして動作させる
    アクセスポートでは、VLANメンバーシップを設定する
    トランクポートでは、トランクプロトコルやトランク上で許可するVLANやネイティブVLANを設定する

アクセスポートおよびトランクポートについて、以下の記事を参照してください。

VLANの作成

スイッチに新しくVLANを作成するためには、グローバルコンフィグレーションモードで次のようなコマンドを使います。

VLANの作成

(config)#vlan <vlan-id>
(config-vlan)#name <vlan-name>

<vlan-id> : VLAN番号
<vlan-name> :VLAN名

VLAN名の設定はオプションです。省略するとデフォルトでは、「VLANx」(x:4桁のVLAN番号)という名前がつけられます。VLAN番号は、標準VLAN番号と拡張VLAN番号があります。

  • 標準VLAN番号
    • 1~1005
    • 1002~1005はトークンリング/FDDI用に予約されています。
  • 拡張VLAN番号
    • 1006~4094
    • 拡張VLAN番号のVLANを作成するには、VTPトランスペアレントモードにする必要があります。
    • 拡張VLAN番号のVLANはVTPでアドバタイズされず、他のスイッチと同期を取ることもありません。
    • 拡張VLAN番号のVLANはVLANデータベース内に保存されません。

VLANを削除する場合は、noコマンドで削除できます。

VLANの削除

(config)#no vlan <vlan-id>

VLANを削除すると、そのVLANのアクセスポートが使えなくなってしまうので注意してください。
以前のCatalystスイッチでは、グローバルコンフィグレーションモードではなくVLANデータベースモードで設定しています。
#vlan database
(config-vlan)#vlan <vlan-id> name <vlan-name>

スイッチポートの設定

DTPモードは、インタフェースコンフィグレーションモードで次のコマンドで設定します。

DTPモードの設定

(config-if)#switchport mode {dynamic {auto | desirable} | trunk |access}

DTPモードを適切に設定して、アクセスポートまたはトランクポートとして動作させます。

アクセスポート

スイッチのポートをスタティックなアクセスポートにして、そのVLANメンバーシップを決めるにはインタフェースコンフィグレーションモードで次のように設定します。

アクセスポートの設定

(config-if)#switchport mode access
(config-if)#switchport access vlan <vlan-id>

<vlan-id> : 割り当てたいVLAN番号

スタティックなアクセスポートにする場合は、DTPを無効化しておいた方がよいです。DTPを無効化するには、次のコマンドを使います。

DTP無効化

(config-if)#switchport nonegotiate

トランクポート

スイッチのポートをスタティックトランクポートとして設定するには、次のように設定します。

トランクポートの設定

(config-if)#switchport trunk encapsulation {dot1q | isl}
(config-if)#switchport mode trunk

スタティックなトランクポートにする場合は、やはりDTPを無効化する方がよいです。
1Q、ISLの両方のトランクプロトコルをサポートしているときのみ、switchport trunk encapsulationコマンドが必要です。

トランクポートは、デフォルトでスイッチ内部のすべてのVLANと接続されます。必要に応じて、トランクポートと接続するVLANを限定することができます。そのためのコマンドは次の通りです。

allowed VLANの設定

(config-if)#switchport trunk allowed vlan [add | all | except | remove] <vlan-list>

<vlan-list> : トランク上で許可するVLAN番号のリスト

また、IEEE802.1Qトランクの場合、ネイティブVLANを指定します。ネイティブVLANの指定はインタフェースコンフィグレーションモードで次のように設定します。

ネイティブVLANの設定

(config-if)#switchport trunk native vlan <vlan-id>

<vlan-id> : ネイティブVLANのVLAN番号

なお、次のコマンドでネイティブVLANでもVLANタグを付加するように設定できます。

ネイティブVLANのタグ付け

(config)#vlan dot1q tag native


ネイティブVLANについて、以下の記事で解説しています。


VLANとスイッチポートの設定の確認

VLANおよびアクセスポート、トランクポートの設定を確認するためのコマンドを下記の表にまとめています。

表 VLANの主な確認コマンド

コマンド

表示内容

#show vlan brief

スイッチに存在するVLANと各VLANのアクセスポートを表示する

#show interface trunk

スイッチ上のトランクポートの要約情報を表示する

#show interface {interface} switchport

スイッチポートの情報。アクセスポートとして動作しているか、トランクポートとして動作しているかを詳細に表示する

VLANとスイッチポートの設定例

次の図は、Catalystスイッチのデフォルトの状態の内部構造をモデル化したものです。Catalyst2970シリーズのスイッチを想定しています。

デフォルトのVLANとポートの対応
図 デフォルトのVLANとポートの対応

デフォルトの状態のCatalystスイッチで以下の設定を行います。

  • VLAN2を作成
  • Fa0/2をVLAN2のアクセスポートにする
  • Fa0/3をIEEE802.11Qのトランクポートにする

VLAN2の作成

まず、VLAN2を作ります。

vlan 2

この設定により、スイッチの内部にVLAN2が作られます。必要ならばわかりやすくVLANに名前をつけることも可能です。

Fa0/2をVLAN2のアクセスポートに割り当てる

そして、次にFa0/2をVLAN2のアクセスポートにするためには、 次のコマンドを利用します。

interface FastEthernet0/2
 switchport mode access
 switchport access vlan 2

この設定によって、Fa0/2とVLAN2がつながることになります。

Fa0/3をIEEE802.1Qトランクポートにする

Fa0/3をIEEE802.1Qのトランクポートにするには、次のように設定します。

interface FastEthernet0/3
 switchport mode trunk

すると、Fa0/3はVLAN1にもVLAN2にも接続されることになり、各VLANの識別情報を付加してフレームを転送することができます。Catalyst2970シリーズはIEEE802.1Qのみをサポートしています。switchport trunk encapsulationコマンドは不要です。

ここまでの設定を行った場合、Catalystスイッチの内部の接続は次の図になります。

VLANとスイッチポートの設定例
図 VLANとスイッチポートの設定例

このように内部の接続の様子を見てみると、VLAN1のアクセスポートのFa0/1とVLAN2のアクセスポートのFa0/2が直接通信できなくなってしまうのもよくわかります。同じスイッチのポートですが、スイッチ内部ではFa0/1、Fa0/2はつながっていないからです。

異なるVLANのポート同士で通信をさせるためには、レイヤ3スイッチやルータを利用して、VLAN間ルーティングを行うことが必要です。

確認コマンドのサンプル

上記の設定のときの確認コマンドを実際に見てみましょう。

show vlan brief

まず、スイッチ内部のVLANとアクセスポートを確認するために、show vlan briefコマンドを使います。

Switch#show vlan brief

VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/1, Fa0/4, Fa0/5, Fa0/6
                                                Fa0/7, Fa0/8, Fa0/9, Fa0/10
                                                Fa0/11, Fa0/12, Fa0/13, Fa0/14
                                                Fa0/15, Fa0/16, Fa0/17, Fa0/18
                                                Fa0/19, Fa0/20, Fa0/21, Fa0/22
                                                Fa0/23, Fa0/24, Gi0/1, Gi0/2
2    VLAN0002                         active    Fa0/2
1002 fddi-default                     act/unsup
1003 token-ring-default               act/unsup
1004 fddinet-default                  act/unsup
1005 trnet-default                    act/unsup

VLAN2が存在し、そのアクセスポートとしてFa0/2があることがわかります。

デフォルトのVLAN1のアクセスポートとしてFa0/3が入っていないことに注意してください。Fa0/3はトランクポートの設定をしているので、show vlan briefには現れなくなります。

show interface trunk

トランクポートの確認をするためには、show interface trunkコマンドを使います。このコマンドにより、スイッチ上のすべてのトランクポートの要約情報を確認することができます。設定例でのサンプル出力は下記の通りです。

Switch#show interfaces trunk

Port        Mode         Encapsulation  Status        Native vlan
Fa0/3       on           802.1q         trunking      1

Port      Vlans allowed on trunk
Fa0/3       1-4094

Port        Vlans allowed and active in management domain
Fa0/3       1-2

Port        Vlans in spanning tree forwarding state and not pruned
Fa0/3       1-2

トランクポートに設定したFa0/3のトランクプロトコルやトランクポートで転送するVLANの情報などがわかります。コマンド出力の各項目は次のような情報を表しています。

  • Vlans allowed on trunk
    switchport trunk allowed vlanコマンドの内容が反映されます。デフォルトでは、1-4094のすべてのVLANです。
  • Vlans allowed and active in management domain
    許可されているVLANのうち、実際にトランクポートに接続されるアクティブなVLANが表示されます。
  • Vlans in spanning tree forwarding state and not pruned
    スパニングツリーの計算やVTPプルーニングなどを踏まえて、実際にトランクポートから転送されるVLAN番号が表示されます。トランクポートから転送されるVLANを確認するには、この部分の確認をしてください。

show interface switchport

また、スイッチポートとしての詳細な情報を確認するためには、show interface switchportコマンドを使います。Fa0/2とFa0/3のshow interface switchportコマンドは次の通りです。

Switch#show interfaces fa 0/2 switchport
Name: Fa0/2
Switchport: Enabled
Administrative Mode: static access
Operational Mode: static access
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: native
Negotiation of Trunking: Off
Access Mode VLAN: 2 (VLAN0002)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
~省略~

Switch#show interfaces fa 0/3 switchport
Name: Fa0/3
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
~省略~
Trunking VLANs Enabled: ALL
~省略~

アクセスポートもしくはトランクポートとしての情報に加えて、さまざまなレイヤ2レベルの機能を確認することができます。CatalystスイッチのモデルやIOSのバージョンによって表示される内容は異なりますが、主な項目について解説します。

  • Administrative Mode
    設定されているDTPモードを表します。
  • Operational Mode
    実際にポートがトランクポートとして動作しているか、アクセスポートとして動作しているかを表します。
  • Administrative Trunking Encapsulation
    トランクプロトコルの設定を表します。
  • Operational Trunking Encapsulation
    実際に利用しているトランクプロトコルを表します。
  • Negotiation of Trunking
    DTPによるネゴシエーションが有効であるかを表します。
  • Access Mode VLAN
    そのポートがアクセスポートになった場合のVLANメンバーシップのVLAN番号を表します。
  • Trunking Native Mode VLAN
    1QトランクのネイティブVLANのVLAN番号を表します。ネイティブVLANが意味を持つのは、IEEE802.1Qトランクの場合のみです。
  • Voice VLAN
    IP Phoneを接続する場合のVoice VLANのVLAN番号を表します。
  • Trunking VLANs Enabled
    switchport trunk allowed vlanで設定しているVLAN番号を表します。デフォルトは、1-4904(all)となります。

関連記事

関連記事