Junos XMLプロトコルを使用した運用情報の要求
Junos XML プロトコル セッション内で、クライアント アプリケーションは Junos デバイスの現在の状態に関する情報を要求できます。操作情報をリクエストするために、クライアント アプリケーションは、必要な情報を返す Junos XML API から特定のリクエスト タグ要素を出力します。
表 1 は、同等の CLI コマンドと同じ情報を要求するリクエストタグの例を示しています。
要求タグ | CLI コマンド |
---|---|
<get-interface-information> |
show interfaces |
<get-chassis-inventory> |
show chassis hardware |
<get-system-inventory> |
show software information |
適切なJunos XMLリクエストタグは、以下の複数の方法で決定できます。
-
CLI の操作コマンドへの追加
| display xml rpc
。 -
Junos XML API Explorer - 操作タグ アプリケーションを使用して、特定のリリースのコマンドまたはリクエストタグを検索します。
たとえば、次のコマンドは、コマンドに対応する show interfaces
request タグを表示します。
user@router> show interfaces | display xml rpc <rpc-reply xmlns:junos="http://xml.juniper.net/junos/23.4R1.9/junos"> <rpc> <get-interface-information> </get-interface-information> </rpc> </rpc-reply>
RPC を実行するために、クライアント アプリケーションは要求タグを要素で <rpc>
囲みます。構文は、対応するCLIコマンドにオプションが含まれているかどうかによって異なります。
<rpc> <!-- If the command does not have options --> <operational-request/> <!-- If the command has options --> <operational-request> <!-- tag elements representing the options --> </operational-request> </rpc>
クライアント・アプリケーションは、Junos XML プロトコル・サーバーから戻される情報のフォーマットを指定できます。開始操作要求タグにオプションの format
属性を設定することにより、クライアントアプリケーションは、デフォルトのフォーマットされたASCIIテキスト、またはJavaScriptオブジェクト記法(JSON)であるXMLタグ付きフォーマットとしてレスポンスのフォーマットを指定することができます。フォーマットの指定の詳細については、 Junos XMLプロトコルセッションでの運用情報リクエストの出力フォーマットを指定するを参照してください。
7 ビット ASCII 文字セット以外の文字を含む運用データまたは設定データを表示する場合、Junos デバイスは、同等の UTF-8 10 進文字参照を使用して、これらの文字をエスケープおよびエンコードします。詳しくは、 ジュニパーネットワークスのデバイスでの文字エンコードの仕組みを参照してください。
クライアントアプリケーションがXML出力を要求すると、Junos XMLプロトコルサーバーは、その応答を、要求タグ要素に対応する特定の応答タグ要素で囲みます。その要素は、tag要素で <rpc-reply>
囲まれます。
<rpc-reply xmlns:junos="URL"> <operational-response xmlns="URL-for-DTD"> <!-- Junos XML tag elements for the requested information --> </operational-response> </rpc-reply>
たとえば、クライアント アプリケーションが RPC を送信する <get-interface-information>
と、サーバーは応答タグを返します <interface-information>
。
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/23.4R1.9/junos"> <interface-information xmlns="http://xml.juniper.net/junos/23.4R1.9/junos-interface" junos:style="normal"> <physical-interface> <name>ge-0/0/0</name> <admin-status junos:format="Enabled">up</admin-status> <oper-status>up</oper-status> ...
XML 形式の場合、各操作応答の開始タグには属性 xmlns
が含まれます。属性は、名前空間プレフィックスを持たない囲まれたタグ要素(など junos:
)のXML名前空間を定義します。名前空間は、どのJunos XML文書タイプ定義(DTD)がレスポンス内のタグ要素のセットを定義するかを示しています。
Junos XML APIは、異なるソフトウェアモジュールからの運用レスポンス用に個別のDTDを定義します。例えば、インターフェイス情報の DTD は と呼ばれ junos-interface.dtd
、シャーシ情報の DTD は junos-chassis.dtd
と呼ばれます。別々の DTD と XML 名前空間に分割されるということは、同じ名前のタグ要素が、定義されている DTD に応じて異なる関数を持つことができることを意味します。
名前空間は、次の形式の URL です。
http://xml.juniper.net/junos/release-code/junos-category
どこ:
-
release-code は、Junos XMLプロトコルサーバーデバイスで実行されているJunos OSリリースを表す標準文字列です。
-
category DTD を指定します。
クライアントアプリケーションがフォーマットされたASCIIテキストでの出力を要求すると、Junos XMLプロトコルサーバーは、その応答 <output>
をタグで囲 <rpc-reply>
みます。
<rpc-reply xmlns:junos="URL"> <output> operational-response </output> </rpc-reply>
クライアントアプリケーションがJSON形式の出力を要求すると、Junos XMLプロトコルサーバーはJSONデータをタグ要素で囲みます <rpc-reply>
。
<rpc-reply xmlns="URN" xmlns:junos="URL"> operational-response </rpc-reply>
変更履歴テーブル
機能のサポートは、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がプラットフォームでサポートされているかどうかを判断します。