You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python3 NCClient启用NACM时遭遇unknown object错误求助

修复ncclient启用NACM时的"unknown object"错误

问题出在你编辑配置时用错了YANG容器节点名称:

  • 你在edit_config的XML里使用了<ietf-netconf-acm>作为顶层容器
  • 但从设备返回的get_config结果可以看到,实际对应的容器节点是<nacm>

YANG模型ietf-netconf-acm的顶层容器名称就是nacm,而非模块名本身,这是你出错的核心原因。

修正后的代码

# 修正XML配置,把ietf-netconf-acm替换为nacm
nacm_config = """<config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <nacm xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-acm">
        <enable-nacm>true</enable-nacm>
    </nacm>
</config>"""

from ncclient import manager
m = manager.connect(host='192.168.40.100', port=830, username='root', password='password', hostkey_verify=False)
# 执行编辑配置
m.edit_config(target='running', config=nacm_config)

# 验证配置是否生效
nacm_reply = m.get_config(source='running', filter=('subtree', '<nacm xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-acm"/>'))
print(nacm_reply)

补充说明

  • 可以通过获取设备的YANG模型信息(比如用m.get_schema('ietf-netconf-acm'))来确认节点结构,避免类似节点名称错误
  • 部分设备可能需要先确认ietf-netconf-acm模块已被加载,不过从你能获取到NACM配置来看,模块已经正常加载

内容的提问来源于stack exchange,提问作者Ulysses

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 14:43:26