コマンドの種類

Cisco機器のコマンドは、大きく次の2種類にわかれます。

  • 設定コマンド
  • 確認コマンド

この2種類の違いは、読んで字のごとくです。設定コマンドは、Cisco機器のIPアドレスやホスト名などの設定を行うためのコマンドで、running-configに追加されるコマンドです。

そして、確認コマンドはCisco機器の動作や状態を確認するためのコマンドです。pingコマンドやtracerouteコマンドで通信できるかどうかを確認したり、showコマンドでCisco機器の状態を確認します。また、debugコマンドでCisco機器の動作をリアルタイムで確認できます。ただ、debugコマンドはCisco機器の動作を詳細に確認できる一方、機器の負荷をかけてしまいます。debugコマンドを利用するときには注意が必要です。

ずいぶんと当たり前のことですが、さまざまなコマンドはこの2種類に分類できるということが重要なポイントです。そして、2種類のコマンドを適切に使うためにCisco機器のCLIでのモードを理解しておく必要があります。

確認コマンドのことをCiscoのマニュアルなどではEXECコマンド(実行コマンド)と呼んでいます。個人的に「確認コマンド」のほうがわかりやすいと考えていますので、ここでは「確認コマンド」としています。

CLIモードの種類

Cisco機器のCLIでは実行できるコマンドに応じて、次の2つのモードがあります。

  • EXECモード
  • コンフィグレーションモード

EXECモードは確認コマンド(EXECコマンド)を実行するためのモードです。実行するコマンドの権限に応じて、ユーザEXECモードと特権EXECモードがあります。

ユーザEXECモードは、実行できる確認コマンドがpingなどの限られたコマンドだけです。ユーザEXECモードでは、running-configを表示するためのshow running-configコマンドは実行できません。特権EXECモードはいわゆる管理者権限で、すべてのEXECコマンドを実行できます。

EXECモードの権限は、ユーザEXECモードと特権EXECモード以外にもカスタマイズできます。0~15の権限レベルがあり、ユーザEXECモードは権限レベル0で特権EXECモードは権限レベル15です。1~14の範囲の権限レベルごとに実行できるEXECコマンドを細かく制御できます。

コンフィグレーションモードは、設定コマンドを実行するためのモードです。コンフィグレーションモードは、Cisco機器のどのような設定コマンドを実行するかによって、さらに以下のようなモードに細分化されます。

  • グローバルコンフィグレーションモード
  • インタフェースコンフィグレーションモード
  • ルーティングプロトコルコンフィグレーションモード
  • その他、さまざまなコンフィグレーションモード

グローバルコンフィグレーションモードは、Cisco機器全体に関わる設定コマンドを実行するモードです。たとえば、ホスト名や特権EXECモードのパスワードを設定するためのコマンドなどはグローバルコンフィグレーションモードで実行します。また、グローバルコンフィグレーションモードはすべてのコンフィグレーションモードの起点となるモードです。

インタフェースコンフィグレーションモードは、インタフェースにIPアドレスを設定するなどインタフェースに関する設定コマンドを実行するモードです。

そして、ルーティングプロトコルコンフィグレーションモードは、RIPやOSPF、EIGRPといったルーティングプロトコルに関する設定コマンドを実行するモードです。

ルーティングプロトコルに関する設定コマンドは、ルーティングプロトコルコンフィグレーションモードだけでなく、インタフェースコンフィグレーションモードでコマンドを実行することもあります。
図 CLIモードの種類

先頭に「do」をつけることによって、コンフィグレーションから確認コマンドを実行することができます。

CLIモードの移行

Cisco機器にコンソール接続してターミナルソフトウェアを起動すると、最初に以下のような表示になります。

Router con0 is now available





Press RETURN to get started.

[Enter]キーを押すとログインでき、最初はユーザEXECモードです。ユーザEXECモードでは、コマンドを待ち受けるプロンプトで「>」が表示されます。

Router>

ユーザEXECモードから特権EXECモードに移行するには、「enable」と入力します。

Router>enable
Router#

プロンプトで「#」が表示され、特権EXECモードであることを意味しています。

  • 特権EXECモードからユーザEXECモードに戻るには「disable」と入力します。
  • デフォルトでは、「enable」と入力するとすぐに特権EXECモードに移行しますが、セキュリティ上は望ましくありません。通常は、特権EXECモードに移行する際には認証するように設定します。

そして、特権EXECモードからグローバルコンフィグレーションモードへ移行するために「configure terminal」と入力します。

Router#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#

プロンプトの表示が「(config)#」となり、グローバルコンフィグレーションモードに移行したことがわかります。また、「1行ずつ設定コマンドを入力する」というメッセージが表示されます。

グローバルコンフィグレーションモードからインタフェースコンフィグレーションモードに移行するには、「interface <interface-name>」と入力します。例として、FastEthernet0/0というインタフェースのインタフェースコンフィグレーションモードに移行する場合は、次のようになります。

Router(config)#interface FastEthernet0/0
Router(config-if)#

「(config-if)#」というプロンプトからインタフェースコンフィグレーションモードに移行していることがわかります。

  • Cisco機器のインタフェース名(interface-name)のルールは「Ciscoのインタフェース」をご覧ください。
  • 「(config-if)#」というプロンプトだけでは、どのインタフェースのインタフェースコンフィグレーションモードにいるかはわかりません。

また、グローバルコンフィグレーションモードからルーティングプロトコルコンフィグレーションモードへ移行するには、「router <routing-protocol>」と入力します。RIPのルーティングプロトコルコンフィグレーションモードへ移行する場合は、以下のようになります。

Router(config)#router rip
Router(config-router)#

「(config-router)#」というプロンプトでルーティングプロトコルコンフィグレーションモードに移行していることがわかります。

ルーティングプロトコルによっては、「router <routing-protocol>」のあとにさらに追加のパラメータが必要です。

インタフェースコンフィグレーションモードやルーティングプロトコルコンフィグレーションモードから「exit」と入力すると、グローバルコンフィグレーションモードに戻ります。また、「end」と入力すると、特権EXECモードまで戻ります。

Router(config)#interface FastEthernet0/0
Router(config-if)#exit
Router(config)#
Router(config)#router rip
Router(config-router)#end
Router#

以下の図は、CLIモードの移行についてまとめたものです。

図 CLIモード

CLIモードは、Cisco機器を扱う上での基本です。それぞれのCLIモードの意味と移行をしっかりと把握しておいてください。

なお、コンフィグレーションモードの移行は、いったんグローバルコンフィグレーションモードに戻る必要はありません。たとえば、以下のようにインタフェースコンフィグレーションモードから直接ルーティングプロトコルコンフィグレーションモードへ移行することもできます。

R1(config)#interface FastEthernet0/0
R1(config-if)#router rip
R1(config-router)#