クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

VLAN の基本

レッスン全文をここで読めます。無料アカウントを作成すると、実際のラボで実践できます。

仮想マシンラボ読了目安 8分コマンド4個

このレッスンですること

普通のスイッチでは、つながっているパソコンすべてが、お互いの通信を聞き取れます。VLAN は、1台のスイッチをいくつかの別々のネットワークに分けるしくみです。経理の部署と来客用のネットワークを分ければ、お互いは見えなくなります。許可したときだけ両者をつなぐのが ルーター(router)です。このレッスンでは、VLAN を作る前の小さなネットワークを見て回り、何があるかを確かめます。作ることはしません。それはラボ自身の課題です。

始める前に

メモ

このレッスンの上のバーにある ラボを起動 を押してください。このラボは、あなた専用の Ubuntu マシン まるごとで、中に小さなネットワークが作られています。コンテナより起動に少し時間がかかります。下の 実行 ボタンは、マシンのターミナルにコマンドを順番に入力します。「マシンはまだ起動中です」と出たら、数秒待ってからもう一度押してください。実行の様子を見たり、自分でコマンドを打ったりするときは、バーの ターミナルを開く(新しいタブ) を押します。

1. マシンを確かめる

ここにあるものはすべて、1台の Ubuntu マシンの中に作られています。スイッチ sw、ルーター r1、パソコン h10、h20、srv は、それぞれ別々の ネットワーク名前空間(network namespace、1台の中に作った独立したネットワークの部屋)です。vlanlab status でその一覧が出ます。h10 と srv のアドレスは 10.10.0 で始まり、h20 は 10.20.0 で始まります。つまり2つのネットワークに分けるつもりの機器です。最後にスイッチの VLAN 表が出ます。p-h10 から p-r1 までのポートは、すべて VLAN 1 に入っていて、ほかには何もありません。ルーターにはまだアドレスが1つもありません。

コマンド
vlanlab status

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

2. 本当に分かれているか

arping は「このアドレスを持っているのは誰ですか」と、ルーターを通さずスイッチ越しにそのまま尋ねます。h20 は srv と別のネットワークにいるはずなのに、srv は2回とも自分のハードウェアアドレスで答えます。すべてのポートが VLAN 1 にあると、スイッチは何でも全員に通してしまうからです。ラボではこれを変えます。

コマンド
sudo ip netns exec h20 arping -c 2 -I eth0 10.10.0.100

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

3. 別のネットワークに呼びかける

今度は h10 から、別のネットワークにある h20(10.20.0.11)を呼びます。パケットは h10 のゲートウェイ(出入口になる機器)10.10.0.1 に向かいますが、答えるものはありません。そのアドレスを持つマシンがまだないからです。ping の結果は 2 packets transmitted, 0 received, 100% packet loss になります。

コマンド
sudo ip netns exec h10 ping -c 2 -W 1 10.20.0.11

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

4. ルーターの1本のケーブルを見る

router on a stick(ルーター・オン・ア・スティック)は、ルーターとスイッチを1本のケーブルだけでつなぎ、その1本で2つの VLAN の通信を扱う方式です。ここではそのケーブルが eth0 です。eth0 は動いていますが、付いているアドレスは fe80:: で始まるリンクローカルアドレスだけで、自動的に作られたものです。ホストが探しているゲートウェイのアドレスは1つもありません。しかも、このケーブルの上で2つの VLAN を見分ける手がかりもありません。

コマンド
sudo ip netns exec r1 ip -br addr show dev eth0

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

ラボに進みましょう

ヒント

足りないものが分かりました。スイッチの VLAN、ルーターに VLAN ごとに作るサブインターフェース(1本のケーブルを論理的に分けたもの)、そして VLAN 間のルーティングです。これらを作るのが、このラボの課題です。ターミナルで cat README.md と打って、ホームフォルダの README.md を開いてください。何をするかが書いてありますが、答えは書いてありません。

先生へ

ヒント

このレッスンは ラボで進めるレッスン の小さな例です。手順と 実行 ボタンがレッスンで、ラボは生徒一人ひとりのコピーです。このレッスンは VM ラボで進めます。生徒それぞれが、スイッチ1台、ルーター1台、パソコン3台が中に入った自分専用の Ubuntu マシンを持ち、実行ボタンはそのターミナルに入力して、出力を表示します。ラボには、各パソコンが届く先と届かない先を試して、完成したネットワークを採点する確認があります。自分のモジュールにコピーして変更するか、レッスンビルダーの ラボ メニューから一から作ってください。

このラボとソースについて: VLAN のラボ:VLAN と VLAN 間ルーティングをブラウザーの Ubuntu VM で

授業で教えていますか?これらのレッスンを生徒に割り当て、採点と生徒ごとのラボを使えます。