CCNAラボ課題集
Tech Village 受講生用教材(Packet Tracer実技・全14本)
※この環境では完了チェックが保存されません(プライベートブラウズ等)。ラボ自体は利用できます。
はじめに: Packet Tracerの入手(無料・所要5分)
本番のシミュレーション問題対策は、この実技ラボが本体です。下の手順で無料の Packet Tracer を入れ、コマンドは必ず自分の手で打ってください。
- 「Getting Started with Cisco Packet Tracer」コースを開く (Cisco Networking Academy = 旧 Skills for All)。画面右上の Sign up から無料アカウントを作成し、このコースに登録する(メール認証あり・費用は一切かからない)。
-
登録後、ダッシュボード(skillsforall.com/dashboard) を開き、Resources → Download Packet Tracer から自分のOSのインストーラを落とす。
Windows は「Windows Desktop Version 64 Bit」/ Mac は「macOS Version」(最新は 8.x 系) - インストール後 Packet Tracer を起動し、最初の画面で 手順1と同じアカウントでログインする(ログインしないと一部機能が制限される。急ぐときは「Guest Login」でも操作可)。
- 起動できたら Lab 01 から順番に 進める。答えを見る前に、まずコマンドを自分の手で打ち込むこと。
※ skillsforall.com は現在 netacad.com に統合されています。どちらのリンクからでも、同じ無料コース・同じダウンロードに辿り着けます。
ケーブル選択の早見表(結線表とあわせて使う)
| 接続 | ケーブル |
|---|---|
| PC・サーバ ↔ スイッチ | ストレート(Copper Straight-Through) |
| スイッチ ↔ スイッチ | クロス(Copper Cross-Over) |
| ルータ ↔ スイッチ | ストレート |
| ルータ ↔ ルータ | クロス |
ラボ一覧(上から順に進める)
機器の基本操作と初期設定
到達目標
- ユーザEXEC・特権EXEC・グローバルコンフィグの3モードを行き来できる
- ホスト名・各種パスワード・バナーを設定し、設定を保存できる
機器と配線
| 機器 | モデル | 台数 |
|---|---|---|
| スイッチ SW1 | 2960 | 1 |
配線は不要。Packet Tracer上でスイッチをクリックし、CLIタブから直接操作する。
課題
- CLIを開き、ユーザEXEC(
>)→ 特権EXEC(#)→ グローバルコンフィグ((config)#)の順にモードを移動し、それぞれのプロンプトの違いを確認せよ - ホスト名を
SW1に変更せよ - 特権EXECへの移行パスワードを
classに設定せよ(暗号化される方式を使うこと) - コンソール接続とVTY接続(0〜15)の両方に、パスワード
ciscoでのログイン認証を設定せよ - 設定ファイル内の平文パスワードがすべて暗号化されるようにせよ
- ログイン時に「Authorized Access Only!」と表示されるバナーを設定せよ
- 設定を保存し、機器を再起動(電源OFF→ON)しても設定が残ることを確認せよ
検証
show running-config— ホスト名がSW1、enable secretが暗号化表示($1$...等)になっている- 一度
exitでログアウトして再接続 — バナーが表示され、コンソールパスワードを要求される show startup-config— 保存した内容が表示される(保存前は「startup-config is not present」)
解答例を見る
まず自力で。15分詰まったら開いてOK。開いたら写すのではなく、閉じてから自分で打ち直すこと。
Switch> enable Switch# configure terminal Switch(config)# hostname SW1 SW1(config)# enable secret class SW1(config)# line console 0 SW1(config-line)# password cisco SW1(config-line)# login SW1(config-line)# exit SW1(config)# line vty 0 15 SW1(config-line)# password cisco SW1(config-line)# login SW1(config-line)# exit SW1(config)# service password-encryption SW1(config)# banner motd #Authorized Access Only!# SW1(config)# end SW1# copy running-config startup-config
つまずきポイント
enable passwordとenable secretは別物。secretが優先され、ハッシュ化される。試験でも頻出の区別loginコマンドを忘れると、パスワードを設定しても認証が要求されないcopy running-config startup-configを忘れると再起動で設定が全部消える
VLANの作成とアクセスポート
到達目標
- VLANを作成・命名し、ポートに割り当てられる
- VLANがブロードキャストドメインを分割することをpingで体感する
機器と配線
| 機器A | ポート | 機器B | ケーブル |
|---|---|---|---|
| SW1(2960) | Fa0/1 | PC1 | ストレート |
| SW1 | Fa0/2 | PC2 | ストレート |
| SW1 | Fa0/3 | PC3 | ストレート |
| SW1 | Fa0/4 | PC4 | ストレート |
| 機器 | IPアドレス | サブネットマスク | 所属VLAN |
|---|---|---|---|
| PC1 | 192.168.10.11 | 255.255.255.0 | 10(Sales) |
| PC2 | 192.168.10.12 | 255.255.255.0 | 10(Sales) |
| PC3 | 192.168.20.11 | 255.255.255.0 | 20(Accounting) |
| PC4 | 192.168.20.12 | 255.255.255.0 | 20(Accounting) |
課題
- 表の通りにトポロジを組み、各PCにIPアドレスを設定せよ(Desktop → IP Configuration)
- SW1にVLAN 10(名前: Sales)とVLAN 20(名前: Accounting)を作成せよ
- Fa0/1〜2をVLAN 10、Fa0/3〜4をVLAN 20のアクセスポートに設定せよ(rangeコマンドを使うこと)
- PC1→PC2のpingが成功し、PC1→PC3のpingが失敗することを確認せよ。失敗する理由を自分の言葉で説明できるか?
検証
show vlan brief— VLAN 10にFa0/1-2、VLAN 20にFa0/3-4が表示される- PC1のCommand Promptから
ping 192.168.10.12成功、ping 192.168.20.11はタイムアウト
解答例を見る
まず自力で。詰まったら開いてOK。
SW1> enable SW1# configure terminal SW1(config)# vlan 10 SW1(config-vlan)# name Sales SW1(config-vlan)# vlan 20 SW1(config-vlan)# name Accounting SW1(config-vlan)# exit SW1(config)# interface range fastEthernet 0/1-2 SW1(config-if-range)# switchport mode access SW1(config-if-range)# switchport access vlan 10 SW1(config-if-range)# exit SW1(config)# interface range fastEthernet 0/3-4 SW1(config-if-range)# switchport mode access SW1(config-if-range)# switchport access vlan 20 SW1(config-if-range)# end SW1# show vlan brief
つまずきポイント
- VLAN間の通信はルータかL3スイッチが無い限り絶対に通らない。pingの失敗は「正しい状態」
- rangeの書式は
interface range fastEthernet 0/1-2(ハイフンの前後にスペース不可) - VLANを作らずにポートへ割り当てても自動作成されるが、名前が付かないので必ず先に作成する習慣をつける
802.1Qトランクとネイティブ VLAN
到達目標
- スイッチ間をトランクで結び、複数VLANを1本のリンクで運べる
- ネイティブVLANの意味と、両端一致の必要性を説明できる
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| SW1(2960) | Gi0/1 | SW2(2960) | Gi0/1 | クロス |
| SW1 | Fa0/1 | PC1 | – | ストレート |
| SW1 | Fa0/2 | PC2 | – | ストレート |
| SW2 | Fa0/1 | PC3 | – | ストレート |
| SW2 | Fa0/2 | PC4 | – | ストレート |
| 機器 | IPアドレス/マスク | 所属VLAN |
|---|---|---|
| PC1(SW1側) | 192.168.10.11 /24 | 10(Sales) |
| PC2(SW1側) | 192.168.20.11 /24 | 20(Accounting) |
| PC3(SW2側) | 192.168.10.12 /24 | 10(Sales) |
| PC4(SW2側) | 192.168.20.12 /24 | 20(Accounting) |
課題
- 両スイッチにVLAN 10(Sales)・20(Accounting)・99(Native)を作成し、アクセスポートを表の通り割り当てよ
- SW1とSW2を結ぶGi0/1を両側ともトランクに設定せよ
- トランクのネイティブVLANを99に変更せよ(両側)
- PC1→PC3(同じVLAN 10・スイッチ跨ぎ)のpingが成功し、PC1→PC4(異なるVLAN)が失敗することを確認せよ
検証
show interfaces trunk— Gi0/1がトランクとして表示され、Native vlanが99になっている- PC1から
ping 192.168.10.12成功 /ping 192.168.20.12失敗 - 片側だけネイティブVLANを99にした状態で、コンソールにCDPの不一致警告(native VLAN mismatch)が出ることも観察してみる
解答例を見る
SW1・SW2の両方に投入する(アクセスポートのVLANは各スイッチの表に従う)。
SW1(config)# vlan 10 SW1(config-vlan)# name Sales SW1(config-vlan)# vlan 20 SW1(config-vlan)# name Accounting SW1(config-vlan)# vlan 99 SW1(config-vlan)# name Native SW1(config-vlan)# exit SW1(config)# interface fastEthernet 0/1 SW1(config-if)# switchport mode access SW1(config-if)# switchport access vlan 10 SW1(config-if)# interface fastEthernet 0/2 SW1(config-if)# switchport mode access SW1(config-if)# switchport access vlan 20 SW1(config-if)# exit SW1(config)# interface gigabitEthernet 0/1 SW1(config-if)# switchport mode trunk SW1(config-if)# switchport trunk native vlan 99 SW1(config-if)# end SW1# show interfaces trunk
つまずきポイント
- ネイティブVLANは両端で一致が必須。不一致だとフレームが意図しないVLANに流れ、CDPが警告を出す
- 2960は802.1Qのみ対応なので
switchport trunk encapsulation dot1qは不要(このコマンドが必要な機種もあると覚えておく) - VLANは両方のスイッチに作る。トランクはVLANを運ぶだけで、VLAN定義は同期されない(VTPを使わない場合)
EtherChannel(LACP)
到達目標
- 複数の物理リンクをLACPで1本の論理リンクに束ねられる
- 冗長化の動作(1本切れても通信継続)を確認できる
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| SW1(2960) | Fa0/23 | SW2(2960) | Fa0/23 | クロス |
| SW1 | Fa0/24 | SW2 | Fa0/24 | クロス |
| SW1 | Fa0/1 | PC1(192.168.1.11 /24) | – | ストレート |
| SW2 | Fa0/1 | PC2(192.168.1.12 /24) | – | ストレート |
課題
- SW1・SW2のFa0/23-24を、LACPを使ってチャネルグループ1(Port-channel 1)に束ねよ。両側ともLACPが「積極的にネゴシエートする」モードを使うこと
- 論理インターフェースPort-channel 1をトランクに設定せよ(両側)
- PC1→PC2のpingが通ることを確認せよ
- Fa0/23のケーブルを削除(疑似障害)しても、pingが継続して通ることを確認せよ
検証
show etherchannel summary— Po1のフラグがSU(Layer2・使用中)、メンバーポートが(P)になっているshow interfaces trunk— トランク欄に物理ポートではなくPo1が表示される- ケーブル1本削除後もPC間pingが成功する
解答例を見る
SW1・SW2の両方に投入する。
SW1(config)# interface range fastEthernet 0/23-24 SW1(config-if-range)# channel-group 1 mode active SW1(config-if-range)# exit SW1(config)# interface port-channel 1 SW1(config-if)# switchport mode trunk SW1(config-if)# end SW1# show etherchannel summary
つまずきポイント
- LACPで成立するのは active-active か active-passive。passive同士は形成されない(試験頻出)
- メンバーポートの速度・duplex・VLAN設定が不一致だと束に参加できない。個別設定を入れる前に束ねるのが安全
mode onはLACPではなく無条件の固定。activeと混ぜると形成されない
STPの観察とPortFast/BPDU Guard
到達目標
- show spanning-treeの出力からルートブリッジとポート役割を読み取れる
- プライオリティ変更でルートブリッジを意図的に決められる
- エンドポイント向けポートにPortFast+BPDU Guardを設定できる
機器と配線(三角形のループ構成)
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| SW1(2960) | Gi0/1 | SW2(2960) | Gi0/1 | クロス |
| SW2 | Gi0/2 | SW3(2960) | Gi0/1 | クロス |
| SW3 | Gi0/2 | SW1 | Gi0/2 | クロス |
| SW3 | Fa0/10 | PC1(192.168.1.11 /24) | – | ストレート |
課題
- 3台を三角形に接続し、リンクが全てアップした状態で各スイッチの
show spanning-treeを実行。現在のルートブリッジがどれか、どのポートがブロッキング(PTでは橙ランプ)になっているかをメモせよ - なぜそのスイッチがルートに選ばれたのか説明せよ(ヒント: プライオリティが同じときはMACアドレス比較)
- SW1をVLAN 1のルートブリッジにせよ(プライオリティを4096に変更)。ランプの変化と
show spanning-treeの変化を確認せよ - SW3のFa0/10(PC接続ポート)にPortFastとBPDU Guardを設定せよ
- (破壊実験)Fa0/10にスイッチを接続してBPDUを受信させ、ポートがerr-disabledになることを確認せよ
検証
- SW1で
show spanning-tree— 「This bridge is the root」と表示される show running-config interface fastEthernet 0/10— portfastとbpduguardが入っている- 破壊実験後、
show interfaces status err-disabledでFa0/10が表示される
解答例を見る
手順3はSW1、手順4はSW3に投入する。
SW1(config)# spanning-tree vlan 1 priority 4096 SW3(config)# interface fastEthernet 0/10 SW3(config-if)# spanning-tree portfast SW3(config-if)# spanning-tree bpduguard enable SW3(config-if)# end SW3# show spanning-tree
つまずきポイント
- プライオリティは4096の倍数しか設定できない(デフォルト32768)
- STPの収束には数十秒かかる。設定直後にランプが変わらなくても焦らず待つ
- PortFastは絶対にスイッチ間リンクに設定しない。ループ防止が無効化される(だからBPDU Guardとセットで使う)
- err-disabledになったポートは原因を除去後
shutdown→no shutdownで復旧する
ルータ初期設定と静的・デフォルトルート
到達目標
- ルータのインターフェースにIPを設定して有効化できる
- 静的ルートとデフォルトルートを設定し、show ip route を読める
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| R1(2911) | Gi0/0 | SW1(2960) | Fa0/1 | ストレート |
| SW1 | Fa0/2 | PC1 | – | ストレート |
| R1 | Gi0/1 | R2(2911) | Gi0/1 | クロス |
| R2 | Gi0/0 | SW2(2960) | Fa0/1 | ストレート |
| SW2 | Fa0/2 | PC2 | – | ストレート |
| 機器 | インターフェース | IPアドレス/マスク | デフォルトGW |
|---|---|---|---|
| R1 | Gi0/0 | 192.168.1.1 /24 | – |
| R1 | Gi0/1 | 10.0.0.1 /30 | – |
| R2 | Gi0/0 | 192.168.2.1 /24 | – |
| R2 | Gi0/1 | 10.0.0.2 /30 | – |
| PC1 | – | 192.168.1.11 /24 | 192.168.1.1 |
| PC2 | – | 192.168.2.11 /24 | 192.168.2.1 |
課題
- 表の通りに配線し、R1・R2の各インターフェースにIPアドレスを設定して有効化せよ
show ip interface briefで全インターフェースが up/up であることを確認せよ- この時点でPC1→PC2のpingが失敗することを確認し、R1のルーティングテーブルを見て理由を説明せよ
- R1に「192.168.2.0/24 はネクストホップ10.0.0.2へ」という静的ルートを設定せよ
- R2には個別の静的ルートではなくデフォルトルート(0.0.0.0/0 → 10.0.0.1)を設定せよ
- PC1→PC2のpingと、PC1の
tracert 192.168.2.11で経由ルータを確認せよ
検証
- R1の
show ip route—S 192.168.2.0/24 [1/0] via 10.0.0.2が表示される - R2の
show ip route—S* 0.0.0.0/0 [1/0] via 10.0.0.1(Gateway of last resort)が表示される - PC1から
ping 192.168.2.11成功、tracertで10.0.0.2を経由している
解答例を見る
まず自力で。詰まったら開いてOK。
R1(config)# interface gigabitEthernet 0/0 R1(config-if)# ip address 192.168.1.1 255.255.255.0 R1(config-if)# no shutdown R1(config-if)# interface gigabitEthernet 0/1 R1(config-if)# ip address 10.0.0.1 255.255.255.252 R1(config-if)# no shutdown R1(config-if)# exit R1(config)# ip route 192.168.2.0 255.255.255.0 10.0.0.2
R2(config)# interface gigabitEthernet 0/0 R2(config-if)# ip address 192.168.2.1 255.255.255.0 R2(config-if)# no shutdown R2(config-if)# interface gigabitEthernet 0/1 R2(config-if)# ip address 10.0.0.2 255.255.255.252 R2(config-if)# no shutdown R2(config-if)# exit R2(config)# ip route 0.0.0.0 0.0.0.0 10.0.0.1
つまずきポイント
- ルータのインターフェースはデフォルトでshutdown。
no shutdownを忘れるとup/upにならない(スイッチとの違い) - 経路は「行き」と「帰り」の両方が必要。R1だけに静的ルートを入れてもpingは返ってこない
- PCのデフォルトゲートウェイ設定忘れは最頻出ミス。同一セグメント以外と通信できなくなる
VLAN間ルーティング(router-on-a-stick)
到達目標
- サブインターフェースと802.1Qカプセル化でVLAN間ルーティングを構成できる
- 各VLANのゲートウェイがどこにあるかを説明できる
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| R1(2911) | Gi0/0 | SW1(2960) | Gi0/1 | ストレート |
| SW1 | Fa0/1 | PC1 | – | ストレート |
| SW1 | Fa0/2 | PC2 | – | ストレート |
| 機器 | IPアドレス/マスク | デフォルトGW | 所属VLAN |
|---|---|---|---|
| PC1 | 192.168.10.11 /24 | 192.168.10.1 | 10(Sales) |
| PC2 | 192.168.20.11 /24 | 192.168.20.1 | 20(Accounting) |
| R1 Gi0/0.10 | 192.168.10.1 /24 | – | VLAN 10用サブIF |
| R1 Gi0/0.20 | 192.168.20.1 /24 | – | VLAN 20用サブIF |
課題
- SW1にVLAN 10・20を作成し、Fa0/1をVLAN 10、Fa0/2をVLAN 20のアクセスポートに設定せよ
- SW1のGi0/1(ルータ向き)をトランクに設定せよ
- R1の物理インターフェースGi0/0を(IPアドレスなしで)有効化せよ
- サブインターフェースGi0/0.10にVLAN 10のカプセル化とIP 192.168.10.1/24 を、Gi0/0.20にVLAN 20と192.168.20.1/24 を設定せよ
- PC1→PC2(VLAN跨ぎ)のpingが成功することを確認せよ
検証
- R1の
show ip route— 192.168.10.0/24 と 192.168.20.0/24 が直結(C)で2つ載っている - R1の
show ip interface brief— Gi0/0.10 / Gi0/0.20 が up/up - PC1から
ping 192.168.20.11が成功する
解答例を見る
SW1のVLAN・アクセスポート設定はLab 02と同じ要領。
SW1(config)# interface gigabitEthernet 0/1 SW1(config-if)# switchport mode trunk
R1(config)# interface gigabitEthernet 0/0 R1(config-if)# no shutdown R1(config-if)# exit R1(config)# interface gigabitEthernet 0/0.10 R1(config-subif)# encapsulation dot1Q 10 R1(config-subif)# ip address 192.168.10.1 255.255.255.0 R1(config-subif)# exit R1(config)# interface gigabitEthernet 0/0.20 R1(config-subif)# encapsulation dot1Q 20 R1(config-subif)# ip address 192.168.20.1 255.255.255.0 R1(config-subif)# end R1# show ip route
つまずきポイント
- サブインターフェースでは
encapsulation dot1Q 10を先に入れる。先にIPを設定しようとするとエラーになる - 物理インターフェース本体の
no shutdownを忘れるとサブIFも全部downのまま - スイッチ側のGi0/1をトランクにし忘れると、VLAN 10のフレームしか届かない(アクセスポートのVLANだけ通る)
OSPFシングルエリア
到達目標
- 3台のルータでOSPF(エリア0)を構成し、ネイバーをFULLにできる
- router-id・passive-interfaceを正しく設定できる
- リンク障害時の自動迂回を確認できる
機器と配線(三角形構成)
| 機器A | ポート | 機器B | ポート | ネットワーク | ケーブル |
|---|---|---|---|---|---|
| R1(2911) | Gi0/1 | R2(2911) | Gi0/1 | 10.0.12.0/30(R1=.1、R2=.2) | クロス |
| R2 | Gi0/2 | R3(2911) | Gi0/2 | 10.0.23.0/30(R2=.1、R3=.2) | クロス |
| R1 | Gi0/2 | R3 | Gi0/1 | 10.0.13.0/30(R1=.1、R3=.2) | クロス |
| R1 | Gi0/0 | PC1(192.168.1.11 /24、GW .1) | – | 192.168.1.0/24(R1=.1) | クロス |
| R3 | Gi0/0 | PC3(192.168.3.11 /24、GW .1) | – | 192.168.3.0/24(R3=.1) | クロス |
課題
- 表の通りに全インターフェースへIPを設定し有効化せよ(PCとルータの直結はクロスケーブル)
- 各ルータでOSPFプロセス1を起動し、router-idをR1=1.1.1.1、R2=2.2.2.2、R3=3.3.3.3に設定せよ
- 各ルータが持つネットワークをすべてエリア0で有効化せよ(ワイルドカードマスクに注意)
- PC収容セグメント(R1とR3のGi0/0)をpassive-interfaceに設定せよ
- PC1→PC3のpingが成功することを確認せよ
- (障害試験)R1-R3間のケーブルを削除し、数十秒待ってからPC1→PC3のpingがR2経由で復活することをtracertで確認せよ
検証
show ip ospf neighbor— 各ルータに2つのネイバーがFULLで表示されるshow ip route ospf— Oの経路が載っている(R1なら192.168.3.0/24など)- 障害試験後、PC1の
tracert 192.168.3.11が10.0.12.2(R2)経由に変わっている
解答例を見る
IPアドレス設定はLab 06と同じ要領のため省略し、OSPF部分のみ示す。
R1(config)# router ospf 1 R1(config-router)# router-id 1.1.1.1 R1(config-router)# network 192.168.1.0 0.0.0.255 area 0 R1(config-router)# network 10.0.12.0 0.0.0.3 area 0 R1(config-router)# network 10.0.13.0 0.0.0.3 area 0 R1(config-router)# passive-interface gigabitEthernet 0/0
R2(config)# router ospf 1 R2(config-router)# router-id 2.2.2.2 R2(config-router)# network 10.0.12.0 0.0.0.3 area 0 R2(config-router)# network 10.0.23.0 0.0.0.3 area 0
R3(config)# router ospf 1 R3(config-router)# router-id 3.3.3.3 R3(config-router)# network 192.168.3.0 0.0.0.255 area 0 R3(config-router)# network 10.0.23.0 0.0.0.3 area 0 R3(config-router)# network 10.0.13.0 0.0.0.3 area 0 R3(config-router)# passive-interface gigabitEthernet 0/0
つまずきポイント
- network文はワイルドカードマスク(/30なら
0.0.0.3、/24なら0.0.0.255)。サブネットマスクを書くと意図しない範囲になる - router-idを後から変えた場合は
clear ip ospf processを実行しないと反映されない - passive-interfaceをルータ間リンクに設定するとネイバーが切れる。PC側セグメントだけに設定する
DHCPサーバとリレー
到達目標
- ルータをDHCPサーバとして設定できる
- 別セグメントのクライアントに ip helper-address でアドレスを配れる
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| R1(2911・DHCPサーバ役) | Gi0/1 | R2(2911) | Gi0/1 | クロス |
| R2 | Gi0/0 | SW2(2960) | Fa0/1 | ストレート |
| SW2 | Fa0/2〜3 | PC1・PC2(DHCP取得) | – | ストレート |
| 機器 | インターフェース | IPアドレス/マスク |
|---|---|---|
| R1 | Gi0/1 | 10.0.0.1 /30 |
| R2 | Gi0/1 | 10.0.0.2 /30 |
| R2 | Gi0/0 | 192.168.2.1 /24 |
課題
- 表の通りにIPを設定し、R1に「192.168.2.0/24 → 10.0.0.2」の静的ルート、R2にデフォルトルート(→10.0.0.1)を設定せよ(Lab 06の復習)
- R1で、192.168.2.1〜192.168.2.10 を配布対象から除外せよ
- R1にDHCPプール「LAN2」を作成せよ。配布ネットワーク192.168.2.0/24、デフォルトゲートウェイ192.168.2.1、DNSサーバ8.8.8.8
- R2のPC収容インターフェースに、DHCP要求をR1へ中継する設定を入れよ
- PC1・PC2のIP設定をDHCPに切り替え、192.168.2.11以降のアドレスが取得できることを確認せよ
検証
- PCのIP Configurationで「DHCP request successful」となり、IP・GW・DNSが入る
- R1の
show ip dhcp binding— 配布したアドレスとMACの対応が2件表示される - 除外設定が効いて、配布アドレスが192.168.2.11から始まっている
解答例を見る
IP・ルーティング設定はLab 06参照。DHCP部分のみ示す。
R1(config)# ip dhcp excluded-address 192.168.2.1 192.168.2.10 R1(config)# ip dhcp pool LAN2 R1(dhcp-config)# network 192.168.2.0 255.255.255.0 R1(dhcp-config)# default-router 192.168.2.1 R1(dhcp-config)# dns-server 8.8.8.8
R2(config)# interface gigabitEthernet 0/0 R2(config-if)# ip helper-address 10.0.0.1
つまずきポイント
ip helper-addressはクライアントがつながっている側のインターフェース(R2のGi0/0)に入れる。WAN側ではない- R1に192.168.2.0/24への戻り経路が無いと、リレーされた要求に応答できず配布が失敗する
- excluded-addressを忘れるとゲートウェイ用の.1なども配布対象になってしまう
NAT/PAT
到達目標
- PAT(オーバーロード)で社内の複数PCを1つのグローバルIPに変換できる
- show ip nat translations の見方がわかる
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| R1(社内GW) | Gi0/0 | SW1(2960) | Fa0/1 | ストレート |
| SW1 | Fa0/2〜3 | PC1・PC2 | – | ストレート |
| R1 | Gi0/1 | ISP(2911) | Gi0/1 | クロス |
| ISP | Gi0/0 | Webサーバ(Server-PT) | – | クロス |
| 機器 | インターフェース | IPアドレス/マスク | GW |
|---|---|---|---|
| PC1/PC2 | – | 192.168.1.11/.12 /24 | 192.168.1.1 |
| R1 | Gi0/0 | 192.168.1.1 /24 | – |
| R1 | Gi0/1 | 203.0.113.1 /30 | – |
| ISP | Gi0/1 | 203.0.113.2 /30 | – |
| ISP | Gi0/0 | 198.51.100.1 /24 | – |
| Webサーバ | – | 198.51.100.10 /24 | 198.51.100.1 |
課題
- 表の通りにIPを設定し、R1にデフォルトルート(→203.0.113.2)を設定せよ。ISPルータには社内(192.168.1.0/24)への経路を設定しないこと
- この時点でPC1→Webサーバ(198.51.100.10)のpingが失敗することを確認し、理由を説明せよ(行きは届くが帰りの経路が無い)
- R1にPATを設定せよ: NAT対象(192.168.1.0/24)をACL 1で定義し、Gi0/1のアドレスに変換(overload)、inside/outsideのインターフェース指定も行うこと
- PC1・PC2の両方からWebサーバへping+Webブラウザで http://198.51.100.10 を開け
- R1で変換テーブルを表示し、2台のPCが同じグローバルIPをポート番号で共有していることを確認せよ
検証
show ip nat translations— Inside localに192.168.1.11と.12、Inside globalがどちらも203.0.113.1(ポート違い)- PC1・PC2からWebサーバへのping・HTTP閲覧が成功する
- ISPルータに社内への経路が無いのに通信できる理由を自分の言葉で説明できる
解答例を見る
IP設定は表の通り(Lab 06の要領)。NAT部分のみ示す。
R1(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.2 R1(config)# access-list 1 permit 192.168.1.0 0.0.0.255 R1(config)# ip nat inside source list 1 interface gigabitEthernet 0/1 overload R1(config)# interface gigabitEthernet 0/0 R1(config-if)# ip nat inside R1(config-if)# interface gigabitEthernet 0/1 R1(config-if)# ip nat outside R1(config-if)# end R1# show ip nat translations
つまずきポイント
ip nat inside/ip nat outsideのインターフェース指定を忘れると一切変換されない(最頻出)- ここでのACLは「変換対象の定義」。permitは「変換する」という意味で、通信許可のACLとは役割が違う
- 変換テーブルは通信が発生して初めて作られ、アイドルで消える。pingした直後に確認する
標準ACLと拡張ACL
到達目標
- 標準ACL・拡張ACLを作成し、正しい場所・方向に適用できる
- 「標準は宛先近く・拡張は送信元近く」の原則を体感する
機器と配線(Lab 06の構成+サーバ1台)
| 機器A | ポート | 機器B | ケーブル |
|---|---|---|---|
| R1 Gi0/0 | ↔ | SW1 Fa0/1(配下にPC1: 192.168.1.11、PC2: 192.168.1.12、GW .1) | ストレート |
| R1 Gi0/1(10.0.0.1/30) | ↔ | R2 Gi0/1(10.0.0.2/30) | クロス |
| R2 Gi0/0 | ↔ | SW2 Fa0/1(配下にServer-PT: 192.168.2.10、GW 192.168.2.1) | ストレート |
R1に静的ルート(192.168.2.0/24→10.0.0.2)、R2にデフォルトルート(→10.0.0.1)を設定し、PC→サーバの疎通を先に確認しておくこと(Lab 06の復習)。
課題
- 【標準ACL】PC1(192.168.1.11)だけがサーバセグメントにアクセスできないようにせよ。番号10の標準ACLを作り、原則に従って「宛先に近い場所」=R2のGi0/0のout方向に適用すること
- PC1→サーバのpingが失敗し、PC2→サーバは成功することを確認せよ
- 標準ACLをインターフェースから外せ(ACL定義自体は残してよい)
- 【拡張ACL】「192.168.1.0/24からサーバ192.168.2.10へのICMPだけ拒否、その他の通信はすべて許可」する番号100の拡張ACLを作り、「送信元に近い場所」=R1のGi0/0のin方向に適用せよ
- PC1→サーバのpingが失敗し、ブラウザで http://192.168.2.10 は開けることを確認せよ(サーバのHTTPサービスはデフォルトでON)
検証
show access-lists— 各エントリにマッチ数(matches)がカウントされているshow running-config interface gigabitEthernet 0/0—ip access-group 100 inが入っている- ping失敗・HTTP成功という「プロトコル単位の制御」ができている
解答例を見る
まず自力で。適用場所と方向を自分で考えるのがこのラボの本体。
R2(config)# access-list 10 deny host 192.168.1.11 R2(config)# access-list 10 permit any R2(config)# interface gigabitEthernet 0/0 R2(config-if)# ip access-group 10 out
R2(config)# interface gigabitEthernet 0/0 R2(config-if)# no ip access-group 10 out
R1(config)# access-list 100 deny icmp 192.168.1.0 0.0.0.255 host 192.168.2.10 R1(config)# access-list 100 permit ip any any R1(config)# interface gigabitEthernet 0/0 R1(config-if)# ip access-group 100 in
つまずきポイント
permit any(またはpermit ip any any)を書き忘れると、末尾の暗黙のdenyで全通信が遮断される- in/outの方向は「ルータから見て」入るか出るか。PC側から見た向きと混同しやすい
- 番号付きACLは行単位の編集ができない(旧IOS仕様)。作り直すときは
no access-list 100で丸ごと消す
SSHとポートセキュリティ
到達目標
- スイッチへのSSHアクセスを一から有効化できる
- ポートセキュリティ(sticky・violation shutdown)を設定し、復旧手順までできる
機器と配線
| 機器A | ポート | 機器B | ケーブル |
|---|---|---|---|
| SW1(2960) | Fa0/1 | PC1(192.168.1.11 /24・管理用) | ストレート |
| SW1 | Fa0/2 | PC2(192.168.1.12 /24) | ストレート |
課題
- SW1のVLAN 1のSVIに管理用IP 192.168.1.2/24 を設定し、PC1から
ping 192.168.1.2が通ることを確認せよ - SSHを有効化せよ: ホスト名SW1、ドメイン名
techvillage.local、1024ビットのRSA鍵、ローカルユーザadmin(secret:cisco123)、SSHバージョン2 - VTY回線をローカルユーザ認証+SSH専用に設定せよ(Telnetは受け付けないこと)
- PC1のCommand Promptから
ssh -l admin 192.168.1.2で接続し、telnet 192.168.1.2が拒否されることを確認せよ - Fa0/1にポートセキュリティを設定せよ: 最大1アドレス・sticky学習・違反時shutdown
- (破壊実験)Fa0/1のケーブルをPC2につなぎ替えて通信を発生させ、ポートがerr-disabledになることを確認。元に戻して復旧手順を実施せよ
検証
show ip ssh— SSH Enabled – version 2.0show port-security interface fastEthernet 0/1— Violation Mode: Shutdown、Sticky MACが1件- 破壊実験後
show interfaces status err-disabledにFa0/1が出る → 復旧後消える
解答例を見る
鍵生成時に聞かれるモジュラスは1024と入力。
Switch(config)# hostname SW1 SW1(config)# interface vlan 1 SW1(config-if)# ip address 192.168.1.2 255.255.255.0 SW1(config-if)# no shutdown SW1(config-if)# exit SW1(config)# ip domain-name techvillage.local SW1(config)# username admin secret cisco123 SW1(config)# crypto key generate rsa How many bits in the modulus [512]: 1024 SW1(config)# ip ssh version 2 SW1(config)# line vty 0 15 SW1(config-line)# login local SW1(config-line)# transport input ssh
SW1(config)# interface fastEthernet 0/1 SW1(config-if)# switchport mode access SW1(config-if)# switchport port-security SW1(config-if)# switchport port-security maximum 1 SW1(config-if)# switchport port-security mac-address sticky SW1(config-if)# switchport port-security violation shutdown
SW1(config)# interface fastEthernet 0/1 SW1(config-if)# shutdown SW1(config-if)# no shutdown
つまずきポイント
- ドメイン名を設定しないとRSA鍵が生成できない(エラーメッセージを読む練習にもなる)
- ポートセキュリティは
switchport mode accessが前提。dynamicモードのポートでは拒否される - sticky学習したMACはrunning-configに書かれるだけ。
copy running-config startup-configしないと再起動で消える
IPv6アドレッシングと静的ルート
到達目標
- IPv6アドレスをインターフェースに設定し、ルーティングを有効化できる
- IPv6の静的ルート・デフォルトルートを設定できる
- リンクローカルアドレスが自動生成されることを確認できる
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| R1(2911) | Gi0/0 | PC1 | – | クロス(直結) |
| R1 | Gi0/1 | R2(2911) | Gi0/1 | クロス |
| R2 | Gi0/0 | PC2 | – | クロス(直結) |
| 機器 | インターフェース | IPv6アドレス | GW |
|---|---|---|---|
| R1 | Gi0/0 | 2001:db8:1::1 /64 | – |
| R1 | Gi0/1 | 2001:db8:12::1 /64 | – |
| R2 | Gi0/1 | 2001:db8:12::2 /64 | – |
| R2 | Gi0/0 | 2001:db8:2::1 /64 | – |
| PC1 | – | 2001:db8:1::11 /64 | 2001:db8:1::1 |
| PC2 | – | 2001:db8:2::11 /64 | 2001:db8:2::1 |
課題
- 両ルータでIPv6のルーティングを有効化せよ(このコマンドを忘れるとルータはIPv6を転送しない)
- 表の通りに各インターフェースへIPv6アドレスを設定し有効化せよ
show ipv6 interface briefで、設定したGUAに加えてリンクローカルアドレス(FE80::〜)が自動生成されていることを確認せよ- R1に「2001:db8:2::/64 → 2001:db8:12::2」の静的ルートを、R2にはIPv6デフォルトルート(::/0 → 2001:db8:12::1)を設定せよ
- PC1→PC2のpingが成功することを確認せよ
検証
show ipv6 route— R1にS(静的)、R2にS ::/0 が載っているshow ipv6 interface brief— 各IFにGUAとFE80::のリンクローカルの2つが表示される- PC1から
ping 2001:db8:2::11成功
解答例を見る
R2はアドレスとデフォルトルート以外R1と同じ要領。
R1(config)# ipv6 unicast-routing R1(config)# interface gigabitEthernet 0/0 R1(config-if)# ipv6 address 2001:db8:1::1/64 R1(config-if)# no shutdown R1(config-if)# interface gigabitEthernet 0/1 R1(config-if)# ipv6 address 2001:db8:12::1/64 R1(config-if)# no shutdown R1(config-if)# exit R1(config)# ipv6 route 2001:db8:2::/64 2001:db8:12::2
R2(config)# ipv6 unicast-routing R2(config)# ipv6 route ::/0 2001:db8:12::1
つまずきポイント
ipv6 unicast-routingを忘れるのが最頻出。インターフェース疎通はできるのにルーティングされない、という症状になる- 1つのインターフェースにGUAとリンクローカルの複数アドレスが付くのはIPv6では正常(IPv4の感覚との違い)
- プレフィックスは
/64をアドレスに続けて書く(サブネットマスク表記は無い)
総合演習: 小規模オフィスネットワーク構築
到達目標
- 要件リストだけを頼りに、ここまでの全技術を組み合わせて1つのネットワークを構築できる
- 本番のシミュレーション問題と同じ「要件→設定→検証」の流れを通しで体験する
機器と配線
| 機器A | ポート | 機器B | ポート | ケーブル |
|---|---|---|---|---|
| SW1(2960) | Fa0/1〜2 | PC1・PC2(営業部) | – | ストレート |
| SW1 | Fa0/3〜4 | PC3・PC4(経理部) | – | ストレート |
| SW1 | Gi0/1 | R1(2911) | Gi0/0 | ストレート |
| R1 | Gi0/1(203.0.113.1 /30) | ISP(2911) | Gi0/1(203.0.113.2 /30) | クロス |
| ISP | Gi0/0(198.51.100.1 /24) | Webサーバ(198.51.100.10、GW .1) | – | クロス |
要件(この順に構築するとよい)
- 【VLAN】SW1にVLAN 10(Sales)・VLAN 20(Accounting)を作成し、Fa0/1-2をVLAN 10、Fa0/3-4をVLAN 20に割り当て、Gi0/1をトランクにせよ
- 【VLAN間ルーティング】R1のGi0/0でrouter-on-a-stickを構成せよ(Gi0/0.10=192.168.10.1/24、Gi0/0.20=192.168.20.1/24)
- 【DHCP】R1をDHCPサーバにし、両VLANのPCへアドレスを自動配布せよ(各セグメント .1〜.10 は除外、GW・DNS 8.8.8.8 配布)
- 【WAN】表の通りにR1-ISP間とサーバを設定し、R1にデフォルトルート(→203.0.113.2)を設定せよ。ISPに社内への経路は設定しない
- 【PAT】社内(192.168.10.0/24と192.168.20.0/24)からインターネット向け通信をGi0/1のIPに変換せよ
- 【ACL】経理部(VLAN 20)からWebサーバへのHTTP(TCP 80)だけを拒否し、その他の通信は許可せよ。適用場所は自分で判断すること
- 【管理】SW1にVLAN 10のSVI(192.168.10.2/24)とデフォルトゲートウェイを設定し、SSH(ユーザadmin/secret cisco123・SSH専用)でアクセスできるようにせよ
- 【ポートセキュリティ】Fa0/1〜4に最大1アドレス・sticky・violation shutdownを設定せよ
- すべての機器で設定を保存せよ
検証チェックリスト(全部○で合格)
- PC1〜4全台がDHCPでアドレス取得できている(.11以降が配布される)
- PC1(VLAN 10)→PC3(VLAN 20)のpingが通る(VLAN間ルーティング)
- PC1からWebサーバ http://198.51.100.10 が閲覧できる(PAT越しのHTTP)
- PC3からWebサーバへのpingは通るが、http://198.51.100.10 は開けない(ACLがHTTPだけ拒否)
- R1の
show ip nat translationsに変換エントリが出る - PC1から
ssh -l admin 192.168.10.2でSW1に入れる(telnetは拒否) - SW1の
show port-securityでFa0/1〜4が有効・sticky学習済み - SW1の
show interfaces trunkにGi0/1が表示される - R1の
show ip routeに2つの直結(.10/.20サブIF)とS*デフォルトルートがある - 再起動しても全設定が残る(startup-configに保存済み)
解答例を見る
これは「答え合わせ」用。本番想定なので、最低60分は自力で粘ること。
Switch(config)# hostname SW1 SW1(config)# vlan 10 SW1(config-vlan)# name Sales SW1(config-vlan)# vlan 20 SW1(config-vlan)# name Accounting SW1(config-vlan)# exit SW1(config)# interface range fastEthernet 0/1-2 SW1(config-if-range)# switchport mode access SW1(config-if-range)# switchport access vlan 10 SW1(config-if-range)# interface range fastEthernet 0/3-4 SW1(config-if-range)# switchport mode access SW1(config-if-range)# switchport access vlan 20 SW1(config-if-range)# exit SW1(config)# interface gigabitEthernet 0/1 SW1(config-if)# switchport mode trunk SW1(config-if)# exit SW1(config)# interface range fastEthernet 0/1-4 SW1(config-if-range)# switchport port-security SW1(config-if-range)# switchport port-security maximum 1 SW1(config-if-range)# switchport port-security mac-address sticky SW1(config-if-range)# switchport port-security violation shutdown SW1(config-if-range)# exit SW1(config)# interface vlan 10 SW1(config-if)# ip address 192.168.10.2 255.255.255.0 SW1(config-if)# no shutdown SW1(config-if)# exit SW1(config)# ip default-gateway 192.168.10.1 SW1(config)# ip domain-name techvillage.local SW1(config)# username admin secret cisco123 SW1(config)# crypto key generate rsa How many bits in the modulus [512]: 1024 SW1(config)# ip ssh version 2 SW1(config)# line vty 0 15 SW1(config-line)# login local SW1(config-line)# transport input ssh SW1(config-line)# end SW1# copy running-config startup-config
Router(config)# hostname R1 R1(config)# interface gigabitEthernet 0/0 R1(config-if)# no shutdown R1(config-if)# interface gigabitEthernet 0/0.10 R1(config-subif)# encapsulation dot1Q 10 R1(config-subif)# ip address 192.168.10.1 255.255.255.0 R1(config-subif)# ip nat inside R1(config-subif)# interface gigabitEthernet 0/0.20 R1(config-subif)# encapsulation dot1Q 20 R1(config-subif)# ip address 192.168.20.1 255.255.255.0 R1(config-subif)# ip nat inside R1(config-subif)# interface gigabitEthernet 0/1 R1(config-if)# ip address 203.0.113.1 255.255.255.252 R1(config-if)# ip nat outside R1(config-if)# no shutdown R1(config-if)# exit R1(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.2 R1(config)# ip dhcp excluded-address 192.168.10.1 192.168.10.10 R1(config)# ip dhcp excluded-address 192.168.20.1 192.168.20.10 R1(config)# ip dhcp pool SALES R1(dhcp-config)# network 192.168.10.0 255.255.255.0 R1(dhcp-config)# default-router 192.168.10.1 R1(dhcp-config)# dns-server 8.8.8.8 R1(dhcp-config)# ip dhcp pool ACCOUNTING R1(dhcp-config)# network 192.168.20.0 255.255.255.0 R1(dhcp-config)# default-router 192.168.20.1 R1(dhcp-config)# dns-server 8.8.8.8 R1(dhcp-config)# exit R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255 R1(config)# access-list 1 permit 192.168.20.0 0.0.0.255 R1(config)# ip nat inside source list 1 interface gigabitEthernet 0/1 overload R1(config)# access-list 120 deny tcp 192.168.20.0 0.0.0.255 host 198.51.100.10 eq 80 R1(config)# access-list 120 permit ip any any R1(config)# interface gigabitEthernet 0/0.20 R1(config-subif)# ip access-group 120 in R1(config-subif)# end R1# copy running-config startup-config
Router(config)# hostname ISP ISP(config)# interface gigabitEthernet 0/1 ISP(config-if)# ip address 203.0.113.2 255.255.255.252 ISP(config-if)# no shutdown ISP(config-if)# interface gigabitEthernet 0/0 ISP(config-if)# ip address 198.51.100.1 255.255.255.0 ISP(config-if)# no shutdown ISP(config-if)# end ISP# copy running-config startup-config
つまずきポイント
- ROAS構成でのNATは、insideの指定をサブインターフェース(Gi0/0.10と.20)に入れる。物理IF本体に入れても効かない
- HTTP拒否のACLはinの方向で、経理部の入口(Gi0/0.20)に置くのが最小影響。置き場所を間違えるとVLAN間通信まで巻き込む
- SW1のSSHにはdefault-gatewayが必要(管理アクセス元が別セグメントの場合)。L2スイッチにも「自分の戻り経路」が要ることを忘れない
- チェックリストが1つでも×なら、どの技術レイヤーの問題か(L1配線→VLAN→ルーティング→NAT/ACL)を下から順に切り分ける