前の記事では、 L2スイッチが MACアドレスとポートの対応関係をMACアドレステーブルへ学習する仕組み を学びました。
CiscoスイッチのMACアドレステーブルを見ると、 MACアドレスやポートだけでなく、 VLANという項目も表示されます。
aaaa.aaaa.aaaa
Gi0/1
bbbb.bbbb.bbbb
Gi0/2
cccc.cccc.cccc
Gi0/3
このVLAN番号は、 単なる管理用の番号ではありません。
VLANを使うことで、 1台の物理スイッチを、論理的に複数のLANへ分割 できます。
「営業部LAN」と「開発部LAN」のように分けることはできるのでしょうか?
それを実現する代表的な技術が VLAN(Virtual LAN)です。
VLANという用語を覚えるだけでなく、 「1台のL2スイッチを論理的に複数のLANへ分割し、 VLANごとにブロードキャストドメインを分離できる」 ことを理解するのが目標です。
VLANとは?
VLAN(Virtual LAN)とは、 物理的な接続構成を変えずに、 L2ネットワークを論理的に分割する仕組み です。
たとえば1台の24ポートスイッチがあるとします。
VLANを使わなければ、 基本的には同じVLANに所属するポート同士が 1つのL2ネットワークとして動作します。
ここでVLANを設定すると、 同じ物理スイッチを使っていても、
のように、 論理的には別々のLANとして扱う ことができます。
物理的には同じスイッチを利用しながら、 論理的には複数のL2ネットワークへ分割 できます。
物理構成と論理構成は別に考える
VLANを理解するとき、 「物理的につながっているか」と「L2的に同じLANか」は別 と考えることが重要です。
💻 ─┼─ ▣ Switch
💻 ─┼
💻 ─┘
すべて同じ物理スイッチへ接続
─────────
VLAN20:💻 💻
VLANによって別LANとして分離
VLANが設定されているネットワークでは、 同じスイッチに接続されていても 異なるVLANなら別のL2ネットワーク です。
なぜVLANを使うの?
VLANを使う代表的な理由は、 大きく3つあります。
VLANごとにブロードキャストドメインを分離できます。
営業・開発・サーバーなどを 論理的に別ネットワークへ分けられます。
物理スイッチを部署ごとに完全分離しなくても、 論理的なグループを作成できます。
VLANごとにブロードキャストドメインが分かれる
VLANの重要な特徴が、 ブロードキャストドメインを分割できること です。
たとえば、 VLAN 10とVLAN 20を設定しているとします。
PC-Aが FF:FF:FF:FF:FF:FF 宛てのブロードキャストフレームを送信した場合、 そのフレームは VLAN 10内でのみ フラッディングされます。
VLAN 10なので届く
VLAN 20なので届かない
VLAN 20なので届かない
基本的には、 VLANを分けることで ブロードキャストの届く範囲も分離 されます。
ARP RequestもVLANを越えない
初級で学習した ARP Requestは、 Ethernetブロードキャストを利用します。
そのためVLANが分かれている場合、 ARP Requestも別VLANへそのまま届くわけではありません。
つまり、 VLANを分けることは L2通信の範囲そのものを分ける ことにつながります。
同じVLANの端末同士はL2スイッチで通信できる
同じVLANに所属する端末同士なら、 MACアドレステーブルを利用して L2スイッチがフレームを転送できます。
PC-AとPC-Bが同じIPネットワークにも属していれば、 通常はルーターを経由せず、 同じVLAN内でL2通信できます。
異なるVLAN同士はL2スイッチだけでは通信できない
では、PC-AがVLAN 10、 PC-CがVLAN 20だった場合はどうでしょうか。
VLAN 10とVLAN 20は、 論理的に別のL2ネットワークです。
したがって、 L2スイッチの通常のフレーム転送だけではVLANを越えて通信できません。
異なるVLAN間の通信には、 ルーターやL3スイッチなどによるL3ルーティング が必要です。
VLAN間通信にはL3機器が必要
たとえば次のような構成です。
L3機器が VLAN 10とVLAN 20のIPネットワーク間をルーティングすることで、 異なるVLAN同士でも通信できます。
VLAN間にL3ルーティングを設定すれば、 異なるVLAN同士を通信させることもできます。 さらにACLやファイアウォールなどを組み合わせて、 通信を制御することもあります。
VLANとIPサブネットはどう関係する?
実際のネットワーク設計では、 1つのVLANに1つのIPサブネットを対応させる 構成が一般的です。
192.168.10.0/24
192.168.20.0/24
192.168.30.0/24
このようにすると、
という形で、 L2のVLANとL3のIPネットワークを対応付けて設計できます。
VLANそのものはL2の仕組みです。 一方、192.168.10.0/24などはL3のIPネットワークです。 実際の設計ではこの2つを対応付けることが多いため、 セットで目にする機会が多くなります。
VLAN IDとは?
VLANを識別するために利用する番号が VLAN IDです。
たとえば、
のようにVLAN番号を割り当てます。
IEEE 802.1QのVLAN IDフィールドは12ビットで、 通常利用可能なVLAN IDとして 1~4094が扱われます。
「SALES」「DEVELOPMENT」などのVLAN名は 管理者が分かりやすくするための名称です。 VLANを識別する中心となる情報は VLAN IDです。
CiscoスイッチでVLANを作成するイメージ
Cisco IOSでは、 たとえば次のようにVLANを作成できます。
Switch> enable
Switch# configure terminal
Switch(config)# vlan 10
Switch(config-vlan)# name SALES
Switch(config-vlan)# exit
Switch(config)# vlan 20
Switch(config-vlan)# name DEVELOPMENT
これでVLAN 10とVLAN 20という 論理的なLANを作成できます。
ただし、 VLANを作っただけではPCが自動的に所属するわけではありません。
「VLAN 10所属」にするにはどうするのでしょうか?
そのとき重要になるのが、 次の記事で学習する Accessポートです。
ここで実際に試してみよう:VLAN分割シミュレーター
4台のPCをVLAN 10とVLAN 20へ割り当てて、 ブロードキャストがどこまで届くか確認してみましょう。
VLAN Broadcast Simulator
VLANを確認して送信してください
PC-AはVLAN 10です。 VLAN 10に所属する端末だけがBroadcastを受信します。
理解度チェック:この2台はL2だけで通信できる?
通信したい2台を選んで、 同一VLANかどうか確認してみましょう。
通信する2台を選んでください
同じVLANならL2スイッチで通信できます。 異なるVLANならL3ルーティングが必要です。
複数のスイッチで同じVLANを使いたい場合は?
ここまでの例では、 1台のL2スイッチだけでVLANを考えてきました。
しかし企業ネットワークでは、 複数のスイッチにまたがって 同じVLANを利用することがあります。
このとき、 Switch-AとSwitch-Bの間で VLAN 10とVLAN 20の両方のフレームを運ぶ 必要があります。
スイッチポートをどのように設定すればよいのでしょうか?
ここで登場するのが、 Accessポートと Trunkポートです。
VLANはトラブルシューティングでも重要
PCが想定と異なるVLANに所属すると、 同じLANとして通信できなくなる場合があります。
MACアドレステーブルのVLAN番号と ポートを確認します。
異なるVLAN同士を通信させる場合は、 L3側の設定も確認します。
確認問題:VLANの仕組みを理解できたか確認しよう
VLANの主な役割として適切なものはどれですか?
VLANを利用すると、 同じ物理スイッチ上でも 論理的に複数のL2ネットワークへ分割できます。
VLAN 10から送信されたL2ブロードキャストは、 基本的にどこまで届きますか?
VLANごとにブロードキャストドメインが分かれるため、 VLAN 10のブロードキャストは VLAN 10内でフラッディングされます。
VLAN 10とVLAN 20の端末を通信させるために必要なものはどれですか?
異なるVLANは別のL2ネットワークなので、 VLAN間通信にはL3ルーティングが必要です。
3問に挑戦してみましょう。
まとめ
VLANは LANを論理的に複数へ分割する仕組み
同じ物理スイッチに接続されていても、 異なるVLANなら別のL2ネットワーク として扱われる
VLANごとに ブロードキャストドメインを分離 できる
異なるVLAN同士の通信には ルーターまたはL3スイッチによるルーティング が必要
次はVLANを実際のスイッチポートで扱うための AccessポートとTrunkポート を学習する
次は「AccessポートとTrunkポートの違い」を学びましょう
VLANによって、 1台のスイッチを論理的に複数のLANへ分割できることを学びました。
次は、 PCを特定のVLANへ所属させるAccessポートと、 1本のリンクで複数VLANを運ぶTrunkポート の違いを学習します。
VLANを実際のスイッチ構成へ落とし込むうえで、 非常に重要な内容です。
AccessポートとTrunkポートの違い →
