Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
在此页面上
 

<get-configuration>

使用

描述

请求 NETCONF 或 Junos XML 协议服务器的配置数据。属性指定要显示的数据的来源和格式。

如果客户端应用程序发出 Junos XML 协议 <open-configuration> 操作,以便在执行 <get-configuration> 操作前打开特定配置数据库,服务器将从开放配置数据库返回配置数据。否则,服务器将从候选配置返回配置数据,除非通过包含 database="committed" 属性明确请求活动配置。

客户端应用程序可以请求整个配置层次结构或其中的一个子集。

  • 要显示整个配置层次结构,请发出空 <get-configuration/> 标记。

  • 要显示配置元素(层次结构级别或配置对象),请在标记元素中 <get-configuration> 发出标记元素,以表示配置层级的所有级别,从 root(由 <configuration> 标记元素表示)下降到要显示的级别或对象。要表示层次结构级别或没有标识符的配置对象,请将其作为空标记发出。要表示具有一个或多个标识符的对象,请仅发送其容器标记元素和标识符标记元素,而不是表示其他特性的任何标记元素。

注意:

要从临时配置数据库的实例中检索配置数据,客户端应用程序必须先使用 <open-configuration> 带有相应子标记的操作打开临时实例,然后再发出 <get-configuration> 操作。使用 <get-configuration> 操作检索临时配置数据时,唯一支持的属性是 formatkey

注意:

从 Junos OS 版本 13.1 开始,在 NETCONF 或 Junos XML 协议会话中,逻辑系统用户可使用 Junos XML <get-configuration> 操作使用儿童配置标记请求特定逻辑系统配置层次结构,并请求整个逻辑系统配置。请求整个逻辑系统配置时,RPC 回复包含 <configuration> root 标记。在 Junos OS 版本 13.1 之前, <configuration> 将省略根标记。

属性

changed

junos:changed="changed"指定属性应出现在每个已更改的配置元素的打开标记中。

该属性出现在到已更改配置元素的路径中每个父层标记元素的打开标记中,包括顶层开放 <configuration> 标记。如果更改的配置元素由单个(空)标记表示, junos:changed="changed" 则该属性将显示在标记中。如果更改的元素由容器标记元素表示, junos:changed="changed" 则属性将出现在开口容器标记中,也出现在容器标记元素中所括的每个儿童标记元素中。

database 属性可与 changed="changed" 属性相结合,以请求候选方或活动配置:

  • 请求候选配置( database="candidate" 包含属性或 database 完全省略属性)时,最后一次提交操作后添加到候选配置的 junos:changed="changed" 元素将使用属性标记。

  • 请求活动配置( database="committed" 包含属性)时,最近提交时添加到活动配置中的元素将使用 junos:changed="changed" 属性标记。

    注意:

    提交操作成功后,服务器将从所有标记元素中 junos:changed="changed" 移除属性。但是,如果在提交期间生成警告,则不会移除该属性。在这种情况下, junos:changed="changed" 属性出现在在提交操作之前以及之后更改的标记元素中。

提交时间警告的示例是该消息,该消息解释说,在重新启动设备之前,配置元素实际上不会适用。此警告将显示在标记字符串中,即服务器返回以确认提交成功,该提交包含在标记元素中 <xnm:warning>

要从提交前更改的元素中移除 junos:changed="changed" 属性,请采取必要的操作以消除警告的原因,然后再次提交配置。

commit-scripts

请求 NETCONF 或 Junos XML 协议服务器显示提交脚本式 XML 数据。属性的值决定输出。可接受的值包括:

  • apply—使用应用的提交脚本更改显示配置,包括瞬态更改和非瞬态更改。使用 | display commit-scripts 选项时,输出等同于 CLI 输出。

  • apply-no-transients—使用应用的提交脚本更改显示配置,但排除瞬时更改。使用 | display commit-scripts no-transients 选项时,输出等同于 CLI 输出。

  • view—显示输入到提交脚本的 XML 格式配置。这等同于使用属性 inherit="inherit"查看配置, groups="groups"changed="changed"。使用 | display commit-scripts view 选项时,输出等同于 CLI 输出。

compare

请求 NETCONF 或 Junos XML 协议服务器显示活动或候选配置与先前提交的配置(比较配置)之间的差异。

compare 属性可与 database 属性结合使用,以指示是否将候选配置或活动配置与先前提交的配置进行比较。如果省略属性 database ,则比较将使用候选配置。

属性 compare 接受以下值,表示用于参考比较配置的方法:

  • configuration-revision—通过配置修订标识字符串参考比较配置,您可在属性中 configuration-revision="revision-id" 定义该字符串。

  • rollback—请参考其回滚索引(您在属性中定义)的 rollback="rollback-number" 对比配置。

如果包含 compare 属性但未执行对应 configuration-revision 或属性或 rollback 提供无效的配置修订标识符,则服务器将最近提交的配置用作比较配置。

将候选配置与活动配置进行比较时,操作 compare 将返回 XML 输出。对于所有其他比较,它使用补丁格式将输出返回为文本。将候选配置与活动配置进行比较时,可显示文本、XML 或 JSON 格式的差异,方法是 format 将请求中的属性的相应值包括在内。您可以显示从 Junos OS 版本 15.1R1 开始的 XML 格式差异,并且可以显示从 Junos OS 版本 16.1R1 开始的 JSON 格式差异。

注意:

从 Junos OS 16.2R2 版开始,当您比较候选配置和活动配置并显示 XML 或 JSON 格式的差异时,设备将省略 XML 输出configuration中的标记,如果比较结果没有返回任何差异,或者如果对比结果仅针对非原生配置数据而返回差异,则设备将省略 <configuration> JSON 输出中的对象, 例如,与 OpenConfig 数据模型关联的配置数据。

database

指定要从该配置中显示数据的配置为以下某个配置:

  • candidate-候选配置。

  • committed—活动配置(最近提交的配置)。

如果两者都包括在内,则 database 该属性优先 database-path 于属性。

database-path

在提交脚本中,此属性指定了该会话的继承前候选配置的路径。唯一可接受的价值是 $junos-context/commit-context/database-path

对于正常的配置会话,提交脚本将检索正常的继承前候选配置。对于专用配置会话,提交脚本将检索专用的继承前候选配置。

如果同时 database 包含和 database-path 属性, database 则属性优先。

format

指定 NETCONF 或 Junos XML 协议服务器返回配置数据的格式。可接受的值包括:

  • json— 配置语句使用 JavaScript 对象符号 (JSON) 格式化。从 Junos OS 16.1 版开始,运行 Junos OS 的设备会使用新的默认实施进行串行化,发出 JSON 格式的配置数据。

    注意:

    从 Junos OS 16.1R4、16.2R2 和 17.1R1 版本开始,JSON 格式发布的 Junos OS 配置数据中的整数不会以引号括起来。在早期版本中,JSON 配置数据中的整数被视为字符串,并以引号括起来。

  • set—配置语句格式化为 Junos OS 配置模式 set 命令。

  • text— 配置语句格式化为 ASCII 文本,使用新线字符、选项卡和其他空白、大括号和方形托架来指示语句之间的层次结构关系。这是运行 Junos OS 的设备上存储并由 CLI show configuration 命令显示的配置文件中使用的格式。

  • xml—配置语句由相应的 Junos XML 标记元素表示。如果省略属性, format 则这是默认值。

注意:

从 Junos OS 版本 21.1R1 和 Junos OS Evolved 版本 22.3R1 开始,NETCONF 会话还支持 json-minifiedxml-minified 格式,这些会话将各自格式返回,删除了不必要的空格、选项卡和新线路。

groups

junos:group="group-name"指定从配置组继承下来的每个配置元素的开口标记中都显示属性。该group-name变量指定了从中继承该元素的配置组的名称。

属性的唯一 groups 可接受值是 groups。指定 groups 属性时,还必须指定 inherit 属性。

inherit

指定 NETCONF 或 Junos XML 协议服务器如何显示在配置组和接口范围中定义的语句。inherit如果属性被省略,则输出使用 <groups><apply-groups><apply-groups-except>标记元素来表示用户定义的配置组,并使用<interface-range>标记元素表示用户定义的接口范围;它不包括 junos 默认组中定义的语句的标记元素。

可接受的值包括:

  • defaults- 输出不包含 <groups><apply-groups><apply-groups-except> 标记元素,而是显示从用户定义组和 junos 默认组继承下来的标记元素,作为继承标记元素的子。

  • inherit- 输出不包含 <groups><apply-groups><apply-groups-except><interface-range> 标记元素,而是显示从用户定义组和范围继承下来的标记元素,作为继承标记元素的子女。输出中不包括 junos 默认组中定义的语句的标记元素。

interface-ranges

junos:interface-ranges="source-interface-range"指定从接口范围继承的每个配置元素的开口标记中都显示属性。该source-interface-range变量指定了接口范围的名称。

属性的唯一 interface-ranges 可接受值是 interface-ranges。指定 interface-ranges 属性时,还必须指定 inherit 属性。

junos:key | key

junos:key="key"指定属性出现在用作配置对象标识符的每个元素的打开标记中。唯一可接受的价值是 key

发布信息

这是一个 Junos XML 管理协议操作。它在 Junos XML 协议会话中受支持,并且作为在运行 Junos OS 的设备上的 NETCONF 会话中的瞻博网络专有扩展,用于识别功能交换中的 URI http://xml.juniper.net/netconf/junos/1.0。

interface-ranges 属性在 Junos OS 版本 10.3R1 中添加。

commit-scripts 属性值 apply 并在 apply-no-transients Junos OS 版本 12.1 中添加

database-path 属性在 Junos OS 版本 12.2 中添加。

format Junos OS 版本 14.2 中添加的属性值 json

format Junos OS 版本 15.1 中添加的属性值 set

从 Junos OS 16.1 版开始,运行 Junos OS 的设备会使用新的默认实施进行串行化,发出 JSON 格式的配置数据。

从 Junos OS 16.1R4、16.2R2 和 17.1R1 版本开始,JSON 格式发布的 Junos OS 配置数据中的整数不会以引号括起来。

compare Junos OS 版本 20.4R1 和 Junos OS Evolved 版本 20.4R1 中的属性增值 configuration-revision

format 属性值 json-minifiedxml-minified 仅在 Junos OS 版本 21.1R1 和 Junos OS Evolved 版本 22.3R1 中添加至 NETCONF 会话。