• 検索結果がありません。

メタコマンド

ドキュメント内 Kiwi CatTools (ページ 125-129)

4.4 内部関数

4.4.3 メタデータ

4.4.3.1 メタコマンド

%メタコマンドはCatToolsメタデータのサブセットです。

これを使用することによって、アクティビティのある時点で CatTools の内部機 能を実行させることができます。

以下は現在利用可能なメタコマンドの一覧です。

メタコマンド 説明

%ctDB 各 デ バ イ ス の プ ロ パ テ ィ 情 報 が 記 載 さ れ て い る

CatTools付属のデバイステーブルを更新します。更新

できるデバイスフィールドの一覧については「デバイ ステーブル」の項を参照してください。

%ctUM: EchoOff コマンドを送信し、そのエコーバックを待たないため

のフラグを設定します。

%ctUM: EchoOn コマンドを送信し、そのエコーバックを待つためのフ

ラグを設定します。

%ctUM: Timeout コマンドに対する応答を待つ最大時間を設定します。

%ctUM: PauseTime コマンドを送るまでの待ち期間を設定します。

4.4.3.1.1 %ctDBコマンド

%ctDBメタコマンドを使用すると、アクティビティの一部としてCatToolsデー

タベースのテーブル内のあるフィールドを直接更新できます。

2008  Kiwi Enterprises 構文

%ctDB:tablename:fieldname:new field value

tablename には更新したいフィールドの含まれているデータベースのテーブル

名を入力します。フィールドの一覧については「デバイステーブル」の項を参照 してください。

new field valueにはデータベースのフィールドに表示したい内容を入力します。

この値にはコロン(:)を挿入することができます。コマンド文法により区切り文字 として最初の3つのコロンのみ検索されます。

例えば、リモートの認証サーバーのパスワードを変更したい場合、パスワードの 変更自体はサーバー側で可能ですが、CatToolsにはそのことが通知されません。

選択したデバイスに対する CatTools データベースのパスワードを変更するメタ コマンドを使ってDevice.CLI.Send commandsアクティビティを設定すれば、デ バイス側と CatTools データベースに登録されているパスワードの変更が同時に できます。コマンドは次のように使用します。

%ctDB:Device:AAAPassword:thenewpassword

この場合、Device.CLI.Send commandsアクティビティのコマンドとしてメタコ マンドを1つだけ入力する必要があります。アクティビティが実行されると、選 択したすべてのデバイスに対するDeviceテーブルのAAAPasswordフィールド に「thenewpassword」と入力されます。CatToolsはデバイスの1つにログイン するたびにこの新しいパスワードを使用するようになります。

デバイスのローカルユーザー名およびパスワードのプロパティを設定している 場合にもこの種のコマンドを使用する場合があります。デバイスのプロパティを 設定するデバイスコマンドを実行してから CatTools のデータベースフィールド を更新するにはメタコマンドを使用します。このような状況で、デバイスコマン ドが成功しなかった場合に CatTools がフィールドを更新しないようにするため には、[Stop on error]をオンにしてください。

Device.CLI.Modify Configアクティビティでローカルユーザー名とパスワードを

設定するには次のコマンドを入力します。

username joe password fred ...

これらの変更を CatTools データベースに反映するには次のコマンドを使用しま す。

2008  Kiwi Enterprises

%ctDB:Device:AAAUsername:joe

%ctDB:Device:AAAPassword:fred

次回デバイスにログインするとこれらの値がCatToolsによって使用されます。

4.4.3.1.1.1 デバイステーブル

%ctDB メタコマンドを使って更新できるデバイステーブルのフィールドを以下

に挙げます。

フィールド名  最大文字数 HostAddress 255

Filename 255

Model 255

Telnet 255

TelnetPort 255

Session 255

VTYPass 255

ConsolePass 255 EnablePass 255 PrivilegeLevel 255 AAAUsername 255 AAAPassword 255

SNMPRead 255

SNMPWrite 255 RequireVTYLogin 255 LoginUsesAAA 255 EnableUsesAAA 255 VTYPrompt 255 ConsolePrompt 255 EnablePrompt 255 AAAUserPrompt 255 AAAPassPrompt 255 Address1 >255 Address2 >255 Address3 >255 ContactName >255

2008  Kiwi Enterprises ContactPhone >255

ContactEmail >255 ContactOther >255 AlertEmail >255

上記のフィールドはすべて文字入力フィールドですが、RequireVTYLogin、

LoginUsesAAA、EnableUsesAAAなど一部のフィールドにはオン/オフを示す数

値(0=オフ、1=オン)が含まれています。

4.4.3.1.2 %ctUM

%ctUM メ タ コ マ ン ド を 使 用 す る と 、Device.CLI.Send commands お よ び

Device.CLI.Modify Configアクティビティで使用する様々なオプションを設定で

きます。

コマンド

%ctUM: EchoOff

通常、コマンドが送出されると CatTools はそのコマンドのエコーを待ってから 次の処理を開始します。しかし、エコーを返さないコマンドもあり、そのような コマンドが送信された場合はこの時点でアクティビティは失敗に終わります(パ スワードを変更するようなアクティビティの場合、特にこの問題が顕著です)。

%ctUM: EchoOffコマンドはCatToolsに対象となるアクティビティの実行中にエ

コーを待たずに次のコマンドを送信させます。

%ctUM: EchoOn

コマンドのエコーを切り替える必要のある場合ありますが、できるだけ速やかに エコーバックを待つ設定に切り替えるほうが良いでしょう。CatToolsでは、コマ ンドのエコーを待つことによってデバイスからの送信データと受信データの同 期を正確に取り、エラー発生の可能性を最小限に抑えることができるようになっ ています。

%ctUM: EchoOnコマンドはCatToolsに対象となるアクティビティの実行中にエ

コーを待ってから次のコマンドを送信させます。

%ctUM:Timeout xx

CatToolsがコマンドに対する応答の待ち時間はデフォルトで30秒に設定されて

2008  Kiwi Enterprises います。デバイスによっては一部のコマンドに対する応答に30秒以上かかる場 合があります。%ctUM: Timeout XXコマンドを使用すると、対象となるアクティ ビティで使用するすべてのコマンドに対する応答の待ち時間を設定できます。

例えば、show versionコマンドのタイムアウトを50秒に設定したい場合は次の ように記述します。

%ctUM: Timeout 50 show version

%ctUM: Timeout 0

注意:このコマンドに0を指定すると(%ctUM: Timeout 0)タイムアウトがデフォ ルト値の30秒に戻ります。

%ctUM:PauseTime xx

これは、CatToolsが指定した時間(秒)一時停止してから次のコマンドを発行する ようにするためのコマンドです。指定可能な最大値は3600です。

例えば、次のようにコマンドを指定すると、pingを発行し、50 秒間待ってから 再度pingを発行します。

ping 127.0.0.1

%ctUM: PauseTime 50 ping 127.0.0.1

ドキュメント内 Kiwi CatTools (ページ 125-129)