VLANを分けて、VLAN間ルーティングまで通してみよう(総合演習)
ここまでのネットワークレッスンで覚えたコマンドをひとつの構築作業につなげます。
やることは「部署ごとにVLANで分ける → それでも必要な通信は通す」。オフィスのネットワークを設計するとき、ほぼ必ず通る道です。
VLANで分けると互いに通信できなくなります。それが狙いなのですが、実際には「営業部から社内サーバーには繋ぎたい」といった要求が出てきます。そこで必要になるのがVLAN間ルーティングです。
ページの一番下に本物の疑似ターミナルがあります。モードの状態はコマンドをまたいで続くので、上から順に打てばそのまま完走できます。
完成イメージ
最後まで進むと、こう表示されるところまで作ります。下の実行結果は、このページを作るときに実際にコードを走らせて得たものです。
$ show vlan brief VLAN Name Status Ports 1 default active 10 sales active GigabitEthernet0/1 20 dev active GigabitEthernet0/2 $ show ip interface brief Interface IP-Address Status Protocol GigabitEthernet0/1 unassigned up up GigabitEthernet0/2 unassigned up up Vlan1 unassigned administratively down down Vlan10 192.168.10.1 up up Vlan20 192.168.20.1 up up
STEP 1設定モードに入って名前を付ける
🎯 このステップのゴール: Ciscoのモード遷移を理解し、config モードまで進む
Cisco機器の操作で最初に覚えるのがモードです。プロンプトの記号が今どこにいるかを教えてくれます。
Switch>がユーザーモード。見ることしかできません。enableでSwitch#——特権モードに上がります。ここからconfigure terminalでSwitch(config)#——設定モードです。
設定を変えられるのは(config)から先だけです。「コマンドが通らない」というとき、たいていはモードが足りていません。プロンプトを見る癖をつけると迷わなくなります。
hostname SW1で機器に名前を付けます。プロンプトの表示が即座に変わるのが分かるはずです。台数が増えたとき、今どの機器を触っているかが名前で分かるので、実務では必ず設定します。
戻るときはexitで1段、endで一気に特権モードまで戻ります。
enable configure terminal hostname SW1
$ enable $ configure terminal Enter configuration commands, one per line. End with CNTL/Z. $ hostname SW1
STEP 2部署ごとにVLANを作る
🎯 このステップのゴール: VLANを2つ作り、名前を付けて区別できるようにする
VLANは、1台のスイッチの中をいくつかの独立したスイッチに分ける仕組みです。物理的に線を分けなくても、設定だけでネットワークを分離できます。
何が嬉しいのか。部署ごとに分けておけば、営業部のパソコンから開発部のサーバーには届きません。事故も攻撃も、届かないところには広がりません。ネットワークが1つのままだと、1台が乗っ取られたとき全体が危なくなります。
vlan 10で作り、name salesで名前を付けます。番号だけだと半年後に意味が分かりません。名前は必ず付けてください。
プロンプトが(config-vlan)#に変わっているのに注目してください。VLANの設定をする専用のモードに入っています。exitで(config)#に戻ってから、次のVLANを作ります。
show vlan briefで一覧を確認できます。まだどのポートも割り当てていないので、Portsの欄は空です。
vlan 10 name sales exit vlan 20 name dev exit
$ vlan 10 $ name sales $ exit $ vlan 20 $ name dev $ exit
STEP 3ポートをVLANに割り当てる
🎯 このステップのゴール: 物理ポートを、それぞれのVLANに所属させる
VLANを作っただけでは何も起きません。「どのポートがどのVLANか」を決めて初めて意味を持ちます。
interface GigabitEthernet0/1でポートの設定に入り、switchport mode access、switchport access vlan 10と続けます。
accessは「このポートは1つのVLAN専用」という意味です。パソコンやプリンタを繋ぐポートはこれです。対になるのがtrunkで、複数のVLANをまとめて流すためのもの——スイッチ同士を繋ぐ線に使います。
no shutdownを忘れないでください。Ciscoのポートは初期状態で閉じていることがあり、設定だけして繋がらない原因の定番です。noを頭に付けるとそのコマンドを打ち消す——これはCisco全体で共通の作法で、shutdownの逆がno shutdownです。
もう一方のポートをVLAN 20に割り当てたら、show vlan briefで確認します。Portsの欄にポート名が入っているはずです。
interface GigabitEthernet0/1 switchport mode access switchport access vlan 10 no shutdown exit interface GigabitEthernet0/2 switchport mode access switchport access vlan 20 no shutdown exit
$ interface GigabitEthernet0/1 $ switchport mode access $ switchport access vlan 10 $ no shutdown $ exit $ interface GigabitEthernet0/2 $ switchport mode access $ switchport access vlan 20 $ no shutdown $ exit
STEP 4VLANに出入口(SVI)を作る
🎯 このステップのゴール: VLANインターフェースにIPアドレスを振り、有効にする
ここがVLAN間ルーティングの肝です。
今のままだと、VLAN 10とVLAN 20は完全に別のネットワークで、互いに一切通信できません。繋ぐにはそれぞれのVLANに「出入口」を用意する必要があります。
それがSVI(VLANインターフェース)です。interface Vlan10と打つと、その場でVLAN 10用の仮想的なポートが作られます。実機でも同じで、入った瞬間に生まれます。
ここにip address 192.168.10.1 255.255.255.0でIPアドレスを振ります。これがVLAN 10に繋がっている機器から見た「出口の住所」——いわゆるデフォルトゲートウェイになります。各パソコンにはこのアドレスを設定します。
VLANごとに違うネットワークを割り当てるのが原則です。VLAN 10は192.168.10.0/24、VLAN 20は192.168.20.0/24。同じ範囲を重ねてはいけません——どちらへ送るか判断できなくなります。
ここでもno shutdownが要ります。SVIも初期状態では落ちています。
interface Vlan10 ip address 192.168.10.1 255.255.255.0 no shutdown exit interface Vlan20 ip address 192.168.20.1 255.255.255.0 no shutdown exit
$ interface Vlan10 $ ip address 192.168.10.1 255.255.255.0 $ no shutdown $ exit $ interface Vlan20 $ ip address 192.168.20.1 255.255.255.0 $ no shutdown $ exit
STEP 5ルーティングを有効にして通す
🎯 このステップのゴール: ip routing を入れ、VLANをまたいだ転送を有効にする
SVIにIPを振っただけでは、まだVLANをまたいだ通信は流れません。スイッチは初期状態では「転送する係」ではないからです。
ip routing——この1行で、スイッチがルーターとしても振る舞うようになります。VLAN 10宛のパケットとVLAN 20宛のパケットを、間に立って中継し始めます。
この機能を持つ機器をレイヤ3スイッチと呼びます。かつてはVLAN間を繋ぐのに別途ルーターが必要で、1本の線に複数VLANを流すルーターオンアスティックという構成が使われていました。今はスイッチ自身がやってしまうのが主流です。
この1行を忘れるのが、VLAN間ルーティングで最も多いつまずきです。VLANもIPも正しいのに繋がらない——というとき、まずここを疑ってください。
show ip interface briefで確認しましょう。Vlan10とVlan20の両方にIPが付き、StatusもProtocolもup——これが繋がる状態です。片方でもdownなら、no shutdownの打ち忘れです。
ip routing end show ip interface brief
$ ip routing $ end $ show ip interface brief Interface IP-Address Status Protocol GigabitEthernet0/1 unassigned up up GigabitEthernet0/2 unassigned up up Vlan1 unassigned administratively down down Vlan10 192.168.10.1 up up Vlan20 192.168.20.1 up up
STEP 6設定を確認して保存する
🎯 このステップのゴール: running-config を読み、起動時設定として保存する
最後に設定全体を見返して、保存します。
show running-configで今動いている設定が全部出ます。ip routingの行、VLANごとのSVIとIP、各ポートのVLAN割り当て——ここまでに打ったことが1枚にまとまって見えます。設定を引き継ぐときは、まずこれを読みます。
そしていちばん大事な最後の一手です。copy running-config startup-config(短くはwrite memory)。
これを打たずに再起動すると、設定はすべて消えます。Ciscoでは「今動いている設定(running-config)」と「起動時に読む設定(startup-config)」が別物だからです。何時間もかけた設定が電源断で消えた、というのは現場で本当に起きます。
show vlan briefで最終確認しましょう。VLAN 10にGi0/1、VLAN 20にGi0/2が入っていれば、狙いどおりです。
これで完成です。VLANで分ける → SVIで出入口を作る → ip routingで繋ぐ。この3段が、VLAN間ルーティングの全体像です。
下の疑似ターミナルで、STEP1から自分の手で通してみてください。
show running-config copy running-config startup-config show vlan brief
$ show running-config hostname SW1 ! ip routing ! interface GigabitEthernet0/1 switchport mode access switchport access vlan 10 no shutdown ! interface GigabitEthernet0/2 switchport mode access switchport access vlan 20 no shutdown ! interface Vlan1 shutdown ! interface Vlan10 ip address 192.168.10.1 255.255.255.0 no shutdown ! interface Vlan20 ip address 192.168.20.1 255.255.255.0 no shutdown ! end $ copy running-config startup-config Destination filename [startup-config]? Building configuration... [OK] $ show vlan brief VLAN Name Status Ports 1 default active 10 sales active GigabitEthernet0/1 20 dev active GigabitEthernet0/2
仕上げ自分で最初から打ってみよう
🎯 このステップのゴール: ここまでの流れを、自分の手で最後まで通す
下は本物の疑似ターミナルです。まっさらな状態から始まるので、STEP1のコマンドから順に打って、マージまで辿り着いてください。読んで分かった気になるのと、自分で打てるのとは別物です。
詰まったら上のステップに戻って構いません。resetと打てば最初からやり直せます。
よくある質問
VLANを分けたのに繋がりません
確認する順番が決まっています。1つめはip routing。これを忘れているのが最も多い原因です。
2つめはno shutdown。show ip interface briefでSVIがadministratively downなら打ち忘れです。3つめは各パソコン側のデフォルトゲートウェイで、SVIに振ったIPアドレスが設定されている必要があります。
レイヤ2スイッチとレイヤ3スイッチの違いは?
VLANをまたいだ転送ができるかどうかです。レイヤ2スイッチはVLANを分けるところまではできますが、その間を繋ぐことはできません。繋ぐには別途ルーターが要ります。
レイヤ3スイッチはip routingを入れることで自分で中継できます。この演習で作ったのがその構成です。
trunk はいつ使うんですか?
スイッチ同士を繋ぐときです。この演習では1台で完結しているのでaccessだけで足りますが、スイッチが2台になると、その間の線には複数のVLANが同時に流れます。そこをswitchport mode trunkにしておくと、VLANの札を付けたまま相手のスイッチへ渡せます。
🚩 次はこのカテゴリへ
ネットワークが繋がったら、次はその上で動くサーバーの側です。設定が正しいのに繋がらないとき、原因がサーバー側にあることもよくあります。Linuxカテゴリの最終演習では、ログを読んで障害の原因を突き止めるところまでを練習できます。
Linux/シェルのレッスンへ進む