python 中的 snmpset

发布于 2024-12-20 07:45:41 字数 443 浏览 0 评论 0原文

我正在使用 python 向 snmp 代理发送 snmpset 消息。我有正确的 OID,因为我可以使用它通过 snmpget 获取数据。但是,它不会设置数据。我以十六进制格式发送八位字节(两个十六进制值),用冒号分隔。我可能必须在它周围加上撇号,对吧?这是我发送的行的示例

foo = os.popen("snmpset -v 2c -c 私有 192.1.55.222 .1.2.6.5.4.1.24022.4.27.1.6.4.4 x 00:00:04:cf:00:00:00:00:00:00")

如您所见,我正在发送类型为 x 的八位字节字符串 ?

任何人都可以猜测我应该如何传递 的设定值吗 “00:00:04:cf:00:00:00:00:00:00”我知道设置值的长度和类型正确,因为我在 MIB 浏览器中使用了它。

I am using the python to send an snmpset message to an snmp agent. I have the correct OID as I can use it to get data with snmpget. However, it will not set the data. I am sending octets in hex format (two hex values) separated by a colon. I might have to put apostrophes around it, right? Here is the example of the line I am sending

foo = os.popen("snmpset -v 2c -c private 192.1.55.222
.1.2.6.5.4.1.24022.4.27.1.6.4.4 x 00:00:04:cf:00:00:00:00:00:00")

as you can see, I am sending an Octet string with type x.

Can anyone hazard a guess as to how I should pass in the set value of "00:00:04:cf:00:00:00:00:00:00". I know the setvalue is of the right length and type because I have used it in a MIB browser.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

三月梨花 2024-12-27 07:45:41

有几件事:

1)您可以使用本机 python 接口,而不是调用系统命令。事实上有多种选择,包括 pysnmp (用 python 完成)和 Net-SNMP 的 python 模块(用 C 完成)< /a>.

2) Net-SNMP snmpset 命令需要直接的十六进制代码,其中不带任何 :s。因此,如果删除 :s,您可能会发现它会起作用。

A couple of things:

1) there is a native python interface you could use instead of calling a system command. There are in fact multiple choices, including pysnmp (done in python) and Net-SNMP's python module (done in C).

2) The Net-SNMP snmpset command expects straight hex code without any :s in it. So if you remove the :s you may find it'll work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文