Junos XML 프로토콜을 사용하여 이전(롤백) 구성 검색
Junos OS를 실행하는 디바이스가 있는 Junos XML 프로토콜 세션에서 클라이언트 애플리케이션은 이전에 커밋된(롤백) 구성을 요청할 수 있습니다. 클라이언트는 구성의 롤백 인덱스 또는 구성 수정 식별자를 참조하여 구성을 검색할 수 있습니다.
롤백 번호를 사용하여 구성을 검색하는 방법
Junos OS를 실행하는 장치가 있는 Junos XML 프로토콜 세션에서 이전에 커밋된(롤백) 구성을 요청하면 클라이언트 애플리케이션이 요소와 함께 RPC를 <rollback>
실행합니다<get-rollback-information>
. 이 작업은 운영 모드 명령과 show system rollback
동일합니다. 이 요소는 표시할 이전 구성의 롤백 인덱스를 지정합니다. 이 값은 <rollback>
0(가장 최근에 커밋된 구성의 경우 0)에서 저장한 이전 구성 수(최대 49)보다 1보다 적을 수 있습니다.
기본값인 Junos XML 태그 출력을 요청하려면 애플리케이션에 값 xml
이 <format>
있는 요소를 포함하거나 요소를 생략합니다<format>
.
<rpc> <get-rollback-information> <rollback>index-number</rollback> </get-rollback-information> </rpc>
Junos XML 프로토콜 서버는 , 및 <configuration>
태그 요소에 <rpc-reply>
<rollback-information>
해당 응답을 동봉합니다. 태그는 <load-success/>
구현의 부작용이며 결과에 영향을 미치지 않습니다. 오프닝 <configuration>
태그의 속성에 대한 자세한 내용은 Junos XML 프로토콜 세션의 구성 정보 요청의 소스 지정을 참조하십시오.
<rpc-reply xmlns:junos="URL"> <rollback-information> <load-success/> <configuration attributes> <!-- tag elements for the complete previous configuration --> </configuration> </rollback-information> </rpc-reply>
형식화된 ASCII 출력을 요청하려면 애플리케이션에 값text
이 <format>
있는 요소가 포함됩니다.
<rpc> <get-rollback-information> <rollback>index-number</rollback> <format>text</format> </get-rollback-information> </rpc>
Junos XML 프로토콜 서버는 , 및 <configuration-output>
태그 요소에 <configuration-information>
<rpc-reply>
<rollback-information>
해당 응답을 동봉합니다. Junos OS 구성 명령문에서 사용되는 형식의 ASCII 표기법에 대한 자세한 내용은 Junos XML 프로토콜 세션에서 구성 데이터를 위한 출력 형식 지정을 참조하십시오.
<rpc-reply xmlns:junos="URL"> <rollback-information> <load-success/> <configuration-information> <configuration-output> <!-- formatted ASCII text for the complete previous configuration --> </configuration-output> </configuration-information> </rollback-information> </rpc-reply>
Junos OS 릴리스 16.1부터 시작하여 JSON 형식으로 이전에 커밋된(롤백) 구성을 요청하기 위해 애플리케이션에는 요소의 값 json
이 있는 <get-rollback-information>
요소가 포함됩니다<format>
. Junos OS Release 16.1 이전에 오프닝 <get-rollback-information>
태그에 속성을 포함 format="json"
시킴으로써 JSON 형식의 데이터가 요청됩니다.
<rpc> <get-rollback-information> <rollback>index-number</rollback> <format>json</format> </get-rollback-information> </rpc>
속성을 사용하여 format="json"
형식을 지정하면 Junos XML 프로토콜 서버가 해당 응답을 요소에 <rpc-reply>
포함시키고 최상위 JSON 구성원"rollback-information"
의 필드 이름은 하며, 방출된 구성 데이터는 직렬화를 위해 이전 구현을 사용합니다. 요소를 사용하여 <format>json</format>
JSON 형식의 데이터를 요청할 때 Junos XML 프로토콜 서버는 응답을 , <rollback-information>
<configuration-information>
및 태그 요소에 <rpc-reply>
포함하며 <json-output>
최상위 JSON 구성원의 필드 이름은 이며"configuration"
, 방출된 구성 데이터는 직렬화를 위해 새로운 구현을 사용합니다.
<rpc-reply xmlns:junos="URL"> <rollback-information> <load-success/> <configuration-information> <json-output> <!-- JSON data for the complete previous configuration --> </json-output> </configuration-information> </rollback-information> </rpc-reply>
다음 예에서는 인덱스 2가 있는 롤백 구성에 대해 Junos XML 태깅 출력을 요청하는 방법을 보여줍니다. 실제 출력에서 변수 JUNOS-version 는 Junos OS Release 20.4의 최초 버전에서 20.4R1과 같은 값으로 대체됩니다.

구성 수정 식별자를 사용하여 구성을 검색하는 방법
구성을 성공적으로 커밋할 때 Junos OS는 해당 구성을 고유한 구성 수정 식별자를 할당합니다. 각 커밋에 대해 이전에 커밋된 구성 증분의 롤백 인덱스와는 반면, 구성 수정 식별자는 동일한 구성에 대해 정적으로 유지됩니다.
Junos OS Release 20.4R1부터 Junos XML 프로토콜 클라이언트 애플리케이션은 RPC를 사용하여 <get-configuration-by-revision>
지정된 구성 수정 식별자에 해당하는 구성을 검색할 수 있습니다. 예를 들어:
<rpc> <get-configuration-by-revision> <revision-string>re0-1605226203-331</revision-string> </get-configuration-by-revision> </rpc>
서버는 요소에 동봉된 요청된 구성을 반환합니다 <configuration-revision-information>
.
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/20.4R1/junos"> <configuration-revision-information> <load-success/> <configuration junos:changed-seconds="1605226201" junos:changed-localtime="2020-11-12 16:10:01 PST"> ... </configuration> </configuration-revision-information> </rpc-reply>
기본적으로 RPC는 <get-configuration-by-revision>
구성을 XML 형식으로 반환합니다. 구성을 텍스트 또는 JSON으로 반환하려면 RPC에 <format>
요소를 포함시키고 또는 를 지정 text
합니다 json
.
<rpc> <get-configuration-by-revision> <revision-string>re0-1605226203-331</revision-string> <format>text</format> </get-configuration-by-revision> </rpc>
<rpc> <get-configuration-by-revision> <revision-string>re0-1605226203-331</revision-string> <format>json</format> </get-configuration-by-revision> </rpc>
특정 구성에 대한 구성 수정 버전 식별자와 현재 롤백 인덱스 간의 매핑을 결정할 수 있습니다. 지정된 커밋된 구성에 대한 구성 수정 식별자가 정적인 반면 롤백 인덱스는 각 커밋에 따라 증분된다는 점을 유의하십시오.
특정 구성 수정 식별자와 해당하는 롤백 번호를 확인하려면 RPC를 <get-configuration-by-revision>
실행하고 수정 버전 식별자를 지정하고 빈 <rollback-number/>
태그를 포함합니다.
<rpc> <get-configuration-by-revision> <revision-string>re0-1605226203-331</revision-string> <rollback-number/> </get-configuration-by-revision> </rpc>
디바이스는 해당 구성 수정 버전 식별자와 연관된 롤백 인덱스(rollback index)를 반환합니다.
<rpc-reply> <configuration-revision-information> <rollback-number>2</rollback-number> </configuration-revision-information> </rpc-reply>
마찬가지로, 현재 특정 롤백 번호와 연관된 구성 수정 식별자를 확인하려면 RPC를 실행하고 <get-rollback-information>
롤백 인덱스(rollback index)를 지정하며 빈 <configuration-revision/>
태그를 포함합니다.
<rpc> <get-rollback-information> <rollback>2</rollback> <configuration-revision/> </get-rollback-information> </rpc>
이 장치는 현재 해당 롤백 인덱스와 연관된 구성 수정 버전 식별자를 반환합니다.
<rpc-reply> <rollback-information> <configuration-revision>re0-1605226203-331</configuration-revision> </rollback-information>
클라이언트 애플리케이션은 장비의 커밋 히스토리를 확인함으로써 구성 수정 식별자의 매핑을 롤백 인덱스로 검색할 수도 있습니다. 커밋 히스토리를 보고 구성 수정 식별자를 포함하기 위해 클라이언트 애플리케이션은 자식 요소와 함께 RPC를 <include-configuration-revision/>
실행합니다<get-commit-information>
. 서버는 운영 모드 명령 출력과 동등한 XML 출력을 show system commit include-configuration-revision
반환합니다.
<rpc> <get-commit-information> <include-configuration-revision/> </get-commit-information> </rpc>
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/20.4R1/junos"> <commit-information> <commit-history> <sequence-number>0</sequence-number> <user>admin</user> <client>netconf</client> <date-time junos:seconds="1605236880">2020-11-12 19:08:00 PST</date-time> <configuration-revision>re0-1605236878-333</configuration-revision> </commit-history> <commit-history> <sequence-number>1</sequence-number> <user>user1</user> <client>netconf</client> <date-time junos:seconds="1605228068">2020-11-12 16:41:08 PST</date-time> <configuration-revision>re0-1605228066-332</configuration-revision> </commit-history> </commit-information> <commit-history> <sequence-number>2</sequence-number> <user>admin</user> <client>cli</client> <date-time junos:seconds="1605226205">2020-11-12 16:10:05 PST</date-time> <configuration-revision>re0-1605226203-331</configuration-revision> </commit-history> ... </rpc-reply>