问题标签 [ietf-netconf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 我们如何使用 pyang 或任何其他 python 库将增强的 yang 文件转换为 python 类
我在设备上几乎没有 yang 文件,其中包括 ietf 定义的接口 yang 文件 (ietf-interfaces.yang) 和供应商特定的增强 yang 文件 (eci-interfaces-aug.yang) 当我使用 pyang 为增强 yang 文件生成 python 类时它导入了ietf-interface yang文件,我看到了带有eci-interfaces-aug类的python文件,但它内部没有任何定义或任何要访问的变量。
谁能告诉我如何将增强/偏离的 yang 文件转换为 python 类,以便为 netconf 操作生成 xml
ietf-netmod-yang - 如果 'config false' YANG 则添加数据
如果配置语句为假,我可以发送 POST(不是 PUT 或 PATCH)命令吗?如何?
是否可以在 netconf 或 YANG 中将叶子定义为只读?(发布后)
java - 使用 Opendaylight 通过 NETCONF 检索列表时出现“XML 输入中的命名空间重复”错误
我使用 Opendaylight(版本 0.10.1)作为 NETCONF 客户端向 Netopeer2 服务器发送请求。
My YANG 模型是一个第三方模型,由多个模块组成,其中包含多个列表元素等属性。
这将转换为看起来像这样(简化)的 XML 请求和响应对:
要求:
回复:
但是,这样的请求会导致“Master is down”错误,我曾尝试使用 Karaf 日志文件进行调查。我将问题追踪到akka.pattern.AskTimeoutException
超时,这似乎是由 XML 响应的解析错误引起的:
真的是因为名单吗?XML 符合RFC 7950:
7.8.5。XML 编码规则
列表被编码为一系列 XML 元素,列表中的每个条目都有一个元素。每个元素的本地名称是列表的标识符,其名称空间是模块的 XML 名称空间(参见第 7.1.3 节)。整个列表周围没有 XML 元素。
任何建议将不胜感激。谢谢!
config - 在 YANG 中编辑 'config false' 叶
如何更改“config false”叶子并更新服务器中的值,以便当客户端发出 get-config 命令时,他将获得更新的值?
cisco - 我需要从 cisco 设备中获取一些信息。它是 cisco-ios-xe 设备
我有一个 CISCO 设备。设备配置了 WebUI。哪个有很多细节?但我无法从那里获得以下详细信息。
- CPU 负载
- 温度
- 设备详细信息。
- 内存使用
- 警报
我已经尝试过很多次来获得上面定义的值。但无法得到任何东西,请帮助。
ietf-netmod-yang - 为 netconf 编辑配置请求创建原子进程
我正在创建一个自定义系统,当用户提交 netconfedit-config
时,它将在我的系统中启动一组操作,这些操作将自动更改我们系统的配置,然后向用户提交成功或失败的通知。
把它想象成一个大的 SQL 事务,最后要么提交要么回滚。
所以,步骤
- 用户提交一个
edit-config
- 系统接受配置并努力实现此配置
- 如果配置成功,则通过竖起大拇指的响应发送(不确定执行此操作的正式方式)
- 如果配置失败,则通过不满意的响应发送(我必须确保配置在内部回滚)
- 所有这些都是原子完成的。因此,如果用户连续提交两个配置,它们不会相互冲突。
我们实现这一点的工作想法(可能不是最好的想法)是通过接受 来解决这个问题edit-config
,然后在 sysrepo 中,我们将使用成功或失败标志编辑部分叶子,它们将与初始变化。我们希望这将使一切保持原子性;通过在会话之外进行编辑,多个配置更改可能会相互冲突。
我们不确定使用纯 netconf 或直接利用 sysrepo 来解决这个问题。我们注意到所有这些为 sysrepo 制作的插件/绑定,并认为这些可以直接用于与我们的数据存储区通信。
但话虽如此,我们的工作想法很可能不是最佳实践方法。实现这一目标的最佳方法是什么?
我们的系统是:
而我们的yang文件是
目前我们可以:
- 对 netoperer 服务器执行编辑配置
- 我们可以在 sysrepo 数据存储中看到新的配置寄存器
- 我们可以通过 sysrepo 的 API 捕获 sysrepo 注册数据的时刻
但是我们遇到了问题
- 在更新会话期间以原子方式编辑数据存储(由于锁定,这是正常的。实际上,如果在更新会话期间无法编辑,那很好,也没有必要。主要目标是下一个项目符号)
- 以原子方式响应新的编辑配置并响应最终用户
我们对 netconf 和 yang 都有些陌生,所以我确信有一些方法可以通过 netopeer 会话或 sysrepo 来利用notification
api 或event
api,只是我们还不够了解。
如果有任何示例或实施建议可以为此创建原子事务,那将非常有用。
ietf-netmod-yang - yang中的叶子名称和类型名称可以相同
下面的例子是正确的 yang 陈述与否?它对 pyang 有效,但 JNC 无法处理
请建议
python - 无法通过 Python ncclient 访问 Yang 功能
我有一个带有 Cisco XE 版本 16.8.1a 的 Cisco CSRv1000。
我启用了 netconf-yang,当我运行命令时ssh -2 -s admin@172.30.43.115 netconf
,它会在 CLI 上显示 YANG。
但是,如果我在 python 上运行以下代码,则会出现错误ncclient.transport.errors.SSHError: Could not open socket to 172.30.43.115:830
我的代码:
另外,请在路由器上找到我的节目:
有什么我做错了吗?如果是这样,有人可以帮我吗?
opendaylight - 在 Opendaylight 中修改配置
我需要在我的 Opendaylight(0.11.x 钠)系统中修改我的 Openflow 配置。我遵循帮助指南的文档
- 创建新配置
- 删除配置
- 替换配置
- 但我没有看到有关如何修改(或合并)配置的示例或说明。
顶部段落引用了修改配置,但实际上并未显示示例。为了清楚起见,我所说的修改是指合并操作。即,就netconf edit-config RFC-6241而言,我只想修改配置的一些叶子,但保留旧叶子。
不幸的是,我在 openflow 文档中看到的选项只是创建、删除和替换。我们需要弄清楚如何进行合并。
在进行一些研究时,似乎有REST PATCH
命令功能,但是我无法让 Opendaylight 使用它。这是我正在尝试的:
但我得到的回应是:406 Not Acceptable
没有别的……没有<error...
rpc-response 或任何东西。我还在 DEBUG 和 TRACE 模式下研究日志文件,无法获得任何关于出现问题的提示。
我也尝试像这样粘贴nc:operation='merge'
到每个元素中......
但这也会导致相同的406 Not Acceptable
响应。
目标:如何在 OpenDaylight/Openflow 中正确合并/修改配置
json - yang模型ietf-routing的使用
我正在尝试根据这些 yang 模块添加配置数据:
https://github.com/mbj4668/pyang/blob/master/modules/ietf/ietf-routing.yang
https://github.com/mbj4668/pyang/blob/master/modules/ietf/ietf-ipv4-unicast-routing.yang
sysrepocfg error: libyang: Unknown element "next-hop-list"
尝试使用"next-hop-list"
以下数据时出现错误。
无法找出错误,有什么帮助吗?
我可以使用"simple-next-hop"
以下数据,效果很好。