1.VLANとは
VLAN(Virtual LAN)は、仮想的なネットワークを作るものである。
過去問(H17SW秋午後問1)に、VLANについて整理されているので紹介する。
| 企業向けのスイッチには,物理的な接続形態とは独立した仮想的なネットワークのグループを構成する“VLAN"機能をもつものがある。VLANを用いることで,複雑な形態のネットワークを容易に構築できるとともに,[ b ]にも柔軟に対応できるようになる。VLAN方式の主なものには,ポートベースVLANとタグVLANの2種類がある。 (中略) タグVLANは[ c ]として標準化されているので,異なるスイッチベンダの製品を使ったマルチベンダ環境でも利用が可能である。 |
↓
↓
↓
↓
↓
解答:b サブネット構成の変更
c IEEE802.1Q
タグVALNのフレーム構造に関しては、この後の記事を確認してほしい。簡単にいうと、送信元MACアドレスとタイプの間にVLAN番号が挿入される。
ではここで問題。
| ①ネットワークを分割し、ブロードキャストドメインを分割するものは何か。 ②コリジョンドメインを分割するものは何か? |
■答
ブロードキャストドメインの分割:VLAN
コリジョンドメインの分割 :スイッチングハブ
せっかくなので、理解を深めるために、以下の過去問(H29秋SC午前2問18)も解いてみよう。
| 過去問(H29秋SC午前2問18) |
|---|
| 問18 ルータで接続された二つのセグメント間でのコリジョンの伝搬とブロードキャストフレームの中継について,適切な組合せはどれか。 コリジョンの伝搬 ブロードキャストフレームの中継 ア 伝搬しない 中継しない イ 伝搬しない 中継する ウ 伝搬する 中継しない エ 伝搬する 中継する |
↓
↓
↓
↓
↓
正解はア
2.ポートVLANとタグVLAN
VLANには、ポートVLANとタグVLANの2つがある。
過去問(H17SW秋午後問1)に、両者の内容がきれいに解説されている。
| ポートベースVLANでは,スイッチの物理的なポートごとにVLANグループを設定する。一方,タグVLANでは通信パケット中に埋め込まれたタグIDを基にVLANグループの設定が可能である。タグVLANでは,一つの物理的なポートが複数のVLANグループに所属できるので,複数のスイッチ間を1本の物理的なケーブルで接続しただけでも,各スイッチで複数VLANグループの利用が可能になる。 |
理屈はなんとなくわかりますが・・・
実際に自分で設定しないと、イメージがわかないです。
そうですね。実際に設定することをお勧めします。
皆さんのおかれている環境によっては、実際に設定することが難しいかもしれません。そんな場合は、実際の設定がどうなっているかを確認するだけでも、イメージがわきやすくなる。
以下に、実際の設定を簡単に紹介する。
1.ポートVLAN
ポートごとにVLANを割り当てる。以下はCisco社のSwitchであるCatalystのポート1番にVLAN10を割り当てた場合の設定である。
Configは試験には出ないが、Configも見ておくと理解が深まる。
| Switch(config)#vlan 10 ←vlan10を新規に作成(初回にだけ実行します。実はこのコマンドは実行しなくても可) Switch(config-vlan)#exit Switch(config)# interface fastethernet 0/1 ←インターネットの1番を指定 Switch(config-if)# switchport mode access ←ポートVLANに設定 Switch(config-if)# switchport access vlan 10 ←VLAN番号を10に指定 |
ポートVLANが設定されたポートを「アクセスポート」と言います。アクセスポートという言葉は、H30NW午後Ⅰ問2で登場します。
2.タグVLAN
VLANタグをフレームに挿入し、タグのVLAN情報を見てVLANを判断する。上記と同様にポート2番にTrunk設定をする。Allowd Vlanというのは、許可するVLANである。この場合はVLAN10と20を許可している。
| Switch(config)# interface fastethernet 0/2 Switch(config-if)# switchport trunk allowed vlan 10,20 Switch(config-if)# switchport mode trunk |
タグVLANが設定されたポートを「トランクポート」と言います。トランクポートという言葉は、H30NW午後Ⅰ問2で登場します。
3.ネイティブVLAN(Native VLAN)
H21NW午後1問1の問題文の中で、ネイティブVLANのことを「タグVLANを使用して中継するVLANの一つを特別なVLANとして扱い、タグを付加しないフレームを使用する」と説明している。
タグVLANの中で、唯一タグ付けしないVLANである。Ciscoであれば、通常はVLAN1がネイティブVLANである。Trunkが設定しているポートからは通常はタグ付けされたフレームしか流れないが、VLAN1だけはタグが付かない。よって、(dot1Qの設定がしていない)パソコンが接続されても通信ができる。
CiscoでネイティブVLANを設定(変更)するコマンドは以下である。
| Switch(config-if)# switchport trunk native vlan 30 |
■いっそのこと、全部タグVLANにしては?

大は小を兼ねるじゃないですけど、
タグVLANはポートVLAN以上のことができるはずです。
であれば、スイッチのポートを全てタグVLANで設定してはどうですか?
まあ、やれなくもないですね。
でも、やらないです。
理由は2つあります。
❶相手がPCなどと通信をする場合に、PC側もタグVLANの設定をする必要がある。
タグVLANはフレームフォーマットが異なります。タグVLANで送受信するには、送受信する双方の機器でタグVLANを設定する必要があります。PCにタグVLANを設定することもできますが、面倒ですよね。
❷オーバヘッドが増える
たった2バイトではありますが、タグVLANのフレームはVLAN情報を付与するためにヘッダが2バイト増えます。データとは関係がないヘッダ部分が増えるということは、トラフィックの伝送効率が落ちるのです。最適とは言えませんね。
3.VLANのフレーム
まずはイーサネットのフレーム構造を思い出し、違いを確認してください。以下にあるように、送信元MACアドレスとタイプの間に4バイトのVLAN情報(802.1Qヘッダ)が入る。※タイプとデータの間ではない。

・VLANタグ(=IEEE802.1Qヘッダ)は4バイト
| フィールド名 | 長さ(bit) | 説明 |
|---|---|---|
| TPID (Tag Protocol Identifier) | 16 | 通常のタグVLAN(IEEE802.1Q)では,0x8100という固定値 |
| TCI (Tag Control Information) | 16 | 以下の3つのフィールドに分かれる |
| └ CoS | 3 | 優先度で、値は0〜7。IEEE 802.1pによる優先制御で利用される |
| └ DEI | 1 | 覚えなくていいので無視しましょう。旧称:CFI |
| └ VLAN ID | 12 | 2の12乗=4096の値が取れるが、0と4096は利用できないので、実際には4094のVLAN IDが設定できる |
■ネットワークスペシャリスト試験の過去問(R3午後Ⅰ問3)
| 過去問(R3NW午後Ⅰ問3) |
|---|
| 問題文:②ITELのアップリンクポートにタグVLANを設定する。 設問4(1)本文中の下線②について,レイヤ2のCoS値を基にした優先制御にはタグVLAN が必要になる。その理由を,30字以内で述べよ。 |
↓
↓
↓
↓
↓
設問にある通り、タグVLANのフィールドの中のCoS値で優先制御をします。
解答例:フレーム中のタグ情報内の優先ビットを使用するから(24字)
■ネットワークスペシャリスト試験の過去問(H25NW午後Ⅰ問3)
| 過去問(H25NW午後Ⅰ問3) |
|---|
| 〔IEEE 802.1Qトンネリング〕 VLAN用の〔 ア 〕は, 32ビットで構成され,VIDには〔 イ 〕ビットが割り当てられる。 |
↓
↓
↓
↓
↓
ア:IEEE802.1Qにおいて,フレームに付与するVLAN情報について問われています。正解は「タグ」です。具体的には、16ビットのTPIDと,16ビットのTCIからなる合計32ビットの情報です。問題文の〔IEEE802.1Qトンネリング〕では,「VLANタグ」と何度も示されており,ヒントになっています。
解答:タグ
イ:タグに付与する情報のうち,VID(VLANID)に割当てるビット数を問われています。VIDは12ビットです。正答率は低かったようです。
採点講評には、「VLAN数に制約があることは知っていても,どのような理由によるものなのかを理解していないものと思われる。技術用語や数値については,単に暗記するだけでなく,その理由や仕組みを理解しておいてほしい」とあります。まさしくその通りだと思います。VLAN数の制約は、VIDが12ビットしかないからです。その点を理解していて、設定できるVLANの上限が約4000という値を覚えていた人は、4096=2の12乗から逆算して正解を導けたことでしょう。
解答:12ビット
最大4094個であることは分かりましたが、飛び飛びの番号はダメなのですか?
たとえば、10,20,30・・・で40940までとか。
ダメです。ためしに、Catalystのスイッチで、20000番のVLANを作成してみましょう。 以下のように、VLAN IDは1番から4094番であると怒られます。
| Switch(config)#vlan 200000 Command rejected: Bad VLAN list - character #7 (EOL) delimits a VLAN number which is out of the range 1..4094. |
4.VXLAN
4.1 VXLANとは
VXLAN(ブイエックスラン:Virtual eXtensible Local Area Network)はフルスペルのとおり仮想的にLANをeXtensible(拡張)したプロトコルです。従来からあるVLANの場合,設定できるVLAN IDの上限は4094個です(VLAN IDは12ビットで,2の12乗=4096)。一般の企業において,この上限値を超えることはあまりないでしょう。一方,AWSやAzureのような大規模クラウドサービスの場合,4094ではまったく足りません。そこで,VXLANです。
VXLANでは,VXLANを識別するVNIというIDを約1,677万個作成できます(VNIは24ビットで,2の24乗=16,777,216)。プロトコル上は約1,677万のレイヤー2ネットワークを作れるようになるのです。
さて,VXLANの名前だけ見ると,レイヤー2プロトコルのような印象を受けます。実際,VXLANによって,離れた場所にあるセグメント間を,あたかも同一セグメントであるかように接続できます。ですが,VXLANは,VLANのようにレイヤー2に閉じた技術ではありません。VXLANは,レイヤー2のイーサネットフレームをレイヤー3のIPパケットにカプセル化する仕組みです。こうして,物理的または論理的に離れた場所にあるレイヤー2ネットワーク(セグメント)間を,レイヤー3ネットワークを経由して相互に接続できます。
4.2 オーバーレイネットワークとアンダーレイネットワーク
オーバーレイ(overlay)という言葉には,「重ねる」「被せる」の意味があります。オーバーレイネットワークとは,下層のネットワーク(アンダーレイネットワーク)の上に被せて作ったネットワークのことです。
R6の問題では,オーバーレイネットワークを実現する技術としてVXLANを使います。具体的には,下層にあるアンダーレイネットワークの上にレイヤー2のオーバーレイネットワークを作ります。(ちなみに,オーバーレイネットワークでは,ポートベースVLANも作成できます。)
たとえば,AWSの東京リージョンの場合,172.31.0.0/16というVPC(仮想ネットワーク)が,三つのデータセンター(AZ)をまたがって構築されます。そして,各AZ内に172.31.1.0/24,172.31.2.0/24 などの複数のサブネットを作ります。もちろん,利用者Aも利用者Bも利用者Cも,それぞれの172.31.0.0/16という同じVPCを利用できますが,それぞれは独立しており通信が混じることはありません。内部仕様は公開されていないので憶測が含まれていますが,以下のような構成です。まず,データセンタ間を接続するために,L3SWやルータなどを使ってレイヤー3のネットワークを作ります。これがアンダーレイネットワークです。次に,VXLANを使い,このアンダーレイネットワーク上に,仮想的なレイヤー2のネットワーク(オーバーレイネットワーク)を複数作ります。

4.3 VNI(Virtual Network Identifier)
VNIは,VXLANで作る論理的なネットワークの番号(Identifier:識別番号)です。VLANではVLAN IDでVLANを識別し,VLAN IDは12ビット(=4,096)でした。一方のVXLANのIDであるVNIは24ビット(=約1,677万)です。つまり,約1,677万個のL2ネットワークを作ることができます。
4.4 VXLANパケット
VXLANパケットは,L2フレームをIPパケット(UDP)でカプセル化したものです。VXLANパケットの構造は,問題文で以下のように示されました。

では,VLANとVXLANのフレームの違いを見てみましょう。
VLANはレイヤー2の情報だけで構成されますが,VXLANはレイヤー3の情報(IPv4ヘッダー)とレイヤー2の情報(VNIヘッダーやイーサネットフレーム)で構成されています。


先頭のIPv4 ヘッダー,UDPヘッダー,VXLANヘッダーはアンダーレイネットワークの情報です。イーサネットフレームは,オーバーレイネットワークの情報です。

このネットワーク構成図で補足します。イーサネットフレームのデータ部分には、実際にはIPヘッダもあります。そのIPアドレスは、構成図にあるように192.16.1.xのIPアドレスです。そして、VLXNではVLAN110を識別するための情報として、例えばVNI=10010が記載されます。そして、IPヘッダでは、アンダーレイネットワークとして、10.0.0.xのIPアドレスで通信が行われます。
5.QinQ(IEEE 802.1ad)
ネットワークスペシャリスト試験の過去問(H25NW午後Ⅰ問3)には次の記述がある。
| ある顧客のIEEE 802.1Qタグ付きのイーサネット通信(以下, VLAN通信という)を,他の顧客の設定に影響を与えずに,NW基盤を経由して転送させるには, IEEE 802.1Qトンネリング技術が必要となる。このトンネリングは,顧客のVLANタグ付きのパケットを,更に別のVLANタグを付けることによってカプセル化する。これは, IEEE 802.1adによって標準化されている。 |
VLANタグを二重に付与するIEEE 802.1adについて述べられている。IEEE802.1QのVLANタグの中にIEEE802.1QのVLANタグを入れるという意味のQinQという言葉の方が、馴染み深い人もいることだろう。仕組みはシンプルで、VLANタグをもう一つ付けるだけ。広域イーサネットサービスなど、複数の顧客にネットワークサービスを提供するシーンで利用される。
フレーム構造は以下のようになる。TPIDはIEEE802.1ad用の0x88a8という値をとる。
