指定 Junos XML 协议会话中配置信息请求的源
在与运行 Junos OS 的设备的 Junos XML 协议会话中,客户端应用程序使用 <get-configuration> 标记元素从设备请求配置数据。客户端应用程序可以从候选配置、活动配置(即设备上最近提交的配置)或临时配置数据库的开放实例请求信息。
通过将属性设置为 database 相应值,客户端应用程序可以指示设备从候选配置或活动配置返回配置信息。要从候选配置请求信息,客户端应用会包含 <get-configuration> 标记元素,并包括属性 database="candidate" 或完全省略属性。默认情况下,Junos XML 协议服务器会返回 Junos XML 标记的输出,包括属性除外 compare 。
<rpc>
<get-configuration/>
<!-- OR -->
<get-configuration>
<!-- tag elements for the configuration elements to return -->
</get-configuration>
</rpc>
要从活动配置请求信息,客户端应用程序将 <get-configuration> 标记元素与 database="committed" 属性括在 <rpc> 元素中。
<rpc>
<get-configuration database="committed"/>
<!-- OR -->
<get-configuration database="committed">
<!-- tag elements for the configuration elements to return -->
</get-configuration>
</rpc>
有关要包含在标记元素中的 <get-configuration> 标记元素的信息,请参阅 指定在 Junos XML 协议会话中返回的配置数据的范围。
从 Junos OS 13.1 版开始,当逻辑系统用户使用操作请求整个逻辑系统配置 <get-configuration> 时,RPC 回复将包含 <configuration> 根标记。在 Junos OS 13.1 版之前, <configuration> 根标记被省略。
要从临时配置数据库的特定实例请求信息,客户端应用程序首先使用 <open-configuration> 带有相应子标记的操作打开该临时实例。
<rpc>
<!-- Default instance -->
<open-configuration>
<ephemeral/>
</open-configuration>
<!-- Named instance -->
<open-configuration>
<ephemeral-instance>instance-name</ephemeral-instance>
</open-configuration>
</rpc>
当临时实例处于打开状态时,客户端应用程序将使用 <get-configuration> 操作从该实例请求信息。完成临时实例上的所有操作后,客户端应用会使用操作 <close-configuration/> 关闭实例。
<rpc>
<get-configuration/>
<!-- OR -->
<get-configuration>
<!-- tag elements for the configuration elements to return -->
</get-configuration>
</rpc>
<rpc>
<close-configuration/>
</rpc>
Junos XML 协议服务器将其回复括在标记元素中<rpc-reply>。在元素中<rpc-reply>,所请求配置的配置数据包含在 Junos XML 标记输出的元素、<configuration><configuration-text>格式化 ASCII 输出的元素、<configuration-set>配置模式set命令的元素或使用 JavaScript Object Notation (JSON) 表示的配置数据的元素中<configuration-json>。
从候选配置或临时配置数据库实例返回信息时,输出将包含有关上次更改配置时间的信息。将配置显示为 Junos XML 标记元素时,Junos XML 协议服务器将此信息作为属性包括在打开 <configuration> 标记中(为了可读性,它们显示在多行上)。
<rpc-reply xmlns:junos="URL">
<configuration junos:changed-seconds="seconds" \
junos:changed-localtime="YYYY-MM-DD hh:mm:ss TZ">
<!-- Junos XML tag elements representing configuration elements -->
</configuration>
</rpc-reply>
junos:changed-localtime 将上次更改的时间表示为设备本地时区中的日期和时间。
junos:changed-seconds 表示自 1970 年 1 月 1 日午夜以来的最后更改时间的秒数。
从活动配置返回信息时,输出将包含有关上次提交配置时间的信息。将配置显示为 Junos XML 标记元素时,Junos XML 协议服务器将此信息作为属性包括在打开 <configuration> 标记中(为了可读性,它们显示在多行上)。
<rpc-reply xmlns:junos="URL">
<configuration junos:commit-seconds="seconds" \
junos:commit-localtime="YYYY-MM-DD hh:mm:ss TZ" \
junos:commit-user="username">
<!-- Junos XML tag elements representing configuration elements -->
</configuration>
</rpc-reply>
junos:commit-localtime 将提交时间表示为设备本地时区中的日期和时间。
junos:commit-seconds 表示提交时间,表示自 1970 年 1 月 1 日午夜以来的秒数。
junos:commit-user 指定请求提交操作的用户的 Junos OS 用户名。
database应用程序请求中的属性可以与标记或打开<get-configuration>标记中的<get-configuration/>一个或多个以下属性组合:
changed(使用 Junos XML 协议请求配置元素的更改指标)中介绍commit-scripts(使用 Junos XML 协议请求提交脚本样式的 XML 配置数据中介绍)compare(使用 Junos XML 协议将活动或候选配置与先前版本进行比较)中进行了说明format中的说明为 Junos XML 协议会话中的配置数据指定输出格式inherit(可选)groups和interface-ranges,如 使用 Junos XML 协议指定配置组和接口范围的输出格式
应用程序还可以在 database 请求标识符指示符(如 使用 Junos XML 协议为配置元素请求标识符指标中所述)后包括属性。
以下示例说明如何请求整个提交的配置。在实际输出中,该 Junos-version 变量将替换为 20.4R1 等值,用于 Junos OS 20.4 版本的初始版本。
<get-configuration> 时,RPC 回复将包含
<configuration> 根标记。