问题标签 [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.

0 投票
0 回答
170 浏览

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

0 投票
1 回答
403 浏览

ietf-netmod-yang - 如果 'config false' YANG 则添加数据

如果配置语句为假,我可以发送 POST(不是 PUT 或 PATCH)命令吗?如何?

是否可以在 netconf 或 YANG 中将叶子定义为只读?(发布后)

0 投票
3 回答
223 浏览

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 元素。

任何建议将不胜感激。谢谢!

0 投票
1 回答
184 浏览

config - 在 YANG 中编辑 'config false' 叶

如何更改“config false”叶子并更新服务器中的值,以便当客户端发出 get-config 命令时,他将获得更新的值?

0 投票
1 回答
772 浏览

cisco - 我需要从 cisco 设备中获取一些信息。它是 cisco-ios-xe 设备

我有一个 CISCO 设备。设备配置了 WebUI。哪个有很多细节?但我无法从那里获得以下详细信息。

  1. CPU 负载
  2. 温度
  3. 设备详细信息。
  4. 内存使用
  5. 警报

我已经尝试过很多次来获得上面定义的值。但无法得到任何东西,请帮助。

0 投票
1 回答
205 浏览

ietf-netmod-yang - 为 netconf 编辑配置请求创建原子进程

我正在创建一个自定义系统,当用户提交 netconfedit-config时,它将在我的系统中启动一组操作,这些操作将自动更改我们系统的配置,然后向用户提交成功或失败的通知。

把它想象成一个大的 SQL 事务,最后要么提交要么回滚。

所以,步骤

  1. 用户提交一个edit-config
  2. 系统接受配置并努力实现此配置
  3. 如果配置成功,则通过竖起大拇指的响应发送(不确定执行此操作的正式方式)
  4. 如果配置失败,则通过不满意的响应发送(我必须确保配置在内部回滚)
  5. 所有这些都是原子完成的。因此,如果用户连续提交两个配置,它们不会相互冲突。

我们实现这一点的工作想法(可能不是最好的想法)是通过接受 来解决这个问题edit-config,然后在 sysrepo 中,我们将使用成功或失败标志编辑部分叶子,它们将与初始变化。我们希望这将使一切保持原子性;通过在会话之外进行编辑,多个配置更改可能会相互冲突。

我们不确定使用纯 netconf 或直接利用 sysrepo 来解决这个问题。我们注意到所有这些为 sysrepo 制作的插件/绑定,并认为这些可以直接用于与我们的数据存储区通信。

但话虽如此,我们的工作想法很可能不是最佳实践方法。实现这一目标的最佳方法是什么?

我们的系统是:

而我们的yang文件是

目前我们可以:

  • 对 netoperer 服务器执行编辑配置
  • 我们可以在 sysrepo 数据存储中看到新的配置寄存器
  • 我们可以通过 sysrepo 的 API 捕获 sysrepo 注册数据的时刻

但是我们遇到了问题

  • 在更新会话期间以原子方式编辑数据存储(由于锁定,这是正常的。实际上,如果在更新会话期间无法编辑,那很好,也没有必要。主要目标是下一个项目符号)
  • 以原子方式响应新的编辑配置并响应最终用户

我们对 netconf 和 yang 都有些陌生,所以我确信有一些方法可以通过 netopeer 会话或 sysrepo 来利用notificationapi 或eventapi,只是我们还不够了解。

如果有任何示例或实施建议可以为此创建原子事务,那将非常有用。

0 投票
1 回答
221 浏览

ietf-netmod-yang - yang中的叶子名称和类型名称可以相同

下面的例子是正确的 yang 陈述与否?它对 pyang 有效,但 JNC 无法处理

请建议

0 投票
1 回答
419 浏览

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

我的代码:

另外,请在路由器上找到我的节目:

有什么我做错了吗?如果是这样,有人可以帮我吗?

0 投票
4 回答
402 浏览

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 中正确合并/修改配置

0 投票
1 回答
122 浏览

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"以下数据,效果很好。