広告
広告
https://www.7key.jp/nw/lan/vpn/vlan.html#vlan
VLANはVirtual LAN の略で仮想LANと和訳されます。一口にLANと言っても様々ですが、VLANのLANはブロードキャストドメインのことを指しています。ブロードキャストドメインはブロードキャストフレーム(送信先MACアドレスのビットが全て1)が届く範囲であり、ルータやレイヤ3スイッチなどネットワーク層レベルの中継機器を介さず通信が可能な範囲です。この範囲を仮想的に分割することがVLANの機能と言うわけです。ではVLAN機能を持たないスイッチで構成されたネットワークと比較してみましょう。スイッチではブロードキャストドメインを区切ることはできません。ですから下図(Figure:VLAN-01)のようにホストAが送信したブロードキャストは全てのホストに届きます(ブロードキャストなので当たり前と言えば当たり前ですが)
実際このブロードキャストはTCP/IPに限らず非常に良く使われています。ARPリクエストにDHCPブロードキャストなど、これらのブロードキャストによってネットワーク全体の帯域幅を消費するだけでなく、フレームを受信したコンピュータの処理速度にまで影響を及ぼすのです。そこでブロードキャストドメインを複数に分割できるVLAN機能を持ったスイッチが登場したのです。これを使えば1台のスイッチに複数のブロードキャストドメインを作成することができます。言い換えますと、1台のスイッチの中に複数の仮想的なスイッチを作成することができるといったイメージです(Figure:VLAN-02)。
ただし、レイヤ2スイッチでは(レイヤ3スイッチを使えば単体でVLAN間のルーティングも可)VLAN間のルーティングはできません。ルーティングと言うよりもそもそも仮想スイッチはお互いに接続されていません。一切通信を行うことができませんので注意が必要です。
https://www.7key.jp/nw/lan/vpn/vlan.html#kind
VLANでブロードキャストドメインを分割する方法の内の一つがポートVLANと呼ばれるものです。これはスイッチのポートをグループ化し、それぞれのグループを独立したVLANとして扱う方法です(Figure:VLAN-03)。図を見てもらえれば分かるように、ポートVLANにて複数のスイッチをまたがってVLANを構築する場合、スイッチ間接続のためにVLANの数だけポートが必要となります。
ポートをグループ化する方法は大きく分けてスタティックVLANとダイナミックVLANの二つがあります。スタティックVLANは下表のように各ポートが所属するVLANを明示的に指定する方法です。
Port | VLAN |
---|---|
1 | 1 |
2 | 1 |
3 | 2 |
4 | 2 |
スイッチのポートを一つずつ設定するため、ホストが接続されているポートを変更した際にはそのポートが所属するVLANも変更する必要が出てきます。頻繁にレイアウト変更をするオフィスなどには向いていない方法かもしれません。一方、ダイナミックVLANはスイッチのポートに接続されるホストによって動的にポートが所属するVLANが変更される仕組みをとっています。ダイナミックVLANは「ホストの何を見てVLANを決定するか」により3つの種類に分類できます。MACベースVLANはホスト(に搭載されているNIC)のMACアドレス、サブネットベースVLANではホストのIPアドレス、ユーザベースVLANはホストのユーザグループによってポートが所属するVLANを決めます。スタティックVLANに比べ、ホストの場所を動かしても所属するVLANが変わることはありませんので管理の手間が軽減される場合もあるでしょう。
ポートVLANではスイッチ間接続のためにVLANの数だけポートを確保しなければなりませんでしたが、それを解決したのがタグVLAN(タギングVLAN)です。タグVLANはIEEE 802.1Q(ドットワンキュー)で規格化されたもので、Ethernetフレームに4オクテットの識別情報を付けることによって任意のポートを複数のVLANに所属させることができるのです。このように、複数のVLANに所属するポートのことをオーバーラップポートと呼びます。逆に1つのVLANに所属するポートはクライアントポートと呼ばれています。ポートVLANではクライアントポートしか作成できませんが、タグVLANではオーバーラップポートも作成できると言うことですね。
上図(Figure:VLAN-04)から分かりますように、VLANの識別情報は送信元MACアドレスとタイプの間に挿入されます。TPIDは固定で「0x8100」が入り、TCIのうち12ビットはVLAN番号が入ります(4096個のVLAN)。これらの識別情報はオーバーラップポートにEternetフレームが入った際に付加されます。当然CRCの値が変わってしまいますのでTPID、TCIを含めてCRCを再計算することとなります(オーバーラップポートを出て行く際は逆の動作)。これにより1つのポート同士を接続するだけで、複数のスイッチをまたいだVLANを構築することが可能となるわけです。
広告