将 Junos OS 命令和命令输出映射到 Junos XML 标记元素
Junos XML API 是 Junos OS 配置语句和作模式命令的 XML 表示形式。它为 Junos OS 配置层次结构中的所有语句以及您在 CLI作模式下发出的许多命令定义了一个 XML 等效项。每个带有 Junos XML 对应项的作模式命令都会映射到一个请求标记元素,并在必要时映射到一个响应标记元素。
请求标记元素用于 NETCONF 和 Junos XML 协议会话中的远程过程调用 (RPC),以便从运行 Junos OS 的设备请求信息。服务器使用包含在响应标记元素中的 Junos XML 标记元素返回响应。例如, show interfaces 命令映射到 <get-interface-information> 请求标记,服务器返回 <interface-information> 响应标记。
以下各节概述了如何将命令、命令选项和命令输出映射到 Junos XML 标记元素。
将命令输出映射到 Junos XML 元素
在 Junos OS 命令行界面 (CLI) 上,要将命令输出显示为 Junos XML 标记元素,而不是默认格式化的 ASCII 文本,请在命令后添加 | display xml 选项。描述 Junos OS 配置或作数据的标记元素属于 Junos XML API,该 API 定义可由 NETCONF 和 Junos XML 管理协议作检索和作的 Junos OS 内容。
以下示例显示了在运行 Junos OS 9.3 版的 M20 路由器上发出的命令的输出 show chassis hardware (开始 <chassis-inventory> 标记显示在两行上,只是为了便于清晰易读)。这与服务器对 <get-chassis-inventory> RPC 请求的响应相同。
user@host> show chassis hardware | display xml
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/9.3R1/junos">
<chassis-inventory \
xmlns="http://xml.juniper.net/junos/9.3R1/junos-chassis">
<chassis junos:style="inventory">
<name>Chassis</name>
<serial-number>00118</serial-number>
<description>M20</description>
<chassis-module>
<name>Backplane</name>
<version>REV 06</version>
<part-number>710-001517</part-number>
<serial-number>AB5911</serial-number>
</chassis-module>
<chassis-module>
<name>Power Supply A</name>
<!-- other child tags of <chassis-module> -->
</chassis-module>
<!-- other child tags of <chassis> -->
</chassis>
</chassis-inventory>
</rpc-reply>
将命令映射到 Junos XML 请求标记元素
您可以在 Junos XML API 资源管理器 -作标记 工具和 Junos OS CLI 中找到有关可用 Junos OS作模式命令及其等效的 Junos XML RPC 请求标记的信息。您可以使用该工具验证命令,将命令映射到其等效的 Junos XML RPC 请求标记和子标记,并查看各种 Junos OS 版本的预期响应标记。
您还可以显示在 Junos OS CLI 上具有 Junos XML 对应项的任何作模式命令的 Junos XML 请求标记元素。要显示作模式命令的 Junos XML RPC 请求标记,请输入命令并将其通过管道传递给 display xml rpc 命令。
以下示例显示命令的 show route RPC 标记:
user@host> show route | display xml rpc
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/10.1I0/junos">
<rpc>
<get-route-information>
</get-route-information>
</rpc>
<cli>
<banner></banner>
</cli>
</rpc-reply>
从 Junos OS 20.3R1 版开始,某些 Junos XML RPC 请求标记的名称已更新,以确保 Junos XML API 之间的一致性。为了向后兼容,Junos 设备仍接受旧的请求标记名称,但我们建议今后使用新名称。要验证给定 Junos OS 版本中作模式命令的 Junos XML RPC 请求标记,请参阅 Junos XML API 资源管理器 -作标记工具 。
具有可变值的命令选项的映射
许多 CLI 命令都具有用于识别命令影响或报告的对象的选项,从而将该对象与同类型的其他对象区分开来。在某些情况下,CLI 不会在标识符前面加上固定格式的关键字,但 XML 约定要求 Junos XML API 为每个选项定义一个标记元素。要了解作请求标记元素的每个标识符(以及任何其他子标记元素)的名称,请参阅相应 DTD 或 Junos XML API作开发人员参考中标记元素的条目,或者在 CLI 中发出命令和命令选项并附加该 | display xml rpc 选项。
以下示例显示了两个具有可变格式选项的 CLI作命令的 Junos XML 标记元素。在命令中 show interfaces ,t3-5/1/0:0 是接口的名称。在 show bgp neighbor 命令中,10.168.1.222 是关注的 BGP 对等体的 IP 地址。
可以通过执行命令和命令选项并在 中附加 | display xml rpc,在 CLI 中显示命令及其选项的 Junos XML RPC 标记。
user@host> show interfaces t3-5/1/0:0 | display xml rpc
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/16.1R1/junos">
<rpc>
<get-interface-information>
<interface-name>t3-5/1/0:0</interface-name>
</get-interface-information>
</rpc>
<cli>
<banner></banner>
</cli>
</rpc-reply>
固定格式命令选项的映射
某些 CLI 命令包含具有固定形式的选项(如和 brief detail 字符串),用于指定要包含在输出中的详细信息量。Junos XML API 通常将此类选项映射到名称与选项名称匹配的空标记。
以下示例显示了命令的 Junos XML 标记元素,该命令 show isis adjacency 有一个固定格式选项,名为 detail:
要在 CLI 中查看标签,请执行以下作:
user@host> show isis adjacency detail | display xml rpc
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/16.1R1/junos">
<rpc>
<get-isis-adjacency-information>
<detail/>
</get-isis-adjacency-information>
</rpc>
<cli>
<banner></banner>
</cli>
</rpc-reply>
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。