スイッチは「学習しながら賢くなる」機器だと学びました。では、そのスイッチが「まだ何も学習していない状態」から「学習した状態」に変わる瞬間を、実際に目で見る方法はあるでしょうか?
Packet Tracerなら、スイッチの中身(MACアドレステーブル)をいつでも覗くことができます。今回は、PC3台とスイッチ1台の構成で、学習の瞬間とブロードキャストの広がり方を両方観察します。
この演習でできるようになること
- スイッチのMACアドレステーブルが空の状態から、通信を経て学習されていく様子を確認できる
- シミュレーションモードで、ユニキャストとブロードキャストの届き方の違いを目で見て区別できる
- スイッチの学習の仕組みを、実機の挙動として説明できる
使用トポロジ
PC0・PC1・PC2の3台を、1台のSwitch 2960の異なるポートにそれぞれストレートケーブルで接続します。3台とも同じネットワーク(192.168.1.0/24)に属するIPアドレスを設定し、PC0からPC1へのping(ユニキャスト)と、PC0からのブロードキャストの届き方を見比べます。
準備
- PC-PTを3台(PC0、PC1、PC2)配置し、Switch 2960を1台配置します。
- すべてのPCとスイッチをストレートケーブルで接続します(PC-スイッチ間は常にストレート)。
- 各PCのDesktop→IP Configurationで、次のように設定します。PC0:
192.168.1.1/24、PC1:192.168.1.2/24、PC2:192.168.1.3/24。 - スイッチをクリックし、「CLI」タブは今回は使わず、代わりに「Config」タブは触らないまま閉じます(コマンド未習のためGUI操作のみで進めます)。
手順
- まず、スイッチの中身がどうなっているか確認します。画面右下からSimulationモードに切り替えます。
- Event List Filtersを開き、
ICMPのみにチェックを入れます。 - PC0のCommand Promptから
ping 192.168.1.2を実行し、「Capture / Forward」で1コマずつ進めます。 - スイッチに最初にフレームが届いたコマで、スイッチのアイコンをクリックし、「Inbound PDU Details」や「Outbound PDU Details」を確認します。ここで、スイッチが「送信元MACアドレスを学習してから、宛先ポートへ転送する」流れが分かります。
- さらに詳しく確認したい場合は、スイッチをクリックして「Config」タブ内の「MAC Address Table」の項目(GUIから閲覧できる一覧)を開き、学習されたMACアドレスとポート番号の対応を確認します。
- 次に、ブロードキャストの広がり方を観察します。PC0のCommand Promptから、まだ一度もスイッチが学習していない架空のホストへのping(たとえば
ping 192.168.1.99、実在しない機器)を試し、ARP要求がブロードキャストとしてどう広がるかを「Capture / Forward」で確認します。ARP要求はスイッチの全ポート(送信元ポートを除く)に転送されるはずです。
確認
MAC Address Tableの表示は、学習が進むと次のように埋まっていきます。
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 00e0.a3xx.xx01 DYNAMIC Fa0/1
1 00e0.a3xx.xx02 DYNAMIC Fa0/2
ARP要求(ブロードキャスト)のイベントリストは次のように、全ポートに同時に広がる様子が確認できます。
Vis. Time Last Device At Device Type
0.000 - PC0 ARP
0.001 PC0 Switch0 ARP
0.002 Switch0 PC1 ARP
0.002 Switch0 PC2 ARP
Switch0 から PC1 と PC2 の両方へ、同じタイミングでイベントが発生している点がブロードキャストの証拠です。ユニキャスト(ping)では、宛先ポートのみに転送される点と対比してください。
合格チェックリスト
- 3台のPCがそれぞれ異なるIPアドレスで同一ネットワークに設定されている
- pingの直後、MAC Address Tableに送信元・宛先双方のMACアドレスとポート番号が学習されている
- ARP要求(ブロードキャスト)が、送信元ポートを除く全ポートに同時に転送される様子を確認できた
- ユニキャスト(学習済みのping)は特定の1ポートにのみ転送されることを確認できた
つまずきポイント
ひとつめは、MAC Address Tableを確認するタイミングが早すぎることです。まだ一度も通信していない状態ではテーブルは空です。必ずpingを1回実行した後に確認しましょう。
ふたつめは、ブロードキャストとユニキャストの違いを混同することです。学習済みの相手へのpingは特定ポートだけに転送されますが、ARP要求のような未学習・ブロードキャスト通信は全ポートに送られます。イベントリストの「At Device」欄が同時刻に複数現れているかどうかで見分けましょう。
みっつめは、IPアドレスの設定漏れです。3台のうち1台でもサブネットマスクや範囲を間違えると、そもそもping自体が失敗し、学習の様子を観察する以前の問題になってしまいます。
スイッチのMACアドレステーブルがまだ空の状態で、PC0からPC1へ初めてpingを実行しました。このときスイッチはPC1宛てのフレームをどう処理するでしょう?
答えを見る
宛先MACアドレスがテーブルに存在しないため、送信元ポートを除く全ポートにフラッディング(転送)します。同時に、送信元であるPC0のMACアドレスとポートの対応はこの時点でテーブルに学習されます。次にPC1からPC0への応答が届いた時点で、PC1のMACアドレスも学習され、以降は特定ポートへの転送に切り替わります。
スイッチが「まだ知らない相手には全ポートへ、知っている相手には1ポートだけへ」と使い分けている様子、実際に見えると納得感が違うよね。これでSTAGE 01は完了、L2の世界の基本動作は体に入ったよ。次からはSTAGE 02、いよいよL3の主役「IPアドレス」の世界に入っていくよ。