異VLAN間ブリッジング(大嘘)

セキュリティ

0.前書き

タイトルを見て、「そんなことできるわけあるかいな」って思ったそこのあなた

どうぞそのまま正しいVLANの知識を持ち続けてください。

 

今回はわかっていそうで、わかった気になっていただけかもしれないVLANのお話です。

 

1.Fortigateの異VLAN間ブリッジング(大嘘)

百聞は一見に如かずということでスクリーンショットをご覧ください。

PC3台、L2スイッチ1台、Fortigate1台の何の変哲もない簡易な構成です。(Fortiの右側は、Fortiをライセンス認証するためにインターネット抜けさせているだけなので、いったん無視してください。)

【DESKTOP-0】

IP:192.168.2.2/24

GW:192.168.2.99

 

【DESKTOP-1】

IP:192.168.2.4/24

GW:192.168.2.99

 

【DESKTOP-2】

IP:192.168.2.3/24

GW:192.168.2.99

 

【Fortigate(ソフトウェアSWインターフェース)】

IP:192.168.2.99/24

 

 

PCそれぞれ(192.168.2.0/24)からデフォルトゲートウェイであるFortigateのソフトウェアSWインターフェース(192.168.2.99)へICMPを飛ばして、返答が返ってきています。

すべて同じネットワークなので、当然ですね。

 

しかしよく見ると、なぜかFortiとL2スイッチ(iosvl2-1)間にリンクが2つあります。

 

おいおいこれだとLAG組まないとL2ループしちゃうぞ…と言いたいところですが、さらによく見てみるとL2SW側のインターフェースのアクセスポートには異なるVLANが割り当てられています。

 

そうです、同一ネットワークに異なるVLANを割り当てて疎通できているというのが今回の本題です。

 

では、次のスクリーンショットをご覧ください。

デフォルトゲートウェイだけでなく、PC同士が互いに疎通できています。

VLANを理解し始めたばかりの初学者が見たら混乱必至でしょう。

 

本来、異なるVLAN同士は疎通できません。これはL2層の原則です。

L3層に到達できればルーティングで異なるVLAN同士を疎通させることも可能です。

 

今回の場合、ICMPの同VLAN同士と異VLAN間との到達時間から察するに、同VLAN同士はL2SWで折り返し、異VLAN間はFortigateで折り返していると予想できます。

 

L2層の原則では異なるVLAN同士は疎通できないということは、逆にL1層やVLANを理解しないL2機器なら疎通できてしまうということで、思いつくのはリピータハブやアンマネージドスイッチング。

こいつらはVLANを理解しません。そこで検証してみました。

 

疎通できましたね。これは右のルータの電源を切っても同じです。

つまり、L2からL3までの道筋の中でVLANを理解できない機器が途中にいると、そこでVLANによるブロードキャストドメインが崩壊するということです。(VLANによって隔離された環境ではなくなる)

文章でいうと当然と言えば当然ですが、図にしてみて初めて分かることもあると思います。

 

では、本題に戻りましょう。

FortigateのソフトウェアSWインターフェースにはVLANを紐づけることもできますが、今回は紐づけていません。

また、本来L2SWであればデフォルトVLANという概念がありますが、VLAN1からもVLAN2からも疎通できている時点でVLANを設定していないFortigateにはデフォルトVLANは存在していないことがわかります。

 

つまりVLANを何も紐づけずにIPだけ振るとFortigateは、VLANを理解しないスイッチングハブ+ルータとなり、VLANブロードキャストドメインとしては穴が開いた状態になります。

その結果、異VLANの同一ネットワークで疎通ができるというわけです。

 

【備考】

L3SWやルータ1台ではこうはなりません。

ルータはそもそも同一ネットワークは1つのインターフェースにしか設定できないので、2つ接続するにはL2以下の機器が必要です。

 

L3SWの場合はどうでしょうか。

 

 

疎通できません。

この図のVLAN20はL3SW側のポートに入ることはできますが、ゲートウェイである192.168.10.254はVLAN10のSVIであり、VLAN20からは隔離されているからです。

 

検証できていませんが、これは本題の図のFortigateとL2SWの間をタグVLANにしても同様だと思います。

結局タグVLANを設定する上でVLAN1とVLAN2のインターフェースを作成し、それぞれIPを設定してソフトウェアSWインターフェースに紐づける時点で、VLAN1とVLAN2は疎通できなくなるはずです。VLAN同士を通信させるにはVLAN2のネットワークセグメントを変えて、PCのIPやゲートウェイも変更する必要があります。

 

2.後書き

ネットワークに絶対の正解はありませんが、定石は存在します。

少なくとも今回のように同一ネットワーク内に異なるVLANを割り当てることは、技術的に可能であっても管理上望ましくない場合が多いです。

 

また、今回の件で改めて分かったのは、VLANとネットワークセグメントは基本1:1の関係なので、VLANをネットワークセグメントと同じくエリアでとらえてしまいがちですが、VLANはエリアの中にあるゲートウェイまでの道筋としてとらえることが重要だと思いました。

 

おしまい

コメント

タイトルとURLをコピーしました