- play_arrow Overview
- play_arrow Junos XML Management Protocol and Junos XML API Overview
- play_arrow Junos XML Protocol and Junos XML Tags Overview
- XML and Junos OS Overview
- XML Overview
- XML and Junos XML Management Protocol Conventions Overview
- Map Junos OS Commands and Command Output to Junos XML Tag Elements
- Map Configuration Statements to Junos XML Tag Elements
- Using Configuration Response Tag Elements in Junos XML Protocol Requests and Configuration Changes
- play_arrow Junos XML Protocol and JSON Overview
-
- play_arrow Manage Junos XML Protocol Sessions
- play_arrow Junos XML Protocol Session Overview
- play_arrow Manage Junos XML Protocol Sessions
- Satisfy the Prerequisites for Establishing a Connection to the Junos XML Protocol Server
- Configure clear-text or SSL Service for Junos XML Protocol Client Applications
- Connect to the Junos XML Protocol Server
- Start a Junos XML Protocol Session
- Authenticate with the Junos XML Protocol Server for Cleartext or SSL Connections
- Send Requests to the Junos XML Protocol Server
- Parse the Junos XML Protocol Server Response
- Parse Response Tag Elements Using a Standard API in NETCONF and Junos XML Protocol Sessions
- How Character Encoding Works on Juniper Networks Devices
- Handle an Error or Warning in Junos XML Protocol Sessions
- Halt a Request in Junos XML Protocol Sessions
- Lock, Unlock, or Create a Private Copy of the Candidate Configuration Using the Junos XML Protocol
- Terminate a Junos XML Protocol Session
- End a Junos XML Protocol Session and Close the Connection
- Sample Junos XML Protocol Session
- play_arrow Junos XML Protocol Tracing Operations
- play_arrow Junos XML Protocol Operations
- play_arrow Junos XML Protocol Processing Instructions
- play_arrow Junos XML Protocol Response Tags
- play_arrow Junos XML Element Attributes
- active
- count
- delete
- inactive
- insert
- junos:changed
- junos:changed-localtime
- junos:changed-seconds
- junos:commit-localtime
- junos:commit-seconds
- junos:commit-user
- junos:group
- junos:interface-range
- junos:key
- junos:position
- junos:total
- matching
- protect
- recurse
- rename
- replace
- replace-pattern
- start
- unprotect
- xmlns
-
- play_arrow Manage Configurations Using the Junos XML Protocol
- play_arrow Change the Configuration Using the Junos XML Protocol
- Request Configuration Changes Using the Junos XML Protocol
- Upload and Format Configuration Data in a Junos XML Protocol Session
- Upload Configuration Data as a File Using the Junos XML Protocol
- Upload Configuration Data as a Data Stream Using the Junos XML Protocol
- Define the Format of Configuration Data to Upload in a Junos XML Protocol Session
- Specify the Scope of Configuration Data to Upload in a Junos XML Protocol Session
- Replace the Configuration Using the Junos XML Protocol
- Create, Modify, or Delete Configuration Elements Using the Junos XML Protocol
- Create New Elements in Configuration Data Using the Junos XML Protocol
- Merge Elements in Configuration Data Using the Junos XML Protocol
- Replace Elements in Configuration Data Using the Junos XML Protocol
- Replace Only Updated Elements in Configuration Data Using the Junos XML Protocol
- Delete Elements in Configuration Data Using the Junos XML Protocol
- Rename Objects In Configuration Data Using the Junos XML Protocol
- Reorder Elements In Configuration Data Using the Junos XML Protocol
- Protect or Unprotect a Configuration Object Using the Junos XML Protocol
- Change a Configuration Element’s Activation State Using the Junos XML Protocol
- Change a Configuration Element’s Activation State Simultaneously with Other Changes Using the Junos XML Protocol
- Replace Patterns in Configuration Data Using the NETCONF or Junos XML Protocol
- play_arrow Commit the Configuration on a Device Using the Junos XML Protocol
- Verify Configuration Syntax Using the Junos XML Protocol
- Commit the Candidate Configuration Using the Junos XML Protocol
- Commit a Private Copy of the Configuration Using the Junos XML Protocol
- Commit a Configuration at a Specified Time Using the Junos XML Protocol
- Commit the Candidate Configuration Only After Confirmation Using the Junos XML Protocol
- Commit and Synchronize a Configuration on Redundant Control Planes Using the Junos XML Protocol
- Log a Message About a Commit Operation Using the Junos XML Protocol
- View the Configuration Revision Identifier for Determining Synchronization Status of Devices with NMS
- play_arrow Ephemeral Configuration Database
- Understanding the Ephemeral Configuration Database
- Unsupported Configuration Statements in the Ephemeral Configuration Database
- Enable and Configure Instances of the Ephemeral Configuration Database
- Commit and Synchronize Ephemeral Configuration Data Using the NETCONF or Junos XML Protocol
- Managing Ephemeral Configuration Database Space
-
- play_arrow Junos XML Protocol Utilities
- play_arrow Develop Junos XML Protocol C Client Applications
-
- play_arrow Configuration Statements and Operational Commands
Compare Two Previous (Rollback) Configurations Using the Junos XML Protocol
In a Junos XML protocol session with a device running Junos
OS, a client application can compare the contents of two previously
committed (rollback) configurations by using either of the following
RPCs with the <compare>
element:
<get-configuration-by-revision>
—Compare configurations by referencing a configuration revision identifier.<get-rollback-information>
—Compare configurations by referencing a rollback index.
The <get-configuration-by-revision>
RPC with the <compare>
element is
equivalent to the show system configuration revision
operational
mode command with the compare
option. The <compare>
element specifies the configuration revision
identifier of the configuration that is the basis for comparison.
The <revision-string>
element defines
the configuration revision identifier of the configuration to compare
with the base configuration. The syntax is:
<rpc> <get-configuration-by-revision> <revision-string>revision-id</revision-string> <compare>revision-id</compare> </get-configuration-by-revision> </rpc>
For example, the following RPC compares two configurations by referencing their configuration revision identifier strings:
<rpc> <get-configuration-by-revision> <revision-string>re0-1605288042-335</revision-string> <compare>re0-1605288033-334</compare> </get-configuration-by-revision> </rpc>
Similarly, the <get-rollback-information>
RPC with the <compare>
element is
equivalent to the show system rollback
operational
mode command with the compare
option. The <compare>
element specifies the rollback index of
the configuration that is the basis for comparison. The <rollback>
element specifies the rollback index
of the configuration to compare with the base configuration. Valid
values in both tag elements range from 0 (zero, for the most recently
committed configuration) through 49. The syntax is:
<rpc> <get-rollback-information> <rollback>index-number</rollback> <compare>index-number</compare> </get-rollback-information> </rpc>
The output corresponds more logically to the chronological
order of changes if the older configuration is the base configuration.
Its index is enclosed in the <compare>
element, and the index of the more recent configuration is enclosed
in the <rollback>
or <revision-string>
tag element.
The Junos XML protocol server encloses its response in
an <rpc-reply>
element, a <rollback-information>
or <configuration-revision-information>
element, depending on the RPC, and <configuration-information>
and <configuration-output>
elements.
The <load-success/>
tag is a side effect
of the implementation and does not affect the results.
<rpc-reply xmlns:junos="URL"> <rollback-information> <load-success/> <configuration-information> <configuration-output> <!-- formatted ASCII text representing the changes --> </configuration-output> </configuration-information> </rollback-information> </rpc-reply>
The information in the <configuration-output>
tag element is formatted ASCII text and includes a banner line (such
as [edit interfaces]
) for each hierarchy level at which
the two configurations differ. Each line between banner lines begins
with either a plus sign (+) or a minus sign (–). The plus sign
indicates that adding the statement to the base configuration results
in the second configuration, whereas a minus sign means that removing
the statement from the base configuration results in the second configuration.
The following example shows how to request a comparison of the rollback configurations that have indexes of 20 and 4.
