Junos XML 프로토콜을 사용하여 구성 데이터의 요소 삭제
Junos OS를 실행하는 장치가 있는 Junos XML 프로토콜 세션에서 후보 구성 또는 개방형 구성 데이터베이스에서 구성 요소(계층 수준 또는 구성 객체)를 삭제하려면 클라이언트 애플리케이션이 Junos XML 프로토콜을 사용하여 구성 요소 생성, 수정 또는 삭제에 설명된 기본 태그 요소를 내보내게 됩니다. 삭제할 요소를 표현하기 위해 Junos XML 태그 요소를 사용하는 경우, 클라이언트 애플리케이션은 각 요소에 대한 오프닝 태그의 속성을 포함합니다 delete="delete"
. 형식화된 ASCII 텍스트를 사용하는 경우, 클라이언트 애플리케이션은 운영자와 함께 삭제하기 위해 각 요소 앞에 섰습니다 delete:
. 구성 모드 명령을 사용하여 요소를 삭제할 때 클라이언트 애플리케이션은 명령을 사용하고 delete
요소에 대한 경로를 지정합니다. JSON 데이터를 사용하여 요소를 삭제할 때 클라이언트 애플리케이션은 해당 요소에 "operation" : "delete"
대한 속성 목록의 속성을 포함합니다. 다음 섹션에서 설명한 대로 삭제할 요소의 유형에 따라 속성 또는 운영자의 배치가 달라집니다.
Junos OS 릴리스 16.1부터 시작하여 JSON(JavaScript Object Notation)을 사용하여 형식화된 구성 데이터를 로드할 수 있습니다.
계층 수준 또는 컨테이너 객체 삭제
계층 수준과 모든 하위 항목(또는 하위 항목이 있지만 식별자가 없는 컨테이너 객체)을 삭제하려면, 클라이언트 애플리케이션에는 Junos XML 프로토콜을 사용하여 구성 요소 생성, 수정 또는 삭제에 설명된 대로 상위 수준에 대한 기본 태그 요소 또는 구성 명령문이 포함됩니다.
Junos XML 태그 요소를 사용하는 경우, 애플리케이션은 빈 태그에 레벨 또는 컨테이너 객체를 나타내는 속성을 포함합니다 delete="delete"
.
<configuration> <!-- opening tag for each parent level --> <level-or-object delete="delete"/> <!-- closing tag for each parent level --> </configuration>
형식화된 ASCII 텍스트를 사용할 때 애플리케이션은 제거될 수준 위에 명령문을 배치 delete:
하고, 그 다음으로 세미콜론이 뒤따릅니다(기존 구성에서는 자식 문을 감싸는 곱슬곱슬이 뒤따릅니다).
<configuration-text> /* statements for parent levels */ delete: object-or-level; /* closing braces for parent levels */ </configuration-text>
구성 모드 명령을 사용할 때 애플리케이션은 계층 수준 또는 제거할 객체에 대한 명령 및 명령문 경로를 지정 delete
합니다.
<configuration-set> delete statement-path-to-level-or-object </configuration-set>
JSON 구성 데이터를 사용하여 계층 수준 또는 컨테이너 객체를 삭제할 때 애플리케이션에는 계층 또는 컨테이너 객체에 대한 속성 목록의 속성이 포함 "operation" : "delete"
됩니다.
<configuration-json> { "configuration" : { /* JSON objects for parent levels */ "object-or-level" : { "@" : { "operation" : "delete" } } /* closing braces for parent levels */ } } </configuration-json>
다음 예에서는 Junos XML 태그 요소를 사용하여 후보 구성에서 계층 수준을 제거하는 [edit protocols ospf]
방법을 보여줍니다.
다음 예에서는 JSON에 형식화된 구성 데이터를 사용하여 후보 구성에서 계층 수준을 제거하는 [edit protocols ospf]
방법을 보여줍니다.
<rpc> <load-configuration format="json"> <configuration-json> { "configuration" : { "protocols" : { "ospf" : { "@" : { "operation" : "delete" } } } } } </configuration-json> </load-configuration> </rpc>
식별자가 있는 구성 객체 삭제
식별자가 있는 구성 객체를 삭제하기 위해 클라이언트 애플리케이션에는 Junos XML 프로토콜을 사용하여 구성 요소 생성, 수정 또는 삭제에 설명된 대로 상위 수준에 대한 기본 태그 요소 또는 구성 명령문이 포함됩니다.
Junos XML 태그 요소를 사용할 때 애플리케이션은 객체의 delete="delete"
오프닝 태그에 있는 속성을 포함합니다. 객체의 컨테이너 태그 요소에서 객체의 다른 특성을 나타내는 태그 요소가 아닌 식별자 태그 요소만 동봉합니다. 다음에서 식별자 태그 요소를 호출<name>
합니다.
<configuration> <!-- opening tag for each parent of the object --> <object delete="delete"> <name>identifier</name> </object> <!-- closing tag for each parent of the object --> </configuration>
속성은 delete
식별자 태그 요소가 아닌 오프닝 컨테이너 태그에 나타납니다. 식별자 태그 요소가 있으면 컨테이너 태그 요소가 나타내는 전체 계층 수준을 제거하는 것이 아니라 지정된 객체를 제거합니다.
형식화된 ASCII 텍스트를 사용할 때 애플리케이션은 객체와 그 식별자 위에 명령문을 배치 delete:
합니다.
<configuration-text> /* statements for parent levels of the object */ delete: object identifier; /* closing braces for parent levels of the object */ </configuration-text>
구성 모드 명령을 사용할 때 애플리케이션은 명령어, 객체에 대한 명령문 경로, 객체 및 식별자를 지정 delete
합니다.
<configuration-set> delete statement-path-to-object object identifier </configuration-set>
JSON 구성 데이터를 사용할 때 애플리케이션은 객체에 대한 속성 목록의 속성을 포함합니다 "operation" : "delete"
. 컨테이너 객체에서는 식별자를 나타내는 이름/값 쌍만 동봉합니다. 다음 예에서 요소의 식별자를 지정하는 JSON 구성원은 필드 이름 "name"을 가합니다.
<configuration-json> { "configuration" : { /* JSON objects for parent levels of the object */ "object" : [ { "@" : { "operation" : "delete" }, "name" : "identifier" } ] /* closing braces for parent levels of the object */ } } </configuration-json>
다음 예에서는 Junos XML 태그 요소를 사용하여 후보 구성의 [edit system login user]
계층 수준에서 사용자 개체 barbara
를 제거합니다.
다음 예에서는 JSON 형식의 구성 데이터를 사용하여 후보 구성의 [edit system login user]
계층 수준에서 사용자 개체 barbara
를 제거합니다.
<rpc> <load-configuration format="json"> <configuration-json> { "configuration" : { "system" : { "login" : { "user" : [ { "@" : { "operation" : "delete" }, "name" : "barbara" } ] } } } } </configuration-json> </load-configuration> </rpc>
구성 객체에서 단일 가치 또는 고정형 양식 옵션 삭제
컨피규레이션 객체에서 고정형 옵션 또는 단 하나의 값만을 차지하는 옵션을 삭제하려면, 클라이언트 애플리케이션에는 Junos XML 프로토콜을 사용하여 구성 요소 생성, 수정 또는 삭제에 설명된 대로 상위 수준에 대한 기본 태그 요소 또는 구성 명령문이 포함됩니다. (여러 값을 사용할 수 있는 옵션의 삭제에 대한 자세한 내용은 구성 객체의 다중값 옵션에서 값 삭제를 참조하십시오.)
Junos XML 태그 요소를 사용할 때 애플리케이션은 각 옵션에 delete="delete"
대해 빈 태그에 속성을 포함합니다. 구성에 남아 있는 어린이를 위한 태그 요소는 포함하지 않습니다. 다음에서 객체에 대한 식별자 태그 요소를 호출 <name>
합니다.
<configuration> <!-- opening tag for each parent of the object --> <object> <name>identifier</name> <!-- if object has an identifier --> <option1 delete="delete"/> <option2 delete="delete"/> <!-- tag elements for other options to delete --> </object> <!-- closing tag for each parent of the object --> </configuration>
형식화된 ASCII 텍스트를 사용할 때 애플리케이션은 각 옵션 위에 명령문을 배치합니다 delete:
.
<configuration-text> /* statements for parent levels of the object */ object identifier; delete: option1; delete: option2; /* closing braces for parent levels of the object */ </configuration-text>
구성 모드 명령을 사용할 때 애플리케이션은 명령어, 옵션에 대한 명령문 경로 및 제거할 옵션을 지정 delete
합니다. 옵션 명령문에 대한 전체 경로를 지정하거나 객체의 계층 레벨로 탐색하고 해당 위치에서 옵션 문을 삭제할 수 있습니다. 각 옵션을 삭제하려면 별도의 명령을 사용합니다.
<configuration-set> delete statement-path-to-object object identifier option1 delete statement-path-to-object object identifier option2 </configuration-set> <configuration-set> edit statement-path-to-object object identifier delete option1 delete option2 </configuration-set>
JSON 구성 데이터를 사용하여 옵션을 삭제할 때 애플리케이션은 해당 옵션에 "operation" : "delete"
대한 속성 목록의 속성을 포함합니다. 계층 수준 또는 컨테이너 객체에 대한 옵션을 삭제하려면 해당 수준에서 삭제할 옵션을 지정합니다.
<configuration-json> { "configuration" : { /* JSON objects for parent levels */ "level-or-object" : { "@option1" : { "operation" : "delete" }, "@option2" : { "operation" : "delete" } } /* closing braces for parent levels */ } } </configuration-json>
식별자가 있는 객체에 대한 옵션을 삭제하려면 먼저 식별자를 포함시킨 다음 삭제 옵션을 지정합니다. 다음 예에서 요소의 식별자를 지정하는 JSON 구성원은 필드 이름 "name"을 가합니다.
<configuration-json> { "configuration" : { /* JSON objects for parent levels of the object */ "object" : [ { "name" : "identifier", "@option1" : { "operation" : "delete" }, "@option2" : { "operation" : "delete" } } ] /* closing braces for parent levels of the object */ } } </configuration-json>
다음 예에서는 Junos XML 태그 요소를 사용하여 계층 수준에서 고정형 disable
옵션을 [edit forwarding-options sampling]
제거하는 방법을 보여줍니다.
구성 객체의 다중값 옵션에서 값 삭제
Junos XML 태그 요소에 대한 매핑 구성 명령문에 설명된 바와 같이, 일부 Junos OS 구성 객체는 여러 값을 가진 리프 명령문입니다. 형식화된 ASCII CLI 표현에서 값은 객체의 이름에 따라 사각형 브래킷으로 동봉됩니다.
object [value1 value2 value3 ...];
Junos XML 표현은 객체에 대해 상위 태그를 사용하지 않고 각 값에 대해 객체 태그 요소의 별도 인스턴스를 사용합니다. 다음에서 식별자 태그 요소를 호출 <name>
합니다.
<parent-object> <name>identifier</name> <object>value1</object> <object>value2</object> <object>value3</object> </parent-object>
이러한 객체에 대해 하나 이상의 값을 제거하기 위해 클라이언트 애플리케이션에는 Junos XML 프로토콜을 사용하여 구성 요소 생성, 수정 또는 삭제에 설명된 대로 상위 수준에 대한 기본 태그 요소 또는 구성 명령문이 포함됩니다. Junos XML 태그 요소를 사용할 때 애플리케이션은 각 값에 delete="delete"
대한 오프닝 태그의 속성을 포함합니다. 보관할 값을 나타내는 태그 요소는 포함하지 않습니다. 다음에서 상위 개체의 식별자 태그 요소를 호출<name>
합니다.
<configuration> <!-- opening tag for each parent of the parent object --> <parent-object> <name>identifier</name> <object delete="delete">value1</object> <object delete="delete">value2</object> </parent-object> <!-- closing tag for each parent of the parent object --> </configuration>
형식화된 ASCII 텍스트를 사용하는 경우, 애플리케이션은 각 값에 대한 상위 명령문을 반복하고 각 쌍으로 연결된 각 명령문 및 값 위에 명령문을 배치 delete:
합니다.
<configuration-text> /* statements for parent levels of the parent object */ parent-object identifier; delete: object value1; delete: object value2; /* closing braces for parent levels of the parent object */ </configuration-text>
구성 모드 명령을 사용할 때 애플리케이션은 명령어, 각 값에 대한 명령문 경로 및 제거할 값을 지정 delete
합니다. 값에 대한 전체 경로를 지정하거나 객체의 계층 수준까지 탐색하고 해당 위치에서 값을 삭제할 수 있습니다. 각 값을 삭제하려면 별도의 명령을 사용합니다.
<configuration-set> delete statement-path-to-parent-object parent-object identifier object value1 delete statement-path-to-parent-object parent-object identifier object value2 </configuration-set> <configuration-set> edit statement-path-to-parent-object parent-object identifier object delete value1 delete value2 </configuration-set>
다중값 옵션을 가진 객체에 대한 JSON 표현은 필드 이름이 객체 이름이고 옵션을 나타내는 값이 문자열의 배열인 이름/값 쌍입니다. Junos OS는 JSON을 사용하여 다중값 옵션을 사용하여 객체에서 단일 값을 삭제하는 것을 지원하지 않습니다. 옵션 목록을 업데이트하려면 기존 객체를 삭제한 다음 원하는 값 집합으로 새 객체를 구성해야 합니다.
다음 예에서는 Junos XML 태그 요소를 사용하여 로그인 클래스에 user-accounts
부여된 권한 중 2개를 제거하는 방법을 보여줍니다.