VLAN(仮想 LAN)は、1つの物理ネットワークを複数の論理的なネットワークに分ける技術です。この記事では、VLAN の基本的な考え方から、タグ VLAN(IEEE 802.1Q)の仕組み、Cisco スイッチでの設定方法までを順に説明します。
- VLAN で何ができるのか、VLAN ID の範囲
- タグ VLAN(IEEE 802.1Q)で、1本のケーブルに複数の VLAN を通す仕組み
- Cisco スイッチでの VLAN、アクセスポート、トランクポートの設定と確認
VLAN とは
VLAN(Virtual Local Area Network)は、1台のスイッチなどのネットワーク機器の上で、1つの物理ネットワークを複数の論理的なネットワークに分ける技術です。
VLAN を使うと、同じスイッチにつながった機器(PC やプリンタなど)を、論理的に別のネットワークに分けられます。ネットワークの管理がしやすくなり、セキュリティの強化にもつながります。
VLAN のメリット
| メリット | 内容 |
|---|---|
| セキュリティの向上 | 異なる VLAN の機器どうしは、ルータやレイヤ3スイッチで中継しない限り通信できません。機器を分離でき、情報が不要に流れるリスクを減らせます |
| 柔軟な管理 | サブネットごとに VLAN を分けておけば、物理的な配線を変えずに、ネットワークのセグメントを追加・削除できます |
| ブロードキャストの抑制 | ブロードキャストは同じ VLAN の中だけに届きます。VLAN ごとにブロードキャストドメインが分かれるので、不要なブロードキャストのトラフィックを抑えられます |
VLAN ID の範囲
VLAN は、一意の ID(VLAN ID)で区別します。Cisco のスイッチでは、VLAN ID は次の2つの範囲に分かれます。
| 範囲 | VLAN ID | 補足 |
|---|---|---|
| 標準範囲(ノーマルレンジ) | 1〜1005 | 1002〜1005 は Token Ring と FDDI 用に予約されていて、ユーザーが作れるのは 1〜1001 |
| 拡張範囲(エクステンデッドレンジ) | 1006〜4094 |
例えば、192.168.1.0/24 を VLAN 100、192.168.2.0/24 を VLAN 200 のように、サブネットと VLAN を 1 対 1 で対応させ、VLAN ID で区別します。
IEEE 802.1Q(タグ VLAN)
2台のスイッチをつないで、それぞれに VLAN 100 と VLAN 200 の端末を置きたいとします。最初に思いつくのは、VLAN ごとにスイッチ間をケーブルでつなぐ方法です。
しかし、この方法ではすぐに物理的な限界が来ます。例えば VLAN が 100 個あれば、ケーブルも 100 本必要です。スイッチのポートは 24 や 48 程度しかないので、すべての VLAN をケーブルでつなぐのは現実的ではありません。
そこで使うのが IEEE 802.1Q(タグ VLAN)です。
IEEE 802.1Q は、1つの物理ポートで複数の VLAN を通すための規格です。スイッチ間を流れるフレームに「タグ」を付けてどの VLAN のフレームかを区別し、1本のケーブルで複数の VLAN を多重化します。
なお、トランクにはタグを付けずに流す VLAN が1つあり、これをネイティブ VLAN と呼びます。Cisco のスイッチでは、ネイティブ VLAN は既定で VLAN 1 です。トランクの両端でネイティブ VLAN をそろえておく必要があります。
端末をつなぐ、1つの VLAN だけに属するポートをアクセスポート、スイッチ間など複数の VLAN を多重化するポートをトランクポートといいます。
| タグ VLAN の利点 | 内容 |
|---|---|
| ポートの節約 | 1つの物理ポートで複数の VLAN を扱えるので、スイッチ間のケーブルを大幅に減らせる |
| 柔軟な設計 | 物理的な配線にとらわれず、論理的なネットワーク構成を変えられる |
| 帯域の有効活用 | 1本のリンクを複数の VLAN で共有できる |
VLAN の設定例
Cisco スイッチで、VLAN 100 と VLAN 200 を作り、アクセスポートとトランクポートを設定します。SW1 の設定を例に説明します(SW2 も同じように設定します)。
VLAN を作成する
VLAN 100 と VLAN 200 を、次のコマンドで作成します。
SW1(config)# vlan 100 SW1(config-vlan)# exit SW1(config)# vlan 200 SW1(config-vlan)# exit
show vlan で、VLAN が追加されたかを確認できます。
SW1# show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
100 VLAN0010 active
200 VLAN0020 active
この時点では、すべてのポートが VLAN 1(default)に属しています。
アクセスポートを設定する
アクセスポートは、1つの VLAN だけに属する、端末向けのポートです。Fa0/1 を VLAN 100、Fa0/2 を VLAN 200 のアクセスポートにします。
SW1(config)# interface FastEthernet0/1 SW1(config-if)# switchport access vlan 100 SW1(config-if)# switchport mode access SW1(config)# interface FastEthernet0/2 SW1(config-if)# switchport mode access SW1(config-if)# switchport access vlan 200
| コマンド | 意味 |
|---|---|
| switchport mode access | ポートをアクセスポートにする |
| switchport access vlan 100 | このポートが属する VLAN を 100 にする |
各 VLAN に割り当てられたポートを確認します。
SW1# show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/3, Fa0/4, Fa0/5, Fa0/6
Fa0/7,
100 VLAN0010 active Fa0/1
200 VLAN0020 active Fa0/2
ポートにどの VLAN が設定されているかは、show interface status でも確認できます。
SW1# show interface status Port Name Status Vlan Duplex Speed Type Fa0/1 connected 100 a-full a-100 100BaseTX/FX Fa0/2 connected 200 a-full a-100 100BaseTX/FX
トランクポートを設定する
トランクポートは、複数の VLAN のトラフィックを通すためのポートです。Fa0/8 をトランクポートにします。
SW1(config)# interface FastEthernet0/8 SW1(config-if)# switchport trunk encapsulation dot1q SW1(config-if)# switchport mode trunk SW1(config-if)# switchport trunk allowed vlan 100,200
| コマンド | 意味 |
|---|---|
| switchport trunk encapsulation dot1q | トランクのカプセル化方式を IEEE 802.1Q にする。ISL にも対応した機種で必要なコマンドで、機種によっては不要 |
| switchport mode trunk | ポートをトランクポートにする |
| switchport trunk allowed vlan 100,200 | トランクで通す VLAN を 100 と 200 に限る |
最後の switchport trunk allowed vlan を設定しないと、トランクには既定ですべての VLAN(1〜4094)が通ります。実務では、余計な VLAN がトランクを流れないように、allowed vlan で通す VLAN を限定します。
Fa0/8 がトランクとして、どの VLAN を許可しているかを確認します。
SW1# show int trunk Port Mode Encapsulation Status Native vlan Fa0/8 on 802.1q trunking 1 Port Vlans allowed on trunk Fa0/8 100,200 Port Vlans allowed and active in management domain Fa0/8 100,200 Port Vlans in spanning tree forwarding state and not pruned Fa0/8 100,200
| 表示 | 意味 |
|---|---|
| Mode on | switchport mode trunk で、常にトランクとして動く設定 |
| Encapsulation 802.1q | カプセル化方式は IEEE 802.1Q |
| Status trunking | トランクとして動いている |
| Native vlan 1 | タグを付けずに流すネイティブ VLAN は 1 |
| Vlans allowed on trunk | トランクで許可している VLAN(100 と 200) |
ポートがトランクかどうかだけなら、show interface status でも確認できます。Vlan の列が trunk になります。
SW1# show interface status
Port Name Status Vlan Duplex Speed Type
Fa0/1 connected 100 a-full a-100 100BaseTX/FX
Fa0/2 connected 200 a-full a-100 100BaseTX/FX
Fa0/8 connected trunk a-full a-100 100BaseTX/FX
まとめ
| 項目 | 内容 |
|---|---|
| VLAN | 1つの物理ネットワークを論理的に分ける。VLAN ごとにブロードキャストドメインが分かれる |
| VLAN ID | 標準範囲 1〜1005(1002〜1005 は予約)、拡張範囲 1006〜4094 |
| アクセスポート | switchport mode access と switchport access vlan。1つの VLAN に属する |
| トランクポート | switchport mode trunk。IEEE 802.1Q のタグで複数の VLAN を通す。allowed vlan で通す VLAN を限定する |
| 確認コマンド | show vlan、show interface status、show interface trunk |
VLAN を使うと、ネットワークを論理的に分けて、セキュリティと管理のしやすさを高められます。IEEE 802.1Q(タグ VLAN)を使えば、スイッチのポート数に縛られずに、スイッチ間で複数の VLAN をつなげます。
コメント