问题标签 [net-snmp]

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 投票
1 回答
410 浏览

net-snmp - 如何使用 OpenVMS 设置 NET-SNMP?

我在开始安装 net-snmp 时遇到了麻烦。到目前为止,我已经在我的 Windows XP 机器上安装了 net-snmp 版本 5.6.1.1 的二进制文件,并且我正在尝试在 OpenVMS 机器上安装 net-snmp,以使其作为我的客户端和 Windows 机器作为我的主机。

我该如何安装这个?(我在这方面完全是新手,所以我需要我能得到的所有帮助……net-snmp wiki 似乎没有回答我的问题,除非我看错了。:/)

非常感谢你。

0 投票
2 回答
6097 浏览

perl - SNMP v3 with NET::SNMP working, but snmpwalk/snmpget not?

I have the following (working) perl script:

Now I wanted to use snmpwalk or snmpget with the same keys. For that, I created a snmp.conf file in .snmp of my home directory with the following content:

As I see it, I use the same credentials in the script and for snmpget. Why do I get snmpget: Authentication failure (incorrect password, community or key) ?

0 投票
1 回答
487 浏览

snmp - 企业标识符下的节点的 SNMP MIB 结构约定

我开发了一个 Linux/Umbutu 程序,该程序运行在基于 P 的嵌入式设备上。我希望那段代码能够发送和接收整个产品的 SNMP 数据。因此,我知道公司级别的 OID 1.3.6.1.4.1.34843,并且我进一步知道我们销售的两个支持 SNMP 的产品是 1.3.6.1.4.1.34843.1 和 1.3.6.1.4.1.34843.2。很确定我的将是 0.3。

问题是,这一点以下的节点是否有已知的结构/约定?我读到的似乎暗示我可以使用我想要的任何结构。...34843.1.0 会存在吗?它是一个节点来获取(获取)同级节点的列表或最大计数吗?...34843.1.0.0 会存在吗?这有什么意义吗?开发前两个 MIB 的人暂时不在城里,我真的不能问他,我想确保当他给我答案时我能理解他的答案。

是否有描述所需/建议组织的文件?可能是一些 RFC,对吧。那么,是否存在人类使用的语言的文件?

提前致谢。

0 投票
1 回答
325 浏览

snmp - 从我的程序中获取数据到 snmpd

我想我可能错过了显而易见的事情,但我迷失了一个好的答案。

我正在开发一个独立程序,它将在一块硬件内的 Linux(Ubuntu?)嵌入式 PC 上运行。我希望它成为 SNMP 与之交谈的“事物”。好吧,除了在我自己的 SNMD“守护程序”代码中编译和说服 Linux 让普通用户可以访问端口 161 之外,我想我会选择 Net-SNMP 的 snmpd。我愿意接受有关使用更好产品的建议。请提供 LGPL、BSD、MIT、许可证。

我在 MIB 上单独工作并分配 OID 等。我知道我想要设置和获取哪些变量等。

我已经阅读并重新阅读了有关制作 SNMP/snmpd 代理和/或子代理的内容。据我所知,它们都被编译成 snmp 或作为共享库链接到它。正确的?

那么,如何让该代理与在单独的一般用户会话中运行的单独程序交谈?有没有直接使用的技术?D-总线?彭()?命名管道?共享内存?临时文件?UDP端口?更好的东西?还是我真的想把我的程序变成.SO 并让snmpd 启动它?我假设那时我会告诉 snmpd 在哪里调用我来获取/设置变量。正确的?

谢谢!

0 投票
3 回答
12930 浏览

c - SNMPd:无法打开 /proc/bus/pci

我使用 ELDK-3.1 将 NET-SNMP 5.7.1 从源代码交叉编译到 PowerPC。当我尝试snmpd在嵌入式板上加载守护程序时,我看到以下消息:

当然我的PPC板没有PCI,我想知道netsnmp为什么要找它。

在不止一个地方,我看到了同样的消息(sourceforgemail-archivegoogle-groups),但 ir 根本没有答案。另一个变体,在 ( archlinuxarm )处有一些但无用的响应。

有人可以帮我吗?

0 投票
1 回答
2655 浏览

snmp - NETSNMP 在“SNMP Not In Time Window”错误后不更新 EngineTime,如何手动重置内部 NETSNMP SSL 结构?

我使用 NETSNMP 库通过 SNMPv3 和身份验证从路由器请求数据。如果路由器被重置,则内部 EngineTime 被重置,NETSNMP 库无法识别。这会导致路由器在后续调用中引发身份验证失败。

是否有任何对 NETSNMP 的 api 调用来手动重置内部结构以便发出新的请求?

我将每个调用都包含在 snmp_sess_open/close 中,因此没有打开的会话。

0 投票
2 回答
1424 浏览

c - 文件描述符泄漏导致来自 net-snmp 的错误消息泛滥。听起来有点熟?

我遇到了一个奇怪的问题,来自 snmplib 的 snmp_synch_response() 的大量消息在大约三个小时内设法填满了 60GB 硬盘。这些消息都是“使用 snmp_sess_select_info2() 处理大型文件描述符”,有时每行重复一百多次。我仍在与客户合作,以​​找出如何在内部重现此问题,但我想我会在这里问一下,以防这是一个老问题,或者至少以某种方式被其他人看到。

这是基本的系统信息:8.1-RELEASE-p2 FreeBSD i386。NET-SNMP 版本是 5.5。

下面是我的代码关键部分的简化片段。代码首先创建一个包含已初始化但未打开的会话的任务列表。在其他地方,每个任务,最多一个小的限制(在这种情况下为 64 个),都被分叉,并且子进程使用 snmp_open() 打开 SNMP 会话套接字,依此类推。我已经搜索了 set()、get() 和 getnext() 中的每一个,并且确信它们都适当地调用了 snmp_close()——没有任何早期返回或其他跳过这些调用——所以我不认为我明确泄漏了任何套接字,但描述符必须由于某种原因而存在。这会为任何人敲响警钟吗?

0 投票
1 回答
17969 浏览

c++ - 寻找使用 AgentX 实现 SNMP 表的示例代码

我编写了一个 AgentX 应用程序(Linux、gcc、g++),它可以很好地发送回缩放器。这是我现在正在做的事情:

handle_foo1(...)调用这样的函数snmp_set_var_typed_value(...)来返回缓存在应用程序内的全局 C 结构中的值。

我现在要做的是修改此代码以支持 SNMP 表。表的内容在应用程序中作为 STL 容器存储/缓存。这是一个比较简单的 SNMP 表,行连续,所有列由 Integer32、Gauge32、InetAddress 和 TruthValue 等类型组成。问题是我在 net-snmp 网站上没有看到很好的代码示例,只有很多 doxygen 页面。

我的问题:

我应该看什么 API?这些是正确的电话吗:

...或者我应该使用更简单的东西吗?

0 投票
5 回答
8030 浏览

network-programming - 添加新的 mib 主代理

我按照net-snmp 网站上的说明将我自己的 MIB 支持添加到主代理。

这是我所做的:

  1. 我在 net-snmp/agent/mibgroup/ 文件夹中创建了我的支持 .c 和 .h 文件。
  2. 我将我的 MIB 文件复制到 /usr/local/share/snmp/mibs/ 文件夹。
  3. 我跑了 "./configure --with-mib-modules="myMib" "
  4. 我跑了“make”和“make install”
  5. 我用“snmpd -f -Le -d -c snmpd.conf &”启动了 snmpd
  6. 我可以通过运行 snmpdtranslte 命令查看我的 MIB 结构。但是,当我尝试使用 snmpget -v2c -c public "MY-MIB-FILE::myVariable" 时,我不断收到“*** = 此 OID 的此代理上没有此类对象可用”。

我完全按照教程所说的做了,我可以snmpgetsnmpset示例上NET-SNMP-TUTORIAL-MIB::nstAgentModuleObject运行。

请帮助我了解我在这里错过了什么。

0 投票
3 回答
2439 浏览

python - 错误的 net-snmp 错误处理

是否可以在 python 中使用 net-snmp 捕获错误(例如由于超时)?

我正在使用这段代码:

由于超时时间短,我得到不完整的结果 - 这很好(注意超时以微秒为单位)。不好的是我没有收到错误指示:

我找错地方了吗?

这就是我正在使用的:(作为 Debian 软件包安装)

我会很感激一些帮助,甚至是关于采用哪个 SNMP 库的建议(如果 Net-SNMP 不能正确处理错误)。