Junos XML プロトコルを使用した構成要素の作成、変更、削除
Junos OS を実行しているデバイスとの Junos XML プロトコル セッションでは、クライアント アプリケーションは、設定全体を置き換えることに加えて、受験者の構成データベースまたはオープン構成データベース内の 1 つ以上の構成要素(階層レベルと構成オブジェクト)を作成、変更、または削除できます。
Junos XML タグ要素を使用して要素を表すために、アプリケーションには、ルート(タグ要素で表される)から要素のコンテナ タグ要素まで、構成階層内のすべてのレベルを <configuration>
表すタグ要素が含まれています。含まれる属性と子タグ要素は、要素に対して実行される操作によって異なります。構文は、ファイルの内容とデータ・ストリームの両方に適用されます。次の例では、識別子タグ要素が呼び出されます <name>
。
<configuration> <!-- opening tag for each parent of the element --> <container-tag [operation-attribute="value"]> <name>identifier</name> <!-- if the element has an identifier --> <!-- child tag elements --> <!-- if appropriate --> </container-tag> <!-- closing tag for each parent of the element --> </configuration>
書式設定されたASCIIテキストを使用して要素を表すために、アプリケーションには、階層レベルの下に直接表示できるステートメントから始まる完全なステートメントパスが [edit]
含まれています。含める属性および子ステートメントは、エレメントで実行される操作によって異なります。アプリケーションは、構成データをデータ・ストリームとしてアップロードする際に、 <configuration-text>
ステートメントのセットをタグ・エレメントに囲みます。構成データが <configuration-text>
格納され、ファイルから読み込まれるときに、アプリケーションはタグ要素を省略します。
<configuration-text> /* statements for parent levels of the element */ operation-to-perform: # if appropriate element identifier { # if the element has an identifier /* child statements */ # if appropriate for the operation } /* closing braces for parent levels of the element */ </configuration-text>
書式設定されたASCIIテキストを読み込む場合、アプリケーションはタグに属性をformat="text"
<load-configuration>
含める必要があります。
構成モード コマンドを使用してエレメントを作成、変更、または削除するには、CLI の設定モードで入力されるコマンドと同様のコマンドがアプリケーションに組み込まれます。設定手順は、指定された順序で実行されます。コマンドで完全なステートメント パスを指定することも、設定階層を移動する CLI ナビゲーション コマンドや edit
、 up
などの CLI ナビゲーション コマンドを使用することもできます。
アプリケーションは、構成データをデータ・ストリームとしてアップロードする際に、 <configuration-set>
タグ・エレメント内のコマンド・セットを囲みます。構成データが <configuration-set>
格納され、ファイルから読み込まれるときに、アプリケーションはタグ要素を省略します。
<configuration-set> /* configuration mode commands */ </configuration-set>
設定モード set
コマンドを読み込む場合、アプリケーションはタグに action="set"
<load-configuration>
and format="text"
属性を含める必要があります。
Junos OS リリース 16.1 以降では、JSON(JavaScript Object Notation)を使用してフォーマットされた設定データをデバイスにロードできます。JSON 形式を使用して要素を表すために、アプリケーションには、ルートからその要素を表す JSON オブジェクトまで、構成階層内のすべてのレベルを表す JSON オブジェクトが含まれています。含める属性と子オブジェクトは、要素に対して実行される操作によって異なります。属性値がブール型の場合、値は引用符で囲まれません。
JSON データは、設定データをデータ <configuration-json>
ストリームとしてアップロードする際に、JSON データをタグ要素で囲みます。構成データが <configuration-json>
格納され、ファイルから読み込まれるときに、アプリケーションはタグ要素を省略します。
<configuration-json> { "configuration" : { /* JSON objects for parent levels of the element */ "container-tag" : { "@" : { "operation-attribute" : ( "value" | boolean ) }, "object" : [ { "@" : { "operation-attribute" : ( "value" | boolean ) }, "(name | element-identifier)" : "identifier", "statement-name" : "statement-value", "@statement-name" : { "operation-attribute" : ( "value" | boolean ) }, /* additional JSON data and child objects */ } ] } /* closing braces for parent levels of the element */ } } </configuration-json>
JSON 形式でデータを読み込む場合、アプリケーションはタグに<load-configuration>
属性をformat="json"
含める必要があります。
構成要素のソースと書式設定の詳細については、「 Junos XML プロトコル セッションでの構成データのアップロードと書式設定」を参照してください。
クライアント アプリケーションが構成要素に対して実行できる操作の詳細については、以下のセクションを参照してください。