はじめに
CLIを使ったネットワーク機器の操作を学んでいる中で、いくつもの勘違いと構文エラーに遭遇しました。同じような悩みを持つ方の参考になればと思い、学んだポイントをまとめます。
1. WindowsのコマンドプロンプトではCiscoコマンドは実行できない
最初の大きな勘違いは、PC上のコマンドプロンプトでCiscoコマンドを実行しようとしたことです。
C:\Users\...> copy running-config startup-config
'copy' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。
なぜエラーが出たのか:
- コマンドプロンプトは Windows OS を操作するもの
- Ciscoコマンドはルーター内部で実行されるもの
- これら両者は全く別の環境
つまり、PC 上の命令体系と、ネットワーク機器の命令体系は異なるということです。ネットワークコマンドを実行するには、ルーターに接続してその内部でコマンドを打つ必要があります。
2. 家庭用ルーターと業務用機器の大きな違い
「ならルーターに接続すればいい」と考え、手持ちの Buffalo Wi-Fi ルーター(WSR-2533DHPLS)に Tera Term で接続を試みました。PC 上で COM ポートを発見し、接続したものの、画面は真っ黒のまま。何も反応がありません。
ここで気づいたこと:
| 項目 | 家庭用ルーター | Cisco等の業務用機器 |
|---|---|---|
| CLI対応 | ほぼなし(Webブラウザで設定) | あり(CLIで詳細設定可能) |
| コンソールポート | ない | ある(Tera Termで接続可能) |
| 設定方法 | GUI(ブラウザ経由) | CLI(テキストベース) |
家庭用ルーターはユーザー向けに GUI での設定が一般的。一方、Cisco などの業務用機器は CLI での操作が想定されています。Tera Term で「黒い画面」を操作するのは、後者の業務用機器がメインなのです。
3. 実機を手軽に試す:Cisco Packet Tracer
実際の業務用ルーターを購入するのはハードルが高いため、Cisco 公式のネットワークシミュレーションソフト「Cisco Packet Tracer」を活用することにしました。
Packet Tracer の利点:
- 無料で利用可能(Cisco Learning Network への登録が必要)
- PC 上で仮想的にルーターやスイッチを配置できる
- ケーブル接続やコマンド設定を練習できる
- 実機の購入よりも学習コストが低い
このツールのおかげで、自宅で本格的なコマンド操作の練習が可能になりました。
4. Ciscoコマンドの構文エラー:よくあるパターン
Packet Tracer でコマンド入力を開始した時点で、新たな罠が待っていました。
① 括弧や山括弧の扱い方の誤解
参考書やヘルプに以下のように書かれていたため、そのままカッコまで入力してしまいました:
誤った例:
Router(config)# username ishikawa [privilege 15] password ccna
% Invalid input detected at '^' marker.
正しい例:
Router(config)# username ishikawa privilege 15 password ccna
重要なポイント:
-
[ ]= 「ここは省略可能」という意味の記号(実際には入力しない) -
< >= 「ここに値を入力」という意味の記号(実際には入力しない) -
{ }= 「いずれか1つを選んで入力」という意味
括弧は「コマンド文法の説明用」であり、コマンド本体ではありません。
② モード(実行位置)の違いによるエラー
自動ログアウト時間を設定する exec-timeout コマンドが実行できない問題に遭遇しました。
誤った例:
Router(config)# exec-timeout 5 30
% Invalid input detected at '^' marker.
正しい例:
Router(config)# line vty 0 4
Router(config-line)# exec-timeout 5 30
学んだこと:
- Ciscoコマンドには「実行する場所(モード)」が決まっている
-
exec-timeoutはルーター全体の設定ではなく、特定の回線の設定で行う - 同じコマンドでも、「どのモードにいるか」によって実行可能性が決まる
Cisco CLI の主なモードは以下の通り:
-
User EXEC:
Router> -
Privileged EXEC:
Router# -
Global Configuration:
Router(config)# -
Line Configuration:
Router(config-line)# -
Interface Configuration:
Router(config-if)#
5. エラーメッセージの読み方
Cisco デバイスからのエラーメッセージには、問題箇所を示す キャレット(^) が表示されます。
Router(config)# exec-timeout 5 30
^
% Invalid input detected at '^' marker.
このマークは「この位置に構文エラーがある」という親切な指示。エラーメッセージの直前の行を確認して、その位置を中心に修正を検討すると解決しやすいです。
まとめ
ネットワークコマンド操作の学習で重要なポイント:
- 対象を理解する - Windows と機器内部は異なる環境
- 機器の仕様を確認 - 家庭用と業務用では機能が異なる
- シミュレーターを活用 - Packet Tracer で安全に練習できる
- 文法を正確に - 括弧記号は説明用。コマンドに含めない
- モードを意識 - コマンドは実行位置によって可否が変わる
- エラーメッセージを読む - キャレットはデバッグの手がかり
次のステップは、これらの基礎を踏まえて、ルーティング設定などの実践的なコマンド操作に進んでいく予定です。