• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

16-可编程网络管理命令参考

目录

03-NETCONF命令

本章节下载 03-NETCONF命令  (269.46 KB)

03-NETCONF命令


1 NETCONF

1.1  NETCONF配置命令

1.1.1  display netconf service

display netconf service命令用来显示NETCONF服务的全局统计信息。

【命令】

display netconf service

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【举例】

# 显示NETCONF服务的全局统计信息。

<Sysname> display netconf service

NETCONF over SOAP over HTTP: Disabled (port 80)

NETCONF over SOAP over HTTPS: Disabled (port 832)

NETCONF over SSH: Disabled (port 830)

NETCONF over Telnet: Enabled

NETCONF over Console: Enabled

SOAP timeout: 10 minutes     Agent timeout: 0 minutes

Active Sessions: 0

Service statistics:

  NETCONF start time: 2019-11-06T09:15:17

  Output notifications: 0

  Output RPC errors: 0

  Dropped sessions: 0

  Sessions: 0

  Received bad hellos: 0

  Received RPCs: 0

  Received bad RPCs: 0

表1-1 display netconf service命令显示信息描述表

字段

描述

NETCONF over SOAP over HTTP

基于HTTP的SOAP的NETCONF服务状态、以及监听端口号:

·     Enabled表示该服务处于开启状态

·     Disabled表示该服务处于关闭状态

NETCONF over SOAP over HTTPS

基于HTTPS的SOAP的NETCONF服务状态、以及监听端口号:

·     Enabled表示该服务处于开启状态

·     Disabled表示该服务处于关闭状态

NETCONF over SSH

基于SSH的NETCONF服务状态、以及监听端口号:

·     Enabled表示该服务处于开启状态

·     Disabled表示该服务处于关闭状态

NETCONF over Telnet

基于Telnet的NETCONF服务状态:

·     Enabled表示该服务处于开启状态

·     Disabled表示该服务处于关闭状态

NETCONF over Console

基于Console的NETCONF服务状态:

·     Enabled表示该服务处于开启状态

·     Disabled表示该服务处于关闭状态

SOAP timeout

基于NETCONF over SOAP over HTTP/HTTPS的会话超时时间,单位为分钟

Agent timeout

基于NETCONF over SSH/Telnet/Console的会话超时时间,单位为分钟

Active sessions

当前活跃的NETCONF会话数量

Service statistics

NETCONF服务运行过程中的统计信息:

·     NETCONF start time表示NETCONF服务的开启时间

·     Output notifications表示设备输出的订阅日志数量

·     Output RPC errors表示设备输出的错误RPC请求数量

·     Dropped sessions表示因超时和异常断开而丢弃的会话的数量

·     Sessions表示设备建立的NETCONF会话数量

·     Received bad hellos表示设备接收的错误Hello信息数量

·     Received RPCs表示设备接收的RPC总数

·     Received bad RPCs表示设备接收的错误RPC总数

 

【相关命令】

·     reset netconf service statistics

1.1.2  display netconf session

display netconf session命令用来显示NETCONF会话的统计信息。

【命令】

display netconf session

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【举例】

# 显示NETCONF会话的统计信息。

<Sysname> display netconf session

Session ID: 1 Session type : SOAP

  Username : xj

  Login time : 2021-09-28T14:28:04

  Client IP address : 172.31.9.125

  Session statistics:

    Received RPCs    : 0           Received bad RPCs   : 0

    Output RPC errors: 0           Output notifications: 0

表1-2 display netconf session命令显示信息描述表

字段

描述

Session ID

当前NETCONF会话的ID

Session type

当前NETCONF会话类型:

·     SOAP表示基于NETCONF over SOAP over HTTP/HTTPS的会话

·     Agent表示基于NETCONF over SSH/Telnet/Console的会话

Username

与设备建立NETCONF会话时使用的用户名称

对于SOAP类型的NETCONF会话,此处显示为用户名;对于Agent类型的NETCONF会话:

·     配置为认证登录时,此处显示为用户名

·     配置为无认证登录时,此处显示为“-”

Login time

与设备建立NETCONF会话的时间

Client IP address

与设备建立NETCONF会话的客户端IP地址

如果使用Console与设备建立NETCONF会话,此处显示为“-”

Session statistics

当前NETCONF会话的统计信息:

·     Received RPCs表示包括设备接收到的NETCONF请求报文数量

·     Received bad RPCs表示设备接收到的无法处理的请求报文数量

·     Output RPC errors表示设备输出的RPC错误报文数量

·     Output notifications表示设备输出的NETCONF通知数量

 

【相关命令】

·     reset netconf session statistics

1.1.3  netconf capability specific-namespace

netconf capability specific-namespace命令用来配置设备使用专用命名空间。

undo netconf capability specific-namespace命令用来恢复缺省情况。

【命令】

netconf capability specific-namespace

undo netconf capability specific-namespace

【缺省情况】

NETCONF使用共用命名空间。

【视图】

系统视图

【缺省用户角色】

network-admin

【使用指导】

设备支持共用命名空间和专用命名空间,两种类型的命名空间互不兼容。客户端与设备必须使用相同的命名空间才能建立会话。缺省情况下,设备使用共用命名空间。如果客户端不支持共用命名空间,则需要配置本命令,让设备和客户端建立会话时使用专用命名空间。

配置该命令后,用户需要重新建立NETCONF会话,以使客户端和设备使用相同的命名空间。

【举例】

# 配置设备使用专用命名空间。

<Sysname> system-view

[Sysname] netconf capability specific-namespace

1.1.4  netconf edit-config full-replace enable

netconf edit-config full-replace enable命令用来开启edit-config:replace操作的全替换功能。

undo netconf edit-config full-replace enable命令用来关闭edit-config:replace操作的全替换功能。

【命令】

netconf edit-config full-replace enable

undo netconf edit-config full-replace enable

【缺省情况】

edit-config:replace操作的全替换功能处于关闭状态。

【视图】

系统视图

【缺省用户角色】

network-admin

【使用指导】

开启edit-config:replace操作的全替换功能后,执行edit-config:replace操作会把当前节点下指定的列和子表的配置替换为当前配置,该节点下未指定的列和子表全部恢复为缺省情况。

【举例】

# 开启edit-config:replace操作的全替换功能。

<Sysname> system-view

[Sysname] netconf edit-config full-replace enable

1.1.5  netconf idle-timeout

netconf idle-timeout命令用来配置NETCONF会话超时时间。

undo netconf idle-timeout命令用来恢复缺省情况。

【命令】

netconf { soap | agent } idle-timeout minute

undo netconf { soap | agent } idle-timeout

【缺省情况】

基于NETCONF over SOAP over HTTP和NETCONF over SOAP over HTTPS的会话超时时间为10分钟。

基于NETCONF over SSH、NETCONF over Telnet和NETCONF over Console的会话超时时间为0,即不超时。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

soap:用来配置基于NETCONF over SOAP over HTTP和NETCONF over SOAP over HTTPS的会话超时时间。

agent:用来配置基于NETCONF over SSH、NETCONF over Telnet和NETCONF over Console的会话超时时间。

minute:表示空闲超时时间,单位为分钟,取值范围为:

·     对于基于NETCONF over SOAP over HTTP和NETCONF over SOAP over HTTPS的会话,取值范围为1~999。

·     对于基于NETCONF over SSH、NETCONF over Telnet和NETCONF over Console的会话,取值范围为0~999,0表示不超时。

【使用指导】

用户通过Telnet、SSH、Console、或配置工具与设备建立NETCONF连接,如果在超时时间内,用户与设备无任何NETCONF报文交互,达到超时时间后,设备将断开与用户配置端的NETCONF连接。

【举例】

# 配置基于NETCONF over SOAP over HTTP和NETCONF over SOAP over HTTPS的会话超时时间为20分钟。

<Sysname> system-view

[Sysname] netconf soap idle-timeout 20

1.1.6  netconf log

netconf log命令用来配置NETCONF日志功能。

undo netconf log命令用来取消指定类型的NETCONF日志配置。

【命令】

netconf log source { all | { agent | soap } * } { protocol-operation { all | { action | config | get | session | set | syntax | others } * } | row-operation | verbose }

undo netconf log source { all | { agent | soap } * } { protocol-operation { all | { action | config | get | session | set | syntax | others } * } | row-operation | verbose }

【缺省情况】

NETCONF action和set类操作日志按行操作输出,其他NETCONF日志不输出。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

source:表示需要输出日志的NETCONF操作来源:

·     all表示输出所有来源的NETCONF日志。

·     agent表示输出源自Telnet、SSH、NETCONF over SSH、NETCONF over Console和NETCONF over Telnet类型的NETCONF日志。

·     soap表示输出源自SOAP over HTTP和SOAP over HTTPS类型的NETCONF日志。

protocol-operation表示按NETCONF操作类型输出日志:

·     all表示所有NETCONF操作类型。

·     action表示action操作。

·     config表示配置类的NETCONF操作,包括CLI、save、load、rollback、save-point、lock、unlock。

·     get表示获取数据的NETCONF操作,包括get、get-bulk、get-config、get-bulk-config、get-sessions。

·     session表示与会话相关的NETCONF操作,包括kill-session、close-session、hello。

·     set表示所有edit-config操作。

·     syntax表示包含xml和schema的格式错误的请求。

·     others表示除action、config、get、set、session、set、syntax外,其他类型的NETCONF操作。

row-operation:表示按NETCONF行操作输出日志。该参数仅支持action和set操作。

verbose表示输出NETCONF操作的详细日志信息。该参数仅对按操作类型输出日志方式生效:

·     对于请求类型的日志:当请求报文格式正确时,设备在简要日志后输出源报文的内容。

·     对于处理结果类型的日志:仅支持输出set的详细日志信息。即,当edit-config操作执行错误时输出详细错误信息。

【使用指导】

NETCONF日志功能支持按NETCONF操作类型(protocol-operation)输出日志和按NETCONF行操作(row-operation)输出日志:

·     配置按NETCONF操作类型输出日志时,用户每下发一次NETCONF操作,设备输出该NETCONF操作、以及操作结果的日志。例如用户下发NETCONF操作,创建ID为3~5的VLAN时,设备输出的日志如下:

%Mar 21 17:11:34:479 2019 Sysname XMLSOAP/6/XML_REQUEST: test from 192.168.100.198, session id 2,message-id 100, receive edit-config request.

%Mar 21 17:11:34:483 2019 Sysname XMLSOAP/6/EDIT-CONFIG: test from 192.168.100.198, session id 2,message-id 100, execute success.

·     配置按NETCONF行操作输出日志时,用户下发一次NETCONF操作后,设备输出该操作中每个请求行操作的日志。例如用户下发NETCONF操作,创建ID为3~5的VLAN时,设备输出的日志如下:

%Mar 31 17:50:02:608 2019 Sysname XMLSOAP/6/EDIT-CONFIG: User (test, 192.168.100.20, session ID 1), message ID=100, operation=create VLAN/VLANs (ID=3), result=Succeeded. No attributes.

%Mar 31 17:50:02:609 2019 Sysname XMLSOAP/6/EDIT-CONFIG: User (test, 192.168.100.20, session ID 1), message ID=100, operation=create VLAN/VLANs (ID=4), result=Succeeded. No attributes.

%Mar 31 17:50:02:611 2019 Sysname XMLSOAP/6/EDIT-CONFIG: User (test, 192.168.100.20, session ID 1), message ID=100, operation=create VLAN/VLANs (ID=5), result=Succeeded. No attributes.

设备先将NETCONF日志发送到信息中心,根据信息中心的输出规则将日志信息输出到不同方向。信息中心的相关配置请参见“设备管理配置指导”中的“信息中心”。

【举例】

# 配置设备输出源自agent的edit-config类型的操作日志。

<Sysname> system-view

[sysname] netconf log source agent protocol-operation set

1.1.7  netconf soap acl

netconf soap acl命令用来配置NETCONF over SOAP关联IPv4 ACL。

undo netconf soap acl命令用来恢复缺省情况。

【命令】

netconf soap { http | https } acl { ipv4-acl-number | name ipv4-acl-name }

undo netconf soap { http | https } acl

【缺省情况】

未配置NETCONF over SOAP关联IPv4 ACL,允许所有NETCONF客户端访问设备。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

ipv4-acl-number:IPv4 ACL的编号,取值范围为2000~2999。

http开启基于HTTP的NETCONF over SOAP关联IPv4 ACL。

https开启基于HTTPS的NETCONF over SOAP关联IPv4 ACL。

name ipv4-acl-name:指定IPv4 ACL的名称。ipv4-acl-name表示IPv4 ACL的名称,为1~63个字符的字符串,不区分大小写,必须以英文字母a~z或A~Z开头。为避免混淆,IPv4 ACL的名称不允许使用英文单词all。仅当指定名称的IPv4 ACL存在且为基本IPv4 ACL时生效。

【使用指导】

配置SOAP服务与IPv4 ACL关联后,只有IPv4 ACL允许通过的NETCONF客户端能够通过SOAP方式登录设备。不匹配IPv4 ACL或IPv4 ACL拒绝通过的NETCONF客户端将不能通过SOAP方式登录设备。

引用ACL时,需要注意:

·     若引用的ACL不存在,或者引用的ACL中没有配置规则,则表示允许所有NETCONF客户端访问设备。

·     在引用的ACL中,若某规则指定了vpn-instance参数,则表示该规则仅对VPN报文有效;若规则未指定vpn-instance参数,则表示该规则仅对公网报文有效。

多次执行netconf soap http acl命令,最后一次执行的命令生效。netconf soap https acl命令亦然。

【举例】

# 配置基于HTTP的NETCONF over SOAP功能与IPv4 ACL 2001关联,只允许10.10.0.0/16网段的客户端访问设备。

<Sysname> system-view

[Sysname] acl basic 2001

[Sysname-acl-ipv4-basic-2001] rule permit source 10.10.0.0 0.0.255.255

[Sysname-acl-ipv4-basic-2001] quit

[Sysname] netconf soap http acl 2001

1.1.8  netconf soap domain

netconf soap domain命令用来配置NETCONF用户的强制认证域。

undo netconf soap domain命令用来恢复缺省情况。

【命令】

netconf soap domain domain-name

undo netconf soap domain

【缺省情况】

未配置NETCONF用户的强制认证域。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

domain-name:ISP域名,为1~255个字符的字符串,不区分大小写。关于ISP域的详细介绍请参见“用户接入与认证配置指导”中的“AAA”。

【使用指导】

多次执行本命令,最后一次执行的命令生效。

NETCONF支持使用如下方式指定认证域:

·     通过netconf soap domain命令配置强制认证域。配置该命令后,所有用户都会使用强制认证域进行认证。

·     在SOAP请求的<UserName>中携带认证域信息。SOAP请求中携带的认证域仅对当前请求生效。通过netconf soap domain命令配置强制认证域后,SOAP请求中携带的认证域不生效。

【举例】

# 配置NETCONF用户的强制认证域为my-domain。

<Sysname> system-view

[Sysname] netconf soap domain my-domain

1.1.9  netconf soap dscp

netconf soap dscp命令用来配置设备发送的SOAP报文的DSCP优先级。

undo netconf soap dscp命令用来恢复缺省情况。

【命令】

netconf soap { http | https } dscp dscp-value

undo netconf soap { http | https } dscp

【缺省情况】

设备发送的SOAP报文的DSCP优先级为0。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

dscp-value:指定设备发送的基于HTTP的SOAP报文的DSCP优先级,取值范围为0~63。

http设备发送基于HTTP的SOAP报文的DSCP优先级。

https设备发送基于HTTPS的SOAP报文的DSCP优先级。

【举例】

# 配置设备发送的基于HTTP的SOAP报文的DSCP优先级为30。

<Sysname> system-view

[Sysname] netconf soap http dscp 30

1.1.10  netconf soap enable

netconf soap enable命令用来开启NETCONF over SOAP功能。

undo netconf soap enable命令用来关闭NETCONF over SOAP功能。

【命令】

netconf soap { http | https } enable

undo netconf soap { http | https } enable

【缺省情况】

NETCONF over SOAP处于关闭状态。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

http开启基于HTTP的NETCONF over SOAP功能。

https开启基于HTTPS的NETCONF over SOAP功能。

【使用指导】

配置该命令后,表示设备能够解析这样的HTTP/HTTPS报文,报文中的数据为SOAP封装过的NETCONF指令。

【举例】

# 开启基于HTTP的SOAP功能。

<Sysname> system-view

[Sysname] netconf soap http enable

1.1.11  netconf soap http port

netconf soap http port命令用来配置基于HTTP的NETCONF over SOAP功能使用的端口号。

undo netconf soap http port命令用来恢复缺省情况。

【命令】

netconf soap http port port-number

undo netconf soap http port

【缺省情况】

基于HTTP的NETCONF over SOAP功能使用的端口号为80。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

port-number:基于HTTP的NETCONF over SOAP功能使用的端口号,取值范围为1~65535。

【使用指导】

配置该命令后,原NETCONF over SOAP会话将失效,请通过配置工具重新建立NETCONF over SOAP会话。

【举例】

# 配置基于HTTP的NETCONF over SOAP功能使用的端口号为1000。

<Sysname> system-view

[Sysname] netconf soap http port 1000

1.1.12  netconf soap https ssl-server-policy

netconf soap https ssl-server-policy命令用来配置基于HTTPS的NETCONF over SOAP功能与SSL服务器端策略关联。

undo netconf soap https ssl-server-policy命令用来恢复缺省情况。

【命令】

netconf soap https ssl-server-policy policy-name

undo netconf soap https ssl-server-policy

【缺省情况】

基于HTTPS的NETCONF over SOAP功能未与SSL服务器端策略关联。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

policy-name:SSL服务器端策略名,为1~31个字符的字符串。

【使用指导】

配置本命令后,设备将使用SSL服务器端策略指定的加密套件等SSL参数建立NETCONF连接,以加强基于HTTPS的NETCONF over SOAP功能的安全性。有关SSL服务器端策略的配置,请参见“安全配置指导”中的“SSL”。

多次执行本命令,最后一次执行的命令生效。

基于HTTPS的NETCONF over SOAP功能处于开启状态时,必须先执行undo netconf soap https enable命令,才能配置本命令。

配置本命令后,需要执行netconf soap https enable命令,配置才会生效。

如果修改了关联的SSL服务器端策略,NETCONF客户端和设备新建立的HTTPS连接将会引用新的策略,已建立的HTTPS连接不会受到影响,依然引用旧的策略。

【举例】

# 配置基于HTTPS的NETCONF over SOAP功能关联的SSL服务器端策略为myssl。

<Sysname> system-view

[Sysname] netconf soap https ssl-server-policy myssl

【相关命令】

·     netconf soap enable

·     ssl server-policy(安全命令参考/SSL)

1.1.13  netconf ssh server enable

netconf ssh server enable命令用来开启NETCONF over SSH的接入方式。

undo netconf ssh server enable命令用来关闭NETCONF over SSH的接入方式。

【命令】

netconf ssh server enable

undo netconf ssh server enable

【缺省情况】

NETCONF over SSH的接入方式处于关闭状态。

【视图】

系统视图

【缺省用户角色】

network-admin

【使用指导】

用户配置该命令后,可以利用SSH客户端通过SSH子系统的方式接入设备的NETCONF系统,然后直接进入NETCONF配置模式,而不用手工输入XML命令。

配置该命令前必须在设备上把SSH连接终端的认证方式设置为scheme,支持NETCONF over SSH的客户端才能连接到NETCONF系统,目前只支持用urn:ietf:params:netconf:base:1.0(设备与终端共同支持的能力集)连接系统。

【举例】

# 开启NETCONF over SSH的接入方式。

<Sysname> system-view

[Sysname] netconf ssh server enable

1.1.14  netconf ssh server port

netconf ssh server port命令用来设置NETCONF over SSH接入方式的监听端口号。

undo netconf ssh server port命令用来恢复缺省情况。

【命令】

netconf ssh server port port-number

undo netconf ssh server port

【缺省情况】

NETCONF over SSH接入方式的监听端口为830。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

port-number:基于NETCONF over SSH的接入方式的监听端口,取值范围为1~65535。

【使用指导】

用户可以在必要时使用此命令来重新配置一个端口作为NETCONF子系统的监听端口,但由于SSH服务使用共享端口的方式来分配监听端口,为了正常使用,必须保证分配的端口不和其他使用的端口冲突。

【举例】

# 配置NETCONF over SSH接入方式的监听端口为800。

<sysname> system-view

[sysname] netconf ssh server port 800

1.1.15  reset netconf service statistics

reset netconf service statistics命令用来清除NETCONF服务的全局统计信息。

【命令】

reset netconf service statistics

【视图】

用户视图

【缺省用户角色】

network-admin

【举例】

# 清除NETCONF服务的全局统计信息。

<Sysname> reset netconf service statistics

【相关命令】

·     display netconf service

1.1.16  reset netconf session statistics

reset netconf session statistics命令用来清除NETCONF会话的统计信息。

【命令】

reset netconf session statistics

【视图】

用户视图

【缺省用户角色】

network-admin

【举例】

# 清除NETCONF会话的统计信息。

<Sysname> reset netconf session statistics

【相关命令】

·     display netconf session

1.1.17  xml

xml命令用来进入XML视图。

【命令】

xml

【视图】

用户视图

【缺省用户角色】

network-admin

network-operator

【使用指导】

进入XML视图后可以输入NETCONF指令来配置或者获取系统数据。用户登录时使用的角色不同,可执行的NETCONF操作也不同:

·     network-admin可执行全部操作。

·     network-operator可执行get、get-bulk、get-config、get-bulk-config、get-sessions、close-session操作。

进入XML视图后,用户需要严格按照NETCONF报文格式将报文拷贝、粘贴到XML视图中。在NETCONF配置过程中,请勿进行其他任何操作(例如手工输入NETCONF报文),否则可能导致NETCONF配置失败。

在XML视图下进行NETCONF配置时,NETCONF报文最后需要添加“]]>]]>”,否则设备无法识别。

进入XML视图后,设备将自动向客户端发送自身支持的NETCONF能力集,此时,客户端需要向设备发送自身支持的NETCONF能力集,完成能力交换后,用户即可使用客户端对设备进行配置。

用户输入的NETCONF指令必须符合XML语言格式要求和《NETCONF XML API手册》中的语法、语义要求。建议使用第三方软件来协助生成NETCONF指令,命令行手工输入方式通常用于研发和测试环境。

退出XML视图时需要使用相关的NETCONF指令,不能使用quit

在XML模式下终止任务的快捷键有重置缓存的功能,快捷键之前的内容都会被清除掉。如果在用户线/用户线类视图下使用escape-key命令配置了终止任务的快捷键(缺省为Ctrl+C),可能会影响XML视图下相关配置。例如:在用户线视图下配置了escape-key a,当NETCONF指令中含有字符‘a’时,其实只有NETCONF指令最后一个‘a’之后的内容能够得到处理;当NETCONF指令中不含有字符‘a’时,则对XML视图下的配置没有影响。

【举例】

# 进入XML视图。

<Sysname> xml

# 进行能力交换。

<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

  <capabilities>

    <capability>

            urn:ietf:params:netconf:base:1.0

    </capability>

  </capabilities>

</hello>]]>]]>

# 退出XML视图。

<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

  <close-session/>

</rpc>]]>]]>

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们