[编辑:我正在运行Python 2.7.3]
我是一名网络工程师,我一直在攻击ncclient(网站上的版本很旧,这是我一直在努力的版本),以使其与Brocade的NETCONF实现一起使用.为了让它与我们的Brocade设备一起使用,我必须进行一些调整,但是我不得不拆掉包并对源本身进行调整.这对我来说并不"干净",所以我决定尝试以"正确的方式"做到并覆盖包装中存在的一些东西*; 具体三件事:
到目前为止,我在一个文件中有这个代码brcd_ncclient.py
:
#!/usr/bin/env python
# hack on XML element creation and create a subclass to override HelloHandler's
# build() method to format the XML in a way that the brocades actually like
from ncclient.xml_ import *
from ncclient.transport.session import HelloHandler
from ncclient.operations.rpc import RPC, RaiseMode
from ncclient.operations import util
# register brocade namespace and create functions to create proper xml for
# hello/capabilities exchange
BROCADE_1_0 = "http://brocade.com/ns/netconf/config/netiron-config/"
register_namespace('brcd', …
Run Code Online (Sandbox Code Playgroud) 我能够使用opendaylight模拟器模拟netconf设备.在启动期间,我也提供了yang schemas路径.
但是,当我通过netconf登录设备并发送适用于yang架构的任何RPC请求时,设备没有响应.
虽然如果我的rpc请求中存在任何语法错误,模拟器设备会抛出错误,但它没有响应任何数据.
在opendaylight github页面中提到,对于"set"请求,默认情况下会有OK响应,但我没有看到任何请求的响应.
另外,我没有在运行bash会话的模拟器中看到任何错误日志.
什么是错误的任何想法?
YANG模型中的Operational和Config有什么区别?这是在操作和配置中支持 GET、PUT、POST 和 DELETE 接口的正确方法吗?