ネットワーク

ネットワーク研修 Packet Tracer でハンズオン環境を作る

ネットワークエンジニア研修の4回目です。ここまでの3回は紙とPCだけで進めてきましたが、今回は実際に機器を触る環境を用意します。無料のシミュレータ Packet Tracer を使い、これまでに学んだサブネットスイッチとVLANルーティングを、自分の手で組んで動かせるようにします。

この回で身につくこと

  1. 自分のPCだけで動く検証環境を用意できる
  2. 機器を配置し、配線し、IPアドレスを設定して疎通確認ができる
  3. パケットが1ホップずつ進む様子を目で追える(シミュレーションモード)
  4. VLAN・トランク・VLAN間ルーティングを自分で組める
  5. シミュレータでできることと、できないことの区別がつく

前提/環境

  • PC: Windows 11(macOS / Linux 版もあります)
  • ツール: Cisco Packet Tracer
  • 実機・ライセンス費用は不要。インターネット接続は初回のダウンロード時のみ必要
  • 使うアドレス: 192.168.10.0/24、192.168.20.0/24(プライベートアドレス)

ツールの選び方

  ツール             費用      動かすもの        向いている用途
  ------------------------------------------------------------------
  Packet Tracer      無料      Cisco機器の       CCNA範囲の学習
                               シミュレーション   研修・演習

  GNS3               無料      実機のOSイメージ   実機に近い挙動の確認
                               (別途入手が必要)

  EVE-NG             無料/有料 各社のOSイメージ   複数ベンダー混在の検証
                               (別途入手が必要)

  Containerlab       無料      コンテナ版のNOS    自動化・CI向け
                               (Linux/Docker)

  中古の実機         数千円〜  本物              物理層・ケーブル・
                                                 実機特有の挙動

研修の最初の1台としては Packet Tracer が最適です。理由は3つあります。

  1. OSイメージを別途用意しなくてよい。GNS3 や EVE-NG は機器のOSイメージが必要で、入手にはライセンスが伴います。
  2. 動作が軽い。ノートPCで十数台の構成を動かせます。
  3. パケットの流れを可視化できる。これは実機にもGNS3にもない、学習用ならではの機能です。

逆に、実機と挙動が違う場面や、対応していないコマンドがあります。CCNAの範囲を超えて詳細な検証をする段階になったら、GNS3 や実機に移ります。

Packet Tracer の入手

Packet Tracer は Cisco Networking Academy(netacad.com)から無料で入手できます。アカウントを作り、無料の入門コースに登録するとダウンロードできる、という流れです。

  おおまかな手順

  1) netacad.com でアカウントを作る(無料)
  2) Packet Tracer の入門コースに登録する(無料)
  3) ダウンロードページから、自分のOS用のインストーラを取得する
     Windows 64bit / macOS / Ubuntu 版がある
  4) インストールし、作成したアカウントでサインインして起動する

ダウンロードまでの画面の流れやコース名は変わることがあります。細かい手順は、その時点のサイトの案内に従ってください。起動時にサインインが必要な点と、無償で使える点は変わっていません。

ラボ1: スイッチ1台とPC2台

最初は最小構成です。第2回で学んだスイッチの動作を、自分の目で確認します。

機器を置いて配線する

  1) 画面左下のカテゴリから機器を選び、作業領域にドラッグする
       Network Devices → Switches → 2960(スイッチ)
       End Devices → PC を2台

  2) 配線する
       ケーブルのアイコン(稲妻マーク)を選ぶと自動で種別を選んでくれる
       手動なら Copper Straight-Through(ストレート)を選ぶ

       PC0 → Switch0 の FastEthernet0/1
       PC1 → Switch0 の FastEthernet0/2

  3) リンクの色を確認する
       緑の三角  リンクアップ
       赤い×     リンクダウン(ケーブル種別や shutdown を疑う)
       オレンジ  スパニングツリーの収束待ち(数十秒で緑になる)

PCにIPアドレスを設定する

  PC0 をクリック → Desktop タブ → IP Configuration

    IP Address       192.168.10.10
    Subnet Mask      255.255.255.0
    Default Gateway  (このラボでは空欄でよい)

  PC1 も同様に

    IP Address       192.168.10.20
    Subnet Mask      255.255.255.0

ここで第1回の内容が効いてきます。この2台が同じサブネットに居ることを、設定する前に自分で確認してください。192.168.10.10 と 192.168.10.20 は、/24 なら同じ 192.168.10.0 のネットワークです。

疎通確認

  PC0 → Desktop タブ → Command Prompt

  C:\> ping 192.168.10.20

  Pinging 192.168.10.20 with 32 bytes of data:

  Request timed out.
  Reply from 192.168.10.20: bytes=32 time<1ms TTL=128
  Reply from 192.168.10.20: bytes=32 time<1ms TTL=128
  Reply from 192.168.10.20: bytes=32 time<1ms TTL=128

1回目だけタイムアウトするのは正常です。ARPで相手のMACアドレスを解決している間に、最初のpingがタイムアウトするためです。第2回で学んだARPの動きが、ここに現れています。

  C:\> arp -a
    Internet Address      Physical Address      Type
    192.168.10.20         00d0.bcXX.XXXX        dynamic

スイッチのMACアドレステーブルを見る

  Switch0 をクリック → CLI タブ

  Switch> enable
  Switch# show mac address-table
            Mac Address Table
  -------------------------------------------

  Vlan    Mac Address       Type        Ports
  ----    -----------       --------    -----
     1    00d0.bcXX.XXXX    DYNAMIC     Fa0/1
     1    0090.21XX.XXXX    DYNAMIC     Fa0/2

第2回で読み方だけ学んだ出力が、自分で作った構成から出てきます。show mac address-table を打つ前と後で、テーブルがどう変わるかも確認してください(clear mac address-table dynamic で消せます)。

パケットの流れを目で追う

Packet Tracer のいちばんの利点がこれです。

  1) 画面右下の「Simulation」に切り替える

  2) 「Edit Filters」で表示するプロトコルを絞る
       最初は ICMP と ARP だけにする
       (すべて表示すると、他の通信に埋もれて追えない)

  3) 封筒アイコン(Add Simple PDU)で PC0 → PC1 を指定する

  4) 「Capture / Forward」ボタンを1回ずつ押す
       封筒が1ホップずつ進む
       封筒をクリックすると、そのフレームの中身が見える
  最初に流れるのは ARP

    PC0 → ブロードキャスト(宛先MAC ffff.ffff.ffff)
      「192.168.10.20 の持ち主は誰?」
    スイッチが全ポートにフラッディング
    PC1 が応答(ユニキャスト)
      「それは私。MACは 0090.21XX.XXXX」

  そのあとに ICMP(ping)が流れる
    宛先MACが PC1 のものに変わっている

封筒をクリックすると、OSI各層のヘッダが分解して表示されます。第2回で図にした「宛先MAC・送信元MAC・タイプ」の並びが、そのまま実物として見られます。ここは時間をかけて観察してください。

ラボ2: VLANとトランク

第2回の内容を組みます。スイッチ2台、PC4台の構成です。

  構成

    PC0 (192.168.10.10) ─ Fa0/1 ┐
                                 SW1 ─ Gi0/1 ===トランク=== Gi0/1 ─ SW2
    PC1 (192.168.20.10) ─ Fa0/2 ┘                                    │
                                              Fa0/1 ─ PC2 (192.168.10.20)
                                              Fa0/2 ─ PC3 (192.168.20.20)

    VLAN 10 → 192.168.10.0/24(PC0、PC2)
    VLAN 20 → 192.168.20.0/24(PC1、PC3)
  SW1 の設定(SW2 も同じ内容を投入する)

  Switch> enable
  Switch# configure terminal
  Switch(config)# hostname SW1
  SW1(config)# vlan 10
  SW1(config-vlan)# name Gyomu
  SW1(config-vlan)# exit
  SW1(config)# vlan 20
  SW1(config-vlan)# name Musen
  SW1(config-vlan)# exit
  SW1(config)# interface FastEthernet0/1
  SW1(config-if)# switchport mode access
  SW1(config-if)# switchport access vlan 10
  SW1(config-if)# exit
  SW1(config)# interface FastEthernet0/2
  SW1(config-if)# switchport mode access
  SW1(config-if)# switchport access vlan 20
  SW1(config-if)# exit
  SW1(config)# interface GigabitEthernet0/1
  SW1(config-if)# switchport mode trunk
  SW1(config-if)# switchport trunk allowed vlan 10,20
  SW1(config-if)# end
  SW1# copy running-config startup-config

確認するのは次の3点です。

  SW1# show vlan brief          ← ポートが正しいVLANに入っているか
  SW1# show interfaces trunk    ← トランクが張れて、10と20が通っているか
  SW1# show mac address-table   ← VLANごとに学習されているか

そのうえで、PCから互いにpingします。

  PC0 (VLAN10) → PC2 (VLAN10)   通る    同じVLAN・同じサブネット
  PC1 (VLAN20) → PC3 (VLAN20)   通る    同じVLAN・同じサブネット
  PC0 (VLAN10) → PC1 (VLAN20)   通らない ← 今はこれが正解

最後の1つが通らないことを、必ず自分で確かめてください。「VLANを分けたから通信できない」という第2回の結論が、実際に再現されます。

ラボ3: VLAN間ルーティング

第3回の内容で、ラボ2の「通らない」を解決します。ここではL3スイッチを使う方法で組みます。

  SW1 を 3560(L3スイッチ)に置き換えて設定する

  SW1(config)# ip routing                          ← 忘れやすい
  SW1(config)# interface Vlan10
  SW1(config-if)# ip address 192.168.10.1 255.255.255.0
  SW1(config-if)# no shutdown
  SW1(config-if)# exit
  SW1(config)# interface Vlan20
  SW1(config-if)# ip address 192.168.20.1 255.255.255.0
  SW1(config-if)# no shutdown
  SW1(config-if)# end

  SW1# show ip route
  C    192.168.10.0/24 is directly connected, Vlan10
  C    192.168.20.0/24 is directly connected, Vlan20

そして各PCにデフォルトゲートウェイを設定します。ここを忘れると、ルータを用意しても通信できません。

  PC0 (VLAN10) Default Gateway  192.168.10.1
  PC1 (VLAN20) Default Gateway  192.168.20.1
  PC2 (VLAN10) Default Gateway  192.168.10.1
  PC3 (VLAN20) Default Gateway  192.168.20.1

  設定後、PC0 → PC1 の ping が通るようになる

シミュレーションモードで PC0 → PC1 を流すと、パケットがL3スイッチを経由し、宛先MACアドレスが途中で書き換わるのが見えます。第3回の「IPアドレス=最終目的地、MACアドレス=次に渡す相手」が、ここで実物として確認できます。

演習問題

今回は手を動かす課題です。Packet Tracer 上で構成を作り、動作を確認してください。

  1. ラボ1を作り、PC0 から PC1 へ ping を通せ。1回目がタイムアウトする理由を説明せよ。
  2. ラボ1で clear mac address-table dynamic を実行した直後に ping を流し、シミュレーションモードでフラッディングが起きることを確認せよ。
  3. ラボ2を作り、同じVLANのPC同士は通信でき、違うVLANのPC同士は通信できないことを確認せよ。
  4. ラボ2で、SW2 側のトランクの許可VLANから 20 を削除せよ。どのPC間の通信が止まるか、実行前に予想してから試せ。
  5. ラボ3を作り、すべてのPCが互いに通信できるようにせよ。
  6. ラボ3で、PC0 のデフォルトゲートウェイだけを消したらどうなるか。PC0→PC1 と PC1→PC0 の両方向で試せ。
  7. ラボ3の構成で、PC0 に 192.168.10.1(ゲートウェイと同じアドレス)を設定したらどうなるか確認せよ。
  8. スイッチに copy running-config startup-config を実行せずに、機器の電源を入れ直したらどうなるか確認せよ。

解答と解説

  1. ARPでMACアドレスを解決している間に、最初のICMPがタイムアウトするため。
     ARPが完了した2回目以降は応答が返る。
     2回目以降も落ちるなら、それはARPではなく別の問題。

  2. テーブルを消すと、スイッチは宛先MACを知らない状態に戻る。
     そのため受信ポート以外の全ポートへフラッディングする。
     相手が応答した時点で再び学習され、次からは該当ポートだけに送られる。

  3. 同じVLAN同士は通り、別VLAN同士は通らない。
     PC0 と PC1 は物理的には同じスイッチにつながっているが、
     VLANが違う=別のブロードキャストドメイン=別サブネットのため。

  4. PC1 (VLAN20) ─ PC3 (VLAN20) 間の通信が止まる。
     VLAN10 の通信(PC0 ─ PC2)は影響を受けない。
     show interfaces trunk の「Vlans allowed」から 20 が消えていることを確認する。

  5. L3スイッチに ip routing と2つのSVI、各PCにデフォルトゲートウェイ。
     この3つが揃って初めて通信できる。

  6. PC0 から PC1 への ping は失敗する(送信できない)。
     一方、PC1 から PC0 への ping は「行きは届くが応答が返せない」ため
     やはり失敗する。
     → 第3回の「ルーティングは往復で成立する」の実例。

  7. アドレスの重複になる。ゲートウェイと同じIPを持つ機器が2台ある状態で、
     通信が不安定になるか、まったく通らなくなる。
     ネットワークアドレス・ブロードキャストアドレスに加えて、
     「すでに使われているアドレス」も割り当ててはいけない。

  8. 設定がすべて消え、初期状態で起動する。
     running-config(動作中の設定)は揮発性で、
     startup-config(起動時に読む設定)に保存しないと残らない。

現場でのつまずき方

保存を忘れる

  running-config   今動いている設定。電源を切ると消える
  startup-config   起動時に読み込む設定。NVRAMに保存される

  SW1# copy running-config startup-config
  SW1# write memory                      ← 同じ意味の短い書き方

  SW1# show startup-config               ← 保存されているか確認

実機でも同じです。作業後に保存を忘れ、次の再起動で設定が消えるという事故は現場でも起きます。設定変更のたびに保存する習慣を、練習段階から付けてください。

ルータのインタフェースが上がらない

  スイッチのポート  既定で有効(つなげば上がる)
  ルータのポート    既定で shutdown(no shutdown が必要)

  R1(config)# interface GigabitEthernet0/0
  R1(config-if)# ip address 192.168.10.1 255.255.255.0
  R1(config-if)# no shutdown              ← これが必要

「IPアドレスを設定したのに経路表に載らない」という場合、まずこれを疑います。show ip interface briefadministratively down と出ていれば no shutdown 忘れです。

PCのゲートウェイを設定していない

機器側の設定を完璧にしても、PC側のデフォルトゲートウェイが空欄なら別サブネットへは出られません。ラボでも実務でも、L3の設定が終わったら端末側の設定まで含めて確認します。

シミュレーションモードで何も見えない

フィルタで対象のプロトコルが除外されていると、パケットを流しても画面に出てきません。Edit Filters で ICMP と ARP が有効になっているかを確認します。逆に、すべてのプロトコルを表示すると、他の通信に紛れて追えなくなります。見たいものだけを表示するのがコツです。

シミュレータと実機の違いを意識する

  Packet Tracer で気を付ける点

  ・対応していないコマンドがある
    実機で使えるオプションが、シミュレータでは通らないことがある
  ・実機特有の挙動は再現されない
    ケーブル不良、光レベルの低下、SFPの相性、機器の負荷など
  ・タイミングが実機と異なる
    収束時間やタイムアウトの体感が違う
  ・バージョンが古い
    最新のOSの機能や構文には追随していない

シミュレータは「設定と論理構成を学ぶ道具」です。物理層のトラブルや実機固有の挙動は学べません。CCNAの範囲を一通り終えたら、GNS3や中古の実機に進み、実機でしか起きない事象に触れてください。

作った構成を残す

Packet Tracer のファイルは .pkt 形式で保存できます。ラボごとに名前を付けて残しておくと、あとから設定を見返せますし、壊れたときに戻せます。「動いた状態」を保存してから設定を壊す、というのが検証の基本です。壊してから直す練習は、実務の障害対応そのものになります。

-ネットワーク
-, ,