Cisco CNS Network Registrar CLI リファレンス ガイド Release 6.2.1
nrcmd プログラムについて
nrcmd プログラムについて
発行日;2012/02/05 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 1MB) | フィードバック

目次

nrcmd プログラムについて

nrcmd コマンドの起動

バッチ モード

対話モード

レジストリおよび環境変数

コマンド構成

コマンドの使用方法

create キーワード

set キーワード

enable キーワード

アトリビュート フラグ

変更の保存

CLI キャッシュのリフレッシュとクリア

ナビゲーション キー

コマンド一覧

nrcmd プログラムについて

DNS サーバ、DHCP サーバ、および TFTP サーバを設定して管理するには、Web ベースのユーザ インターフェイス(Web UI)、または nrcmd コマンドライン インターフェイス(CLI)を使用できます。この章では、 nrcmd コマンドライン インターフェイスの使用方法について説明します。具体的には、次のトピックについて説明します。

バッチ モードおよび対話モードでのコマンドの起動

コマンドの構成と構文

特殊なキーボード ナビゲーション文字

nrcmd コマンドの起動

nrcmd コマンドは、バッチ モードでコマンドを使用したスクリプトを実行して使用、または対話モードで nrcmd コマンド プロンプトにコマンドを入力して使用します。デフォルトでは、 nrcmd コマンドの位置は、Windows では C:\Program Files\Network Registrar\Local\bin、Solaris および Linux では /opt/nwreg2/usrbin です。


) Windows で、インストール パスの外側から nrcmd プログラムを実行する場合は、CNR_HOME 環境変数を設定する必要があります。


Windows では、 nrcmd コマンド ウィンドウを Start メニューから次のようにして起動できます。

Start > Programs > Network Registrar 6.2 > Network Registrar 6.2 CLI

この方法では、ユーザ名とパスワードの入力を求めるプロンプトが表示されます。Solaris および Linux では(さらに Windows でも同様に)、コマンド プロンプトから次の構文を使用してコマンドを起動できます。

nrcmd [general-options] [command] [options]
 

表1-1 は、コマンド プロンプトから起動するときの一般的なオプションについて説明しています。「nrcmd コマンドの使用」 では、コマンドおよびコマンド固有のオプションについて説明します。

 

表1-1 nrcmd コマンドの一般的なオプション

オプション
説明

-C cluster

クラスタ( cluster は、Network Registrar サーバが動作しているマシンの名前です)。指定しない場合は、クラスタ名はデフォルトで localhost になります。

-N user

Network Registrar ユーザ名( user )。

-P password

Network Registrar ユーザ パスワード( password )。

-h

ヘルプ テキストを出力します。

-L

ローカル クラスタの CLI にアクセスします。

-R

リージョナル クラスタの CLI にアクセスします。

-b < file .txt

バッチ ファイル( file .txt は、バッチ モードで実行する nrcmd コマンドのファイル名です。1 行ごとに読み取られ、プロンプトの後に新しい行が出力されます)。


) 接続先のクラスタによって、クラスタ上で動作する Network Registrar のリリースで表示される使用可能な CLI アトリビュートが決まります。この『 CLI リファレンス』では、現在のリリースのアトリビュートについて説明します。以前のリリースで使用可能なアトリビュートについては、そのリリースの『CLI リファレンス』を参照してください。


バッチ モード

コマンドラインで関数コマンドや -b< file .txt オプションを入力すると、プログラムはバッチ モードに入ります。テキスト ファイルには、 nrcmd コマンドを任意の数だけ指定できます。また、シャープ記号(#)を行頭に付けて、コメント行として指定できます。バッチ モードでは、通常のシステム プロンプトに戻ります。バッチ モードでの表示は、外部プログラムによる解析を目的としているため、値を持つコマンド アトリビュートのみが表示されます。


) 入力ファイル内のコードの最終行には、末尾に行末文字が必要です。また、コードの最終行に、exit コマンドを明示的に指定することをお勧めします。


対話モード

nrmcd コマンドだけを入力した場合、または cluster user password オプションのいずれかを入力した場合は、プログラムが対話モードに入ります。CLI を対話モードで実行するには、次のように入力します。

nrcmd [-C cluster] [-N user] [-P password]
 

この構文では、対話型の nrcmd> プロンプトが表示されます。プロンプトには、関数コマンドおよびオプション パラメータを入力します。

nrcmd> command [parameter,parameter, ...]
system-response
 

複数のアトリビュート値を続けて入力するには、カンマ(,)で区切ります。カンマの後に空白を入れないでください。値が空白を含む文字列の場合は、引用符で囲みます。

nrcmd> zone example.com. set auth-servers=192.168.50.1,10.0.0.1
100 Ok
auth-servers=192.168.50.1,10.0.0.1
 

対話セッションを終了するには、 exit コマンドを入力します。オンライン ヘルプを表示するには、 help コマンドを入力します。

レジストリおよび環境変数

Network Registrar は、一般的なオプションを省略した場合はレジストリまたは環境変数から取得します。Network Registrar がパラメータの値を検出できない場合は、入力を求めるプロンプトが表示されます。Network Registrar サーバがインストールされているシステム上のクラスタ名を省略した場合、 nrcmd プログラムは、 localhost へのアクセスを前提とします。プロンプトは表示されません。

nrcmd プログラムが認識する設定可能な環境変数では、CNR_NAME が名前、CNR_PASSWORD がパスワード、CNR_CLUSTER がクラスタ名です。

コマンド構成

nrcmd コマンドは、オブジェクト クラスを指定します。オブジェクト クラスは作成、削除、または一覧表示できます。オブジェクトには、それぞれアトリビュートがあり、データ タイプに応じて、イネーブル、ディセーブル、設定、取得、および設定解除ができます。オブジェクトには、共通メソッドもあります。共通メソッドはオブジェクト タイプに固有で、アトリビュート グループに対して操作を実行できます。

nrcmd コマンドを使用して Network Registrar を設定すると、次の操作を実行できます。

クラス:スコープ、ポリシー、ゾーンなどのように、作成、削除、表示、または一覧表示するもの。

create :エントリを作成します。エントリがすでに存在する場合は、コマンドがエラーを返します。

delete :エントリを削除します。

list :指定したタイプのすべてのオブジェクトを、アトリビュートも含めてすべて表示します。

listnames :指定したタイプのオブジェクトの名前だけをすべて表示します。

show :すべてのアトリビュートの値を表示します。

アトリビュート:イネーブルまたはディセーブルにできるもの。または、共通メソッドを使用して値を設定または表示できるもの。

enable :ブール タイプのアトリビュートをイネーブルにします。

disable :ブール タイプのアトリビュートをディセーブルにします。

set :アトリビュートの値を設定します。

get :明示的に定義されたアトリビュートの値を表示します。

unset :アトリビュートが値を持たないようにします。必須アトリビュートは設定解除できません。


nrcmd を使用して、暗黙的に定義されたアトリビュートの値を get することはできません。これには、暗黙的に定義されたデフォルト値も含まれます。


アトリビュートを設定するには、次の 3 つの方法があります。

オブジェクトの作成に必須のアトリビュートの場合は、値を create コマンドの構文内で所定の位置に指定する必要があります。たとえば、ハイ アベイラビリティ(HA)DNS サーバ ペアを作成するには、作成時にメイン サーバとバックアップ サーバのクラスタおよび IP アドレスを指定できます。

nrcmd> ha-dns-pair ha-pair-1 create 192.168.50.1 192.168.60.1 main=localhost backup=backup
 

オブジェクトを作成した後、 set コマンドまたは enable コマンドを使用します。たとえば、作成した HA DNS ペアにメイン サーバとバックアップ サーバへのクラスタ参照だけを設定できます。

nrcmd> ha-dns-pair ha-pair-1 set main=localhost backup=backup
 

attribute = value のペアを create コマンドの末尾に追加します。

位置の値と attribute = value ペアの両方を create コマンドラインで同じアトリビュートに使用した場合、 attribute = value ペアが後になるため、これが実際に使用される値になります。

Network Registrar 6.0 では、デフォルト値を持つアトリビュートは、対話モードで attribute = [default= value ] という形式で表示されます。対話モードでは、すべてのアトリビュートが表示されます。バッチ モードでは、値を持つアトリビュートだけが表示され、デフォルト値は表示されません。バッチ モードでの表示は、ユーザにとってはあまり見やすくはありませんが、プログラムによって解析をするのに適しています。次の例は、対話モードでの出力とバッチモードでの出力を示して比較しています。

nrcmd> zone example.com show
100 Ok
example.com. (primary):
checkpoint-interval =
checkpoint-min-interval =
defttl = 12h
dynamic = [default=true]
dynupdate-set =
expire = 7d
...
 
$ nrcmd -N admin -P changeme zone example.com show
100 Ok
example.com.: defttl=12h; expire=7d; minttl=10m; nameservers={{0 rr2.example.com.}}; ns=rr2.; origin=example.com.; person=rr1.; refresh=3h; retry=60m; serial=1; update-acl="key myKey";
 

その他のカスタム メソッド:オブジェクトに対して実行できる特定の操作。アトリビュートの編集以上の操作です。IP アドレス範囲のスコープへの追加、ゾーンからのホストの削除などがあります。

コマンドの使用方法

一連の引数を指定する方法は、使用するコマンドの種類によって異なります。この項では、 create set 、および enable の各コマンドの使用方法の違いを説明します。

create キーワード

create キーワードを使用する場合は、必須の引数を指定する必要があります。また、追加の引数も指定できます。必須の引数は指定された順序で指定する必要があります。一方、オプションの引数は、 attribute = value という構文にしたがって、任意の順序で指定できます。

たとえば、スコープを作成するための構文は次のとおりです。

scope name create ipaddress mask [attribute=value]
 

スコープの作成時には IP アドレスとマスクを指定する必要があります。スコープのその他のアトリビュートはオプションで指定できます。

次の例では、IP アドレスに 192.168.50.0、マスクに 255.255.255.0 を指定して、testScope というスコープを作成します。

nrcmd> scope testScope create 192.168.50.0 255.255.255.0
100 Ok
testScope:
addr = 192.168.50.0
bootp = disabled
deactivated =
...
 

アトリビュート定義は同一の行にも指定できます。次の例では、上と同じスコープを作成しますが、DHCP クライアントのホスト名の追加先である DNS ゾーンの名前を併せて指定します。

nrcmd> scope testScope create 192.168.50.0 255.255.255.0 dns-zone-name=example.com.
100 Ok
dns-zone-name=example.com.
testScope:
addr = 192.168.50.0
bootp = disabled
deactivated =
...
 

create キーワードがオブジェクトを作成し、指定したすべてのパラメータをオブジェクトに割り当てると、必須アトリビュートに値(デフォルトまたはユーザ指定)がすべて設定されているかどうか確認されます。必要なアトリビュートが省略されている場合は、Network Registrar がエラーを返します。

set キーワード

set キーワードは、すでに作成されているアトリビュートに値を設定するのに使用します。DNS サーバや IP アドレスなど、複数の値のリストを設定する場合は、値をカンマで区切ります。また set キーワードを使用して、同じ行で複数のアトリビュートを設定できます。アトリビュートと値を指定し、空白を 1 つ挿入して、次のアトリビュートと値の組を指定します。

次の例では、DHCP クライアントのホスト名の追加先である DNS ゾーンの名前を指定します。

nrcmd> scope testScope set dns-zone-name=example.com.
100 Ok
dns-zone-name=example.com.
 

次の例では、ゾーンに対してゾーン転送のための IP アドレスのリストを指定します。

nrcmd> zone example.com. set auth-servers=192.168.50.1,10.0.0.1
100 Ok
auth-servers=192.168.50.1,10.0.0.1
 

次の例では、クライアントのクライアントクラスとドメイン名を設定します。

nrcmd> client 00:d0:ba:d3:bd:3b set client-class-name=internal
domain-name=example.com.
100 Ok
client-class-name=internal
domain-name=example.com.
 

unset キーワードは、アトリビュートを未定義の状態にします。 get キーワードは、アトリビュートの値を表示します。

enable キーワード

enable キーワードは、ブール アトリビュートをイネーブルにします。ブール アトリビュートをイネーブルにすると、それに関連するアトリビュートの設定も必要になります。ブール アトリビュートをディセーブルにするには、 disable キーワードを使用します。 unset キーワードを使用すると、イネーブルまたはディセーブルの状態のブール アトリビュートを削除できます。

次の例では、DNS サーバの差分転送処理をイネーブルにします。

nrcmd> dns enable ixfr-enable
100 Ok
ixfr-enable=enabled
 

差分転送処理がイネーブルである場合に、期限満了インターバルを変更する例を示します。

nrcmd> dns set ixfr-expire-interval=10d
100 Ok
ixfr-expire-interval=1w3d
 

set enable を同じコマンドラインで使用することはできません。


アトリビュート フラグ

コマンド アトリビュートには、次の種類があります。

必須:アトリビュートはオブジェクトにとって必須であり、通常、 create コマンドラインで構文上の位置が決まっています。アトリビュートを設定するか、またはデフォルトを使用する必要があります。値は修正可能です。必須アトリビュートは、 unset キーワードを使って未定義に設定することはできません。未定義に設定しようとすると、「386 - Required attribute cannot be deleted」というエラーメッセージが返されます。

オプション:アトリビュートはオプションであり、値は必須ではありません。アトリビュートは設定および再設定できます。また、 unset キーワードを使用して未定義に設定できます。

読み取り専用:アトリビュートは不変で、読み取り専用です。 get キーワードは使用できますが、set または unset は使用できません。読み取り専用アトリビュートに set または unset を使用しようとすると、「385 - Read-only attribute cannot be modified」というエラー メッセージが返されます。

変更の保存

Network Registrar 6.2 で導入された新規コマンドの場合、 nrcmd は加えられた変更をすぐに適用します(Network Registrar 6.2 で導入されたコマンドの一覧は、『Release Notes』に示されています)。以前のリリースのコマンドでは、CLI は次のいずれかのイベントが発生するのを待ってから、変更をデータベースに保存します。

save コマンドの起動

nrcmd の終了

サーバのリロード

リソース レコードまたはホストのゾーンへの追加

CLI キャッシュのリフレッシュとクリア

CLI は、読み取ったコンフィギュレーション オブジェクトの多くをキャッシュします。複数のユーザが同時に変更を加えている場合、CLI インスタンスが古いバージョンのオブジェクトをキャッシュしている場合があります。 session cache refresh コマンドは、修正されていないすべてのオブジェクトのローカル キャッシュを CLI がクリアし、コンフィギュレーション データベースから CLI がオブジェクトを再度読み込みます。 session cache clear コマンドでは、保存されていない変更がある場合でも、キャッシュされたすべてのデータが CLI によってクリアされます。

ナビゲーション キー

表1-2 は、 nrcmd コマンドの入力時に役立つキーボード ナビゲーション キーの一覧です。

 

表1-2 nrcmd のナビゲーション キーの組み合せ

キー
動作

Ctrl+A

行の先頭に移動

Ctrl+B

1 文字後退

Ctrl+D

1 文字削除

Ctrl+E

行の末尾に移動

Ctrl+F

1 文字前進

Ctrl+K

行の末尾まで削除

Ctrl+L

削除した行を復元

Ctrl+N

履歴の次の行

Ctrl+P

履歴の前の行

Ctrl+T

1 文字を左に移動

Ctrl+U

行を削除してカーソルを行の先頭に移動

Ctrl+W

1 文字後退して削除

Esc+B

1 単語左に移動

Esc+F

1 単語右に移動

コマンド一覧

表1-3 は、 nrcmd コマンドのアルファベット順の一覧です。コマンドは、コマンドラインで使用することも、スクリプトに挿入することもできます。

 

表1-3 nrcmd コマンド

コマンド
説明

acl

アクセス コントロール リスト(ACL)を作成します。

addr-trap

DHCP サーバのフリー アドレス監視用のトラップを作成します。

address-block

CCM アドレス ブロック用プロパティを作成し、設定します。

admin

クラスタの管理者を作成します。

ccm

CCM サーバを管理します。

client

クライアントを作成し、クライアントクラスを割り当てます。

client-class

クライアントクラスを作成します。

client-class policy

組み込みクライアントクラス ポリシーを設定します。

client-policy

組み込みクライアント ポリシーを設定します。

cluster

リージョナル クラスタまたはローカル クラスタを構成します。

dhcp

DHCP サーバを管理します。

dhcp-address-block

DHCP アドレス ブロック用プロパティを作成し、設定します。

dhcp-address-block-policy

DHCP アドレス ブロックに組み込むポリシーを構成します。

dhcp-dns-update

DNS への DHCP サーバ更新を構成します。

dhcp-interface

DHCP サーバのネットワーク インターフェイスを構成します。

dhcp-link

DHCPv6 リンクを作成します。

dhcp-link-policy

DHCPv6 リンクに組み込むポリシーを構成します。

dhcp-prefix

DHCPv6 プレフィックスを作成します。

dhcp-prefix-policy

DHCPv6 プレフィックスに組み込むポリシーを構成します。

dhcp-subnet

可能な DHCP サブネットの一覧を表示します。

dns

DNS サーバ アトリビュートを指定します。

dns-interface

DNS サーバのネットワーク インターフェイスを構成します。

dns-update-map

DNS 更新の構成を管理します。

exit または quit

nrcmd コマンドを終了し、現在のコンフィギュレーションの変更を保存します。

export

構成をエクスポートします。

extension

DHCP エクステンション モジュールを構成します。

failover-pair

DHCP フェールオーバー サーバの構成を管理します。

force-lock

nrcmd コマンド セッション用の排他ロックを取得します。

group

管理者のグループを構成します。

ha-dns-pair

DNS メインサーバと DNS バックアップサーバの間のハイ アベイラビリティ関係を定義します。

help

オンライン ヘルプを表示します。

import

構成をインポートします。

key

DNS 更新のトランザクション シグニチャ(TSIG)キーを作成します。

ldap

DHCP の Lightweight Data Access Protocol(LDAP)を構成します。

lease

DHCP リースの情報を取得します。

lease6

DHCPv6 リースの情報を取得します。

lease-notification

スコープに利用可能なリースがなくなった場合に通知します。

license

ライセンス情報を表示し、更新します。

option

DHCP オプションの定義を管理します。

option-set

DHCP オプション定義セットを管理します。

owner

所有者を管理します。

policy

DHCP ポリシーを構成します。

region

リージョンを管理します。

remote-dns

リモート DNS サーバ データを構成します。

report

使用状況の要約レポートを作成します。

role

管理者ロールを管理します。

router

ルータを管理します。

router-interface

ルータ ネットワーク インターフェイスを管理します。

router-type

ルータ タイプを表示します。

save

現在のコンフィギュレーションの変更を保存します。

scope

DHCP スコープを構成します。

scope-policy

DHCP スコープに組み込むポリシーを構成します。

scope-selection-tag

DHCP スコープ選択タグを作成します。

scope-template

DHCP スコープのテンプレートを構成します。

scope-template-policy

DHCP スコープ テンプレートに組み込むポリシーを構成します。

server

サーバを制御します。

session

現在の CLI セッション パラメータを設定します。

snmp

SNMP サーバを構成します。

snmp-interface

SNMP サーバのネットワーク インターフェイスを構成します。

subnet

CCM サブネットを構成します。

tftp

Trival File Transport Protocol(TFTP)サーバを構成します。

trap-recipient

SNMP トラップの受信者を構成します。

update-policy

DNS 更新ポリシーを構成します。

vendor-option

ベンダー固有の DHCP オプションを構成します。

vpn

DHCP バーチャル プライベート ネットワーク(VPN)を構成します。

zone

DNS ゾーンを構成します。

zone-dist

ゾーン分散マップを管理します。

zone-template

DNS ゾーンのテンプレートを構成します。