規模の大小にかかわらずネットワークを分離したいニーズはありますね。
しかし、L3スイッチや多セグメントが設定できるルータ、複数のLANポートを持つサーバやNASはそこそこ高価だし、L3スイッチで分けた複数セグメントを設定管理するのも面倒なものです。
小規模なネットワークなら、「マルチプルVLAN」構成とすることで、一つのIPセグメント内で比較的安価に分離と共用が実現できます。
- L3スイッチに比べれば比較的安価なL2 VLANスイッチを使えます。
- 「タグ」を直接扱えず、LAN側に一つのセグメントしか扱えない安価なルータが使えます。
- LANポートが一つしかないサーバ、NASを、相互に通信させたくない分離したネットワークから共用するネットワークが構成可能です。
では、「マルチプルVLAN」の動作を「VLANの掟!」でどう説明できるか、次のようなネットワークを組んだとして実際に検証してみましょう。また、後半では「マルチプルVLAN」構築の大事なポイントである「お帰りVLAN」についても解説します。
★IEEE802.1Q VLANの掟★
まずおさらいです。
IEEE802.3Q VLAN対応のスイッチングHUBの概念的動作は、次の3か条の「掟」ですべてを説明できます。
- 各ポートは、受信したフレームに次の処理をして、スイッチエンジンに渡す
・Taggedフレームはそのまま
・Untagフレームは当該ポートのPVIDの値を「VIDフィールド」に持つ「タグ」フィールドを追加(FCSも計算しなおしたうえで) - スイッチエンジンは、渡されたフレーム内「VIDフィールド」値をVIDにもつVLANに属するメンバポートに当該フレームを渡す
- 渡された各ポートは、渡されたフレーム内の「タグ」に次の処理をし、宛先MACアドレスの学習状況にしたがって送信可能な場合外へ送信する
・自身が当該のVLANにおいてtaggedメンバに設定されている場合は、そのまま「タグ」フィールド付で
・自身が当該のVLANにおいてuntagメンバに設定されている場合は、「タグ」フィールドを削除して(当然FCSも計算しなおし)
事例で確認!マルチプルVLAN
図4は、「マルチプルVLAN」の事例です。
事務所PCと来客PCはそれぞれルータを経由してインターネット側と通信できます。
一方で、事務所PCと来客PCはお互いに直接通信することはできません。
以下順にフレームの流れを「VLANの掟!」で確認してみましょう。
- 事務所PCがインターネットに接続しようとルータにフレームを送ると(図5-1)、
事務所PCのMACアドレス「B」が「ポート2」に学習されます。
また「ポート2」のPVIDである「2」がVIDフィールドにセットされた「タグ」が追加され(図5-2)、スイッチエンジンに送られます。(掟第1条)
- フレームを受けとったスイッチエンジンは、VIDフィールドの「2」をVIDにもつVLAN2のメンバであるポートのうち、条件にしたがって次のポートに当該フレームを送信します。(掟第2条)
・ルータのMACアドレス「A」がどのポートにも学習されていない状態⇒「ポート1」と「CPU」
・ルータのMACアドレス「A」がポート1に学習されている状態⇒「ポート1」だけ
(「ポート1」にルータからのフレームを受信していた直後の状態ですね) - 「ポート1」はVLAN2のuntagメンバなので、「ポート1」では転送されたフレームの「タグ」を除去して(ルータに向けて)送信します。(掟第3条)(ここまで図6)
- インターネット側から事務所PCに向けて送られてくる応答を含むフレームは、ルータから「ポート1」に送られてきます。
「ポート1」にはルータのMACアドレス「A」が学習されます。
またルータから送信されたフレームはuntagフレームです。
したがって「ポート1」のPVIDである「1」がVIDフィールドにセットされた「タグ」が追加されたうえで、スイッチエンジンに送られます。(掟第1条) - フレームを受けとったスイッチエンジンは、VIDフィールドの「1」をVIDにもつVLAN1のメンバであるポートのうち、条件にしたがって次のポートに当該フレームを送信します。(掟第2条)
・事務所PCのMACアドレス「B」が「ポート2」に学習されている場合⇒「ポート2」だけ
・事務所PCのMACアドレス「B」がどのポートにも学習されていない場合
⇒「ポート2」「ポート3」「ポートn」「CPU」のすべて - 「ポート2」はVLAN1のuntagメンバなので、「ポート2」では転送されたフレームの「タグ」を除去して(事務所PCに向けて)送信します。(掟第3条)(ここまで図7)
- 仮に事務所PCが来客PCのMACアドレス情報を持っていて、来客PCあてのフレームを作成し送信した場合を見てみましょう。
1項と同様、当該フレームには「ポート2」のPVIDである「2」がVIDフィールドにセットされた「タグ」が追加されたうえで、スイッチエンジンに送られます。(掟第1条) - 事務所PCが送信した来客PCのMACアドレス「C」あてのフレームのVIDフィールドは「2」であるため、スイッチエンジンはこのフレームをVLAN2のメンバであるポート(すなわち「ポート1」「CPU」)だけに転送します。
VLAN2のメンバでない「ポート3」には転送しないので、このフレームは来客PCに届きません。(掟第2条)(ここまで図8)
このようにしてL2でのネットワークを2つに分割し、かつ分割したネットワーク双方から同じルータを利用したインターネット接続を実現するネットワークが構築できます。
L2 マルチプルVLAN構築のポイント:お帰りVLAN
この構築例のミソはルータ収容ポートのPVIDに設定しているVLAN1で、ルータ収容ポートとルータを利用する機器が接続されているポートをすべてVLAN1のメンバにしている点です。
私は、このケースでのVLAN1を「お帰りVLAN」と呼んでいます。
分割する機器を収容するポートのPVIDは、それぞれ分割したVLANのVID「2」あるいは「3」を設定しています。
PVIDが「2」のポートはVLAN2と「お帰りVLAN」(1)のメンバですが、VLAN3のメンバには設定していません。この設定によって、「お帰りVLAN」からのフレームは届きますが、VLAN3からのフレームは届きません。
同様にPVIDが「3」のポートはVLAN3と「お帰りVLAN」(1)のメンバですが、VLAN2のメンバには設定していません。この設定によって、「お帰りVLAN」からのフレームは届きますが、VLAN2からのフレームは届きません。
ルータ収容ポートは、VLAN1、VLAN2、VLAN3のそれぞれにuntagメンバとして設定しています。この設定によってVLAN2、VLAN3からのフレームもルータ収容ポートに届きます。
PVIDが「2」のポート収容の機器から送信されたフレームはVLAN2のメンバポートにだけ転送され、VLAN3のメンバポートには転送されることはありません。
まとめ
以上で、「マルチプルVLAN」の動作が、「VLANの掟!」で説明できることが検証できました。
「マルチプルVLAN」では「お帰りVLAN」をお忘れなく!
L2での「マルチプルVLAN」の構成では、ルータやサーバなど、分離した各VLANから共有する機器が送信するフレームをすべての利用機器に届けるための「お帰りVLAN」を設定することが重要ポイントです。
コメント