STAGE 03 / VLANとトランク

VLAN間ルーティング

考えてみよう

VLANを分けると、それぞれのVLANはブロードキャストドメインとして独立します。では、VLAN10の機器からVLAN20の機器へ通信したいとき、どうすればよいのでしょう?

VLANを分けるとお互いに直接通信できなくなります。異なるネットワーク(サブネット)同士の通信には、必ずある機器の力が必要でしたね。STAGE01を思い出しながら考えてみてください。

VLANを分けたら、ルーターの出番

前回までで、VLANによってブロードキャストドメインを分割できることを学びました。ですが分割したままでは、VLAN10とVLAN20の機器はお互いに通信できません。VLANはそれぞれ別のネットワーク(別のマンション)のようなものなので、マンション間を行き来するにはルーティング、つまりルーターの力が必要です。これをVLAN間ルーティングと呼びます。

実現方法は主に3つあります。順番に見ていきましょう。

方法1:ルーテッドポート(物理インターフェースを複数使う)

一番素朴な方法は、ルーターの物理インターフェースをVLANの数だけ用意し、それぞれをスイッチのアクセスポートに1本ずつつなぐやり方です。VLAN10用のケーブル、VLAN20用のケーブルと、マンションの部屋ごとに専用の入り口を作るイメージです。

Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip address 192.168.10.1 255.255.255.0
Router(config-if)# no shutdown
Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip address 192.168.20.1 255.255.255.0
Router(config-if)# no shutdown

確実に動きますが、VLANが増えるたびに物理ポートとケーブルが必要になり、現実的ではありません。

方法2:router-on-a-stick(1本のトランクで済ませる)

そこで登場するのがrouter-on-a-stickです。ルーターとスイッチの間を1本のトランクリンクだけでつなぎ、ルーター側はサブインターフェースという論理的な分身を作って、VLANごとに1つずつ割り当てます。1本の回線に複数の看板(VLAN)を掲げるようなイメージです。

Router(config)# interface GigabitEthernet0/0
Router(config-if)# no shutdown
Router(config)# interface GigabitEthernet0/0.10
Router(config-subif)# encapsulation dot1q 10
Router(config-subif)# ip address 192.168.10.1 255.255.255.0
Router(config)# interface GigabitEthernet0/0.20
Router(config-subif)# encapsulation dot1q 20
Router(config-subif)# ip address 192.168.20.1 255.255.255.0

GigabitEthernet0/0.10 がVLAN10用、.20 がVLAN20用のサブインターフェースです。encapsulation dot1q 10 で「このサブインターフェースはVLAN10のタグが付いたフレームを扱う」と宣言し、その上でIPアドレスを設定します。物理インターフェース自体(0/0)にはIPアドレスを設定しない点に注意してください。スイッチ側は、ルーターにつながるポートをswitchport mode trunkにしておく必要があります。

確認問題

router-on-a-stickの設定で、物理インターフェースGigabitEthernet0/0自体にIPアドレスを設定するべきでしょうか?

答えを見る

いいえ、設定しません。IPアドレスはGigabitEthernet0/0.10のようなサブインターフェースごとに設定します。物理インターフェースはno shutdownだけしておき、あとはencapsulation dot1qでVLANごとの論理インターフェースを作ってIPアドレスを割り当てます。

方法3:L3スイッチのSVI(一番実務的)

現場で最もよく使われるのが、レイヤー3スイッチSVI(Switch Virtual Interface)を使う方法です。スイッチ自体にルーティング機能を持たせ、VLANごとの仮想インターフェース(interface vlan 10)にIPアドレスを設定します。

Switch(config)# ip routing
Switch(config)# interface vlan 10
Switch(config-if)# ip address 192.168.10.1 255.255.255.0
Switch(config-if)# no shutdown
Switch(config)# interface vlan 20
Switch(config-if)# ip address 192.168.20.1 255.255.255.0
Switch(config-if)# no shutdown

STAGE02で「スイッチのSVI(interface vlan 1)」を管理用IPの設定に使いましたが、L3スイッチではこのSVIの仕組みをそのままVLAN間ルーティングにも使います。ポイントはip routingをグローバルコンフィグで有効にすることです。これを忘れると、SVIにIPアドレスを設定してもルーティングは動作しません。トランクリンクや外部ルーターを介さずスイッチ内部で高速に処理できるため、大規模なネットワークではこちらが主流です。

確認問題

L3スイッチでVLAN間ルーティングを行うために、SVIへのIPアドレス設定以外に必ず必要なコマンドは何でしょう?

答えを見る

ip routingをグローバルコンフィグモードで有効にする必要があります。これを忘れると、各VLANのSVIにIPアドレスを設定していても、VLAN間の通信はルーティングされません。

試験でのポイント

CCNA試験では、router-on-a-stickの設定コマンド(encapsulation dot1q、サブインターフェースの命名規則)と、L3スイッチのSVI・ip routingコマンドの組み合わせが頻出です。「物理インターフェースにIPを設定していないか」「ip routingを忘れていないか」という2点は典型的な引っかけとして出題されます。また、router-on-a-stickはスイッチ側のポートが必ずトランクである必要がある点、L3スイッチのSVIは対応するVLANが存在し、かつそのVLANに所属するアクセスポートがupしていないとSVI自体もupしない点も押さえておきましょう。

ゆみちゃん
ゆみ

VLAN間ルーティングの3つの方法、整理できたかな。物理ポートを複数使う方法、router-on-a-stickでトランク1本にまとめる方法、そしてL3スイッチのSVIで内部完結させる方法。実務ではSVIが主流だけど、試験ではrouter-on-a-stickの設定手順もよく問われるから両方覚えておいてね。次はいよいよSTP、なぜループを防ぐ仕組みが必要なのかを見ていくよ。