Junos XML 프로토콜을 사용하여 구성 그룹 및 인터페이스 범위에 대한 출력 형식 지정
<groups>
태그 요소는 구성 계층에 [edit groups]
해당합니다. 구성 그룹을 나타내는 태그 요소를 묶습니다. 각 요소에는 계층의 여러 위치에 적합한 구성 문 집합이 포함되어 있습니다. 구성 문이나 <apply-groups>
태그 요소를 사용하여 apply-groups
적절한 위치에 구성 그룹을 삽입하면 그룹에 정의된 문을 직접 삽입하는 것과 동일한 효과를 발휘합니다. 구성 그룹이 적용되는 구성 계층의 섹션은 그룹의 문을 상속하는 것으로 전해집니다.
계층 수준에서 정의된 [edit groups]
그룹 외에도 Junos OS 라는 junos-defaults
그룹을 미리 정의합니다. 이 그룹에는 모든 라우팅, 스위칭 또는 보안 플랫폼의 기본 작업에 적합한 것으로 판단되는 구성 문이 포함되어 있습니다. 기본적으로 이 그룹의 문은 구성을 표시하는 CLI 명령의 출력이나 태그 요소에 대한 <get-configuration>
Junos XML 프로토콜 서버가 반환한 출력에 나타나지 않습니다. 사용자 정의 구성 그룹 및 junos-defaults
그룹에 대한 자세한 내용은 CLI 사용자 가이드를 참조하십시오.
<interface-range>
태그 요소는 구성 계층에 [edit interfaces interface-range]
해당합니다. 인터페이스 범위는 공통 구성 프로필을 적용할 수 있는 인터페이스 집합입니다. 인터페이스가 인터페이스 범위의 멤버인 경우, 해당 범위에 대해 설정된 구성 문을 상속합니다.
다음 섹션에서는 Junos XML 프로토콜 세션을 통해 요청되는 구성 데이터에서 상속 요소 내에서 그룹 및 인터페이스 범위 구성을 표시하는 방법을 설명합니다. 또한 섹션은 그룹 또는 인터페이스 범위에서 상속되는 구성 요소의 소스 그룹 또는 인터페이스 범위를 보는 방법에 대해서도 논의합니다.
구성 그룹 및 인터페이스 범위가 상속 또는 별도로 표시되는지 지정
기본적으로 Junos XML 프로토콜 서버는 각 사용자 정의 구성 그룹의 태그 요소를 태그 요소의 <groups>
하위 요소로 표시하는 대신 적용된 요소의 하위 요소로 표시합니다. 마찬가지로, 서버는 각 사용자 정의 인터페이스 범위에 대한 태그 요소를 태그 요소의 <interface-range>
하위 요소로 표시하는 대신 인터페이스 범위의 멤버인 요소의 하위 요소로 표시합니다. 이 디스플레이 모드는 CLI 구성 모드 show
명령의 기본 동작에 평행하며, 이 동작은 [edit groups]
구성에서 및 [edit interfaces interface-range]
을(를) 별도의 계층으로 표시합니다.
Junos XML 프로토콜 서버가 , <apply-groups>
또는 요소를 별도로 표시<groups>
하지 않고 대신 사용자 정의 그룹 또는 인터페이스 범위에서 상속된 태그 요소를 상속 태그 요소 내의 묶도록 요청하기 위해 클라이언트 애플리케이션은 태그의 <get-configuration>
inherit="inherit"
속성을 <interface-range>
포함합니다. 요청은 태그 요소에 <rpc>
묶습니다.
<rpc> <get-configuration inherit="inherit"/> <!-- OR --> <get-configuration inherit="inherit"> <!-- tag elements for the configuration elements to return --> </get-configuration> </rpc>
Junos XML 프로토콜 서버가 그룹에서 상속된 junos-defaults
태그 요소와 사용자 정의 구성 그룹 및 인터페이스 범위를 포함하도록 요청하기 위해 클라이언트 애플리케이션은 태그에 inherit="defaults"
<get-configuration>
속성을 포함합니다.
<rpc> <get-configuration inherit="defaults"/> <!-- OR --> <get-configuration inherit="defaults"> <!-- tag elements for the configuration elements to return --> </get-configuration> </rpc>
태그 요소에 묶일 태그 요소에 <get-configuration>
대한 정보는 Junos XML 프로토콜 세션에서 반환할 구성 데이터 범위 지정을 참조하십시오.
클라이언트가 속성을 포함하면 inherit="inherit"
출력은 다음 CLI 구성 모드 명령의 출력과 동일한 정보를 포함합니다. 출력에는 그룹에서 상속된 junos-defaults
구성 요소가 포함되지 않습니다.
user@host# show | display inheritance | except ##
클라이언트가 속성을 포함하면 inherit="defaults"
출력은 다음 CLI 구성 모드 명령의 출력과 동일한 정보를 포함합니다.
user@host# show | display inheritance defaults | except ##
두 경우 모두 Junos XML 프로토콜 서버는 요청된 형식에 따라 태그 요소와 다음 태그 요소 중 하나에 출력 <rpc-reply>
을 묶습니다. <configuration>
태그 요소(Junos XML 태그 출력의 경우), <configuration-text>
태그 요소(포맷된 ASCII 출력의 경우), <configuration-set>
태그 요소(구성 모드 설정 명령용) 또는 <configuration-json>
태그 요소(JSON 형식 데이터의 경우). 오프닝 <configuration>
태그의 속성에 대한 정보는 Junos XML 프로토콜 세션에서 구성 정보 요청 소스 지정을 참조하십시오.
<rpc-reply xmlns:junos="URL"> <configuration attributes> <!-- Junos XML tag elements representing configuration elements --> </configuration> <!-- OR --> <configuration-text> <!-- formatted ASCII configuration statements --> </configuration-text> <!-- OR --> <configuration-set> <!-- configuration mode commands --> </configuration-set> <!-- OR --> <configuration-json> <!-- JSON-formatted configuration data --> </configuration-json> </rpc-reply>
속성은 inherit
태그 또는 열 태그 <get-configuration>
에서 다음 속성 <get-configuration/>
중 하나 이상과 결합될 수 있습니다.
changed
은(는) Junos XML 프로토콜을 사용하여 구성 요소에 대한 변경 지표 요청에 설명되어 있습니다.database
은(는) Junos XML 프로토콜 세션에서 구성 정보 요청의 소스 지정에 설명되어 있습니다.format
은(는) Junos XML 프로토콜 세션에서 구성 데이터에 대한 출력 형식 지정에 설명되어 있습니다.groups
은(는) Junos XML 프로토콜을 사용하여 구성 그룹 및 인터페이스 범위의 출력 형식 지정에 설명되어 있습니다.interface-ranges
은(는) Junos XML 프로토콜을 사용하여 구성 그룹 및 인터페이스 범위의 출력 형식 지정에 설명되어 있습니다.junos:key
은(는) Junos XML 프로토콜을 사용하여 구성 요소에 대한 식별자 표시기 요청에 설명되어 있습니다.
또한 애플리케이션은 식별자에 대한 지표를 요청한 후 속성을 포함 inherit
할 수 있습니다( Junos XML 프로토콜을 사용하여 구성 요소에 대한 식별자 표시기 요청에 설명된 대로).
상속된 구성 그룹 요소에 대한 소스 그룹 표시
Junos XML 프로토콜 서버가 각 구성 요소가 상속되는 구성 그룹을 나타내도록 요청하려면 클라이언트 애플리케이션이 속성을 태그의 groups="groups"
속성 <get-configuration>
과 결합합니다inherit
. 요청은 태그 요소에 <rpc>
묶습니다.
<rpc> <get-configuration inherit="(defaults | inherit)" groups="groups"/> <!-- OR --> <get-configuration inherit="(defaults | inherit)" groups="groups"> <!-- tag elements indicating the configuration elements to return --> </get-configuration> </rpc>
태그 요소에 묶일 태그 요소에 <get-configuration>
대한 정보는 Junos XML 프로토콜 세션에서 반환할 구성 데이터 범위 지정을 참조하십시오.
요청에 및 groups="groups"
속성을 모두 inherit
포함하면 Junos XML 프로토콜 서버가 상속 요소 내에 각 구성 그룹 요소를 표시하고 상속된 요소에는 소스 그룹을 나타내는 정보가 포함됩니다. 출력의 형식은 소스 그룹 정보가 결과 구성에 표시되는 방식을 결정합니다.
출력에 Junos XML 태그 요소(format="xml"
속성이 포함되어 있거나 format
속성이 생략)가 있는 경우, Junos XML 프로토콜 서버는 구성 그룹에서 상속되는 구성 요소의 오프닝 태그에 속성을 포함합니다junos:group="source-group"
. 응답은 및 <rpc-reply>
태그 요소로 <configuration>
묶입니다.
<rpc-reply xmlns:junos="URL"> <configuration attributes> <!-- For each inherited element --> <!-- opening-tags-for-parents-of-the-element --> <inherited-element junos:group="source-group"> <inherited-child-of-inherited-element junos:group="source-group"> <!-- inherited-children-of-child junos:group="source-group" --> </inherited-child-of-inherited-element> </inherited-element> <!-- closing-tags-for-parents-of-the-element --> </configuration> </rpc-reply>
출력 형식이 ASCII 텍스트(format="text"
속성이 포함되어 있음)인 경우, Junos XML 프로토콜 서버는 상속된 각 요소 바로 위에 소스 그룹에 대한 정보와 함께 세 개의 주석이 있는 줄을 삽입합니다. 응답은 및 <rpc-reply>
태그 요소로 <configuration-text>
묶입니다.
<rpc-reply xmlns:junos="URL"> <configuration-text> */ For each inherited element */ /* parent levels for the element */ ## ## 'inherited-element' was inherited from group 'source-group' ## inherited-element { ## ## 'inherited-child' was inherited from group 'source-group' ## inherited-child { ... child statements of inherited-child ... } } /* closing braces for parent levels of the element */ </configuration-text> </rpc-reply>
출력이 JSON 형식(format="json"
속성 포함)인 경우, Junos XML 프로토콜 서버는 상속된 요소에 대한 속성 목록의 속성을 포함합니다"junos:group" : "source-group"
. 응답은 및 <rpc-reply>
태그 요소로 <configuration-json>
묶입니다.
<rpc-reply xmlns:junos="URL"> <configuration-json> { "configuration" : { /* JSON objects for parent levels of the element */ "inherited-child" : { "@" : { "junos:group" : "source-group" }, "inherited-object" : [ { "@" : { "junos:group" : "source-group" }, "name" : "identifier" } ], "@inherited-statement" : { "junos:group" : "source-group" } } /* closing braces for parent levels of the element */ } } </configuration-json> </rpc-reply>
릴리스 16.1 Junos OS 시작하여 Junos OS 실행되는 디바이스는 직렬화를 위한 새로운 기본 구현을 사용하여 JSON 형식의 구성 데이터를 내보낸다. 새로운 기본값은 필드 이름 "속성" 대신 "@" 기호를 사용하여 속성을 나타냅니다.
속성이 groups="groups"
속성과 inherit="inherit"
결합되면 XML 출력은 다음 CLI 구성 모드 명령의 출력과 동일한 정보를 포함합니다. 출력에는 그룹에서 상속된 junos-defaults
구성 요소가 포함되지 않습니다.
user@host# show | display inheritance | display xml groups
속성이 groups="groups"
속성과 inherit="defaults"
결합되면 XML 출력은 다음 CLI 구성 모드 명령의 출력과 동일한 정보를 포함합니다.
user@host# show | display inheritance defaults | display xml groups
및 속성은 inherit
태그 또는 열 <get-configuration>
태그의 다음 다른 속성 <get-configuration/>
중 하나 이상과 groups
결합될 수 있습니다.
changed
은(는) Junos XML 프로토콜을 사용하여 구성 요소에 대한 변경 지표 요청에 설명되어 있습니다.database
은(는) Junos XML 프로토콜 세션에서 구성 정보 요청의 소스 지정에 설명되어 있습니다.format
은(는) Junos XML 프로토콜 세션에서 구성 데이터에 대한 출력 형식 지정에 설명되어 있습니다. 애플리케이션은 XML 태그 처리된 Junos, 형식이 지정된 ASCII 또는 JSON 출력을 요청할 수 있습니다.interface-ranges
은(는) Junos XML 프로토콜을 사용하여 구성 그룹 및 인터페이스 범위의 출력 형식 지정에 설명되어 있습니다.junos:key
은(는) Junos XML 프로토콜을 사용하여 구성 요소에 대한 식별자 표시기 요청에 설명되어 있습니다.
또한 애플리케이션은 식별자에 대한 지표를 요청한 후 및 groups
속성을 포함 inherit
할 수 있습니다(Junos XML 프로토콜을 사용하여 구성 요소에 대한 식별자 표시기 요청에 설명되어 있습니다).
상속된 구성 요소에 대한 소스 인터페이스 범위 표시
Junos XML 프로토콜 서버가 각 구성 요소가 상속되는 인터페이스 범위를 나타내도록 요청하기 위해 클라이언트 애플리케이션은 속성과 태그의 interface-ranges="interface-ranges"
속성을 <get-configuration>
결합합니다inherit
. 요청은 태그 요소에 <rpc>
묶습니다.
<rpc> <get-configuration inherit="inherit" interface-ranges="interface-ranges"/> <!-- OR --> <get-configuration inherit="inherit" interface-ranges="interface-ranges"> <!-- tag elements for the configuration elements to return --> </get-configuration> </rpc>
태그 요소에 묶일 태그 요소에 <get-configuration>
대한 정보는 Junos XML 프로토콜 세션에서 반환할 구성 데이터 범위 지정을 참조하십시오.
요청에 및 interface-ranges="interface-ranges"
속성을 모두 inherit
포함할 때, Junos XML 프로토콜 서버는 상속 요소 내에서 각 인터페이스 범위 구성 요소를 표시하고 상속된 요소는 소스 인터페이스 범위를 나타내는 정보를 포함합니다. 출력의 형식은 소스 인터페이스 범위 정보가 결과 구성에서 표시되는 방식을 결정합니다.
출력이 Junos XML 태그 요소(format="xml"
속성이 포함되거나 format
속성이 생략)로 태그되는 경우, Junos XML 프로토콜 서버는 인터페이스 범위에서 상속되는 구성 요소의 오프닝 태그에 속성을 포함합니다junos:interface-range="source-interface-range"
. 응답은 및 <rpc-reply>
태그 요소로 <configuration>
묶입니다.
<rpc-reply xmlns:junos="URL"> <configuration attributes> <interfaces> <!-- For each inherited element --> <interface junos:interface-range="source-interface-range"> <inherited-element junos:interface-range="source-interface-range"> <inherited-child-of-inherited-element junos:interface-range="source-interface-range"> <!-- inherited-children-of-child junos:interface-range="source-interface-range" --> </inherited-child-of-inherited-element> </inherited-element> </interface> </interfaces> </configuration> </rpc-reply>
출력 형식이 ASCII 텍스트(format="text"
속성 포함)인 경우, Junos XML 프로토콜 서버는 상속된 요소 바로 위에 소스 인터페이스 범위에 대한 정보와 함께 세 개의 주석이 있는 줄을 삽입합니다. 응답은 및 <rpc-reply>
태그 요소로 <configuration-text>
묶입니다.
<rpc-reply xmlns:junos="URL"> <configuration-text> interfaces { <!-- For each inherited element --> ## ## 'interface-name' was expanded from interface-range 'source-interface-range' ## interface-name { ## ## 'inherited-element' was expanded from interface-range 'source-interface-range' ## inherited-element { inherited-child { ... child statements of inherited-child ... } } } } </configuration-text> </rpc-reply>
출력이 JSON 형식(format="json"
속성 포함)인 경우, Junos XML 프로토콜 서버는 상속된 요소에 대한 속성 목록의 속성을 포함합니다"junos:interface-range" : "source-interface-range"
. 응답은 및 <rpc-reply>
태그 요소로 <configuration-json>
묶입니다.
<rpc-reply xmlns:junos="URL"> <configuration-json> { "configuration" : { /* JSON objects for parent levels of the element */ "inherited-child" : { "@" : { "junos:interface-range" : "source-interface-range" }, "inherited-object" : [ { "@" : { "junos:interface-range" : "source-interface-range" }, "name" : "identifier" } ], "@inherited-statement" : { "junos:interface-range" : "source-interface-range" } } /* closing braces for parent levels of the element */ } } </configuration-json> </rpc-reply>
릴리스 16.1 Junos OS 시작하여 Junos OS 실행되는 디바이스는 직렬화를 위한 새로운 기본 구현을 사용하여 JSON 형식의 구성 데이터를 내보낸다. 새로운 기본값은 필드 이름 "속성" 대신 "@" 기호를 사용하여 속성을 나타냅니다.
속성이 interface-ranges="interface-ranges"
속성과 inherit="inherit"
결합되면 XML 출력은 다음 CLI 구성 모드 명령의 출력과 동일한 정보를 포함합니다.
user@host# show | display inheritance | display xml interface-ranges
및 속성은 inherit
태그 또는 열 <get-configuration>
태그의 다음 다른 속성 <get-configuration/>
중 하나 이상과 interface-ranges
결합될 수 있습니다.
changed
은(는) Junos XML 프로토콜을 사용하여 구성 요소에 대한 변경 지표 요청에 설명되어 있습니다.database
은(는) Junos XML 프로토콜 세션에서 구성 정보 요청의 소스 지정에 설명되어 있습니다.format
은(는) Junos XML 프로토콜 세션에서 구성 데이터에 대한 출력 형식 지정에 설명되어 있습니다. 애플리케이션은 XML 태그 처리, 형식이 지정된 ASCII 또는 JSON 출력에 Junos 요청할 수 있습니다.groups
은(는) Junos XML 프로토콜을 사용하여 구성 그룹 및 인터페이스 범위의 출력 형식 지정에 설명되어 있습니다.junos:key
은(는) Junos XML 프로토콜을 사용하여 구성 요소에 대한 식별자 표시기 요청에 설명되어 있습니다.
또한 애플리케이션은 식별자에 대한 지표를 요청한 후 및 interface-ranges
속성을 포함 inherit
할 수 있습니다(Junos XML 프로토콜을 사용하여 구성 요소에 대한 식별자 표시기 요청에 설명되어 있습니다).
예: 구성 그룹에 대한 출력 형식 지정
다음 샘플 구성 계층은 라는 interface-group
구성 그룹을 정의합니다. 문은 apply-groups
계층 수준에서 그룹의 [edit interfaces]
문을 적용합니다.
[edit] groups { interface-group { interfaces { so-1/1/1 { encapsulation ppp; } } } } apply-groups interface-group; interfaces { fxp0 { unit 0 { family inet { address 192.168.4.207/24; } } } }
속성이 태그에 inherit
<get-configuration/>
포함되지 않은 경우 출력에는 및 <apply-groups>
태그 요소가 별도의 항목으로 포함 <groups>
됩니다. <groups>
태그 요소는 구성 그룹에 정의된 태그 요소를 묶습니다interface-group
. 태그 요소 바로 위에 <interfaces>
태그 요소를 배치 <apply-groups>
하면 계층이 [edit interfaces]
구성 그룹에 정의된 interface-group
문을 상속함을 나타냅니다.
속성이 inherit
태그 <interfaces>
에 <get-configuration/>
포함되어 있으면 태그 요소는 구성 그룹에 정의된 interface-group
태그 요소를 묶습니다. <groups>
및 <apply-groups>
태그 요소는 표시되지 않습니다 .
속성이 태그의 groups="groups"
inherit
속성 <get-configuration/>
과 결합되면 태그 <interfaces>
요소는 속성으로 표시된 junos:group="interface-group"
구성 그룹에서 정의된 interface-group
태그 요소를 묶습니다.