问题标签 [snmp4j]

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 回答
6023 浏览

snmp - 如何使用脚本发送 SNMP 陷阱

当满足某些条件时(例如,当内存使用或磁盘使用率超过 80% 时),我必须使用脚本(例如 perl 或其他)向我的显示器发送 SNMP 陷阱。我从不写脚本,所以我不知道该怎么做。

这个小脚本将允许我测试我的 java 程序,该程序在给定端口上捕获一些陷阱。

0 投票
1 回答
964 浏览

networking - 如何使用 SNMP 检查端口是否启动或关闭

我开发了一个发现网络拓扑的应用程序,并使用 java 和 SNMP4j 以编程方式绘制它我向设备发送 CDP 和 LLDP 请求并分析其结果。但是有些设备不支持 CDP 或 LLDP(如接入点),因此我无法发现它。我必须将其显示为未知设备。感谢 CDP 和 LLDP,我知道哪个设备在哪个端口上。要了解未知设备在哪个端口上,我需要一个 oid 来使用 SNMP 或其他方法了解交换机的上下端口。

我使用 SNMP4J

0 投票
1 回答
164 浏览

log4j - 当 snmp4j 在 log4j 中配置 BasicConfigurator 时 Activemq 中的 Stackoverflow

这是一个非常奇怪的问题。我正在尝试将 snmp4j 从 1.10.1 升级到最新版本(2.2.5),现在我从 ActiveMQ(版本 5.9.1)中收到 stackoverflowerror。我有一个奇怪的解决方法,但如果有人能更清楚地了解这个问题,那将会很有趣。

当 snmp4j 加载 SnmpRequest 类并执行此静态块时,会发生 stackoverflow:

BasicConfigurator.configure()调用时 ActiveMQ 崩溃。我的解决方法是在启动时(在 ActiveMQ 初始化之前)构造(加载)一个 SnmpRequest 对象。在 snmp4j 版本 1.10.1 中,SnmpRequest 类有一个不同的静态块,没有configure()调用。

下面是 stackoverflowerror 的跟踪:

我相信这将是标准错误,这都是一条大线。

0 投票
1 回答
1106 浏览

python - 在java中创建json并在python中解析?

我正在使用 snmp4j 进行 SNMP Walk 结果需要发送到客户端以在 python 中解码以进行进一步分析。我是 json 新手,需要帮助了解将 java 数据类型转换为 json 的最佳方法,以便可以在 python 中轻松解码。我不确定它是否可以在正确的字典或列表中解码,但这样做的任何帮助都会很有用。目前我正在使用 gson 将以下共振转换为 json

以下是我执行 json.loads 时的结果

请帮助理解更好的方式来编码成 json 以便于简单和可用的 python 解码。这里需要java序列化吗?我不确定这意味着什么,但仍然想知道我的问题是否清楚,任何帮助至少为我指出正确的资源都会有很大帮助。

0 投票
1 回答
667 浏览

java - ifInOctets 和 ifOutOctets 返回 noSuchInstance

我正在编写一个从多个服务器检索一些信息的 java 代码。一切正常,除了 ifInOctets 和 ifOutOctets 返回“noSuchInstance”而不是它们的值。我可以使用 iReasoning MIB 浏览器检索同一服务器的 ifInOctets 和 ifOutOctets。

那么关于可能是什么问题的任何想法?

0 投票
2 回答
1087 浏览

snmp - 向 snmp 代理注册 OID

我正在尝试使用 snmp4j 模拟 SNMP 代理。我正在尝试向代理注册 MO。下面是代码片段:

在启动代理时,我收到 DuplicateRegistrationException。请指导我如何注册oid。请提供方向。

0 投票
1 回答
519 浏览

snmp - 如何从 SNMP 流中获取变量的单位?

我是 snmp4j 的新手。我使用 [1] 中的示例代码从 SNMP 流中提取一些有意义的信息。

在示例代码中,变量的 oid 和 value 被提取出来,但是 value 没有它的单位。例如

,oid 1.3.6.1.4.1.2021.4.6.0 (SNMP-MIB::memAvailReal.0) 给出的值 13385068 没有其单位 KB。有没有办法用 snmp4j 中的单位获取值?

有人可以看看这个吗?

[1] https://gist.github.com/akirad/5597203

0 投票
0 回答
882 浏览

snmp - SNMP4J 代理和 Net-SNMP “客户端”

我还在学习 SNMP,所以请温柔一点。

我用 snmp4j 做了一个代理,它似乎正在工作,我有一个标量应该记录自代理启动以来已经过去了多少时间。

我只需要做代理,然后我想用 net-snmp 看看标量的值。

问题是,当我启动代理时,我将标量 SystemUpTime 设置为 0,然后每当有人尝试使用 net-snmp 检查它时,我都会尝试更新 SystemUpTime,该值不会改变。

每次尝试访问它时,如何让我的代理更新 SystemUpTime?我有一个 MOScalar getSystemUpTime 方法,因为它会在返回之前更新 SystemUpTime,我认为它可以完成这项工作,但它不起作用。

你们有什么建议?

编辑(我的代理代码,我取消了一些强制方法来缩短这个东西)

0 投票
1 回答
558 浏览

java - 使用 snmp 协议的集中式日志文件


我想知道SNMP协议是否可以帮助我开发 Java 应用程序来集中本地网络的日志文件。我不想监控网络设备,我只想集中日志文件并分析主题。

0 投票
2 回答
4474 浏览

java - 消息处理模型 3 返回错误:未知安全名称

为单个设备运行 get/ getNextMessage processing model 3 returned error: Unknown security name命令时出现错误。我每 2 秒敲击一次设备。为了有更好的性能,如果我想得到不同的表。我创建线程并从我的应用程序并行访问每个线程。当我以单线程模式访问设备时,所有请求都可以正常工作。但是,当我在多线程模式下运行它时,我会间歇性地遇到上述错误(10 个请求中 2 个失败)。这是堆栈跟踪。

根据此处给出的链接,我使用以下安全模型:

另一个选项 noAuthNopriv 对我来说不是一个选项,我需要在 authpriv 中运行它。有人可以指出我正确的方向。

我相信这是一些 snmp 会话或 engineId 的问题。

************************编辑**********************

经过数周的调查,我终于发现我创建 USM 对象的方式

我为每个请求创建这个对象并添加到 securitymodel 中,从而重新创建 UserTable 和 usertime 表。我通过使 USM 成为单例并阻止重新创建 USM 表来解决此问题。但是我最终遇到了新问题,现在我遇到了错误

经过一番调查,我发现 snmp4j 没有在 UserTimeTable 中更新它自己的引擎时间和设备引擎时间。


除了这个问题,我还有几个查询。

  1. 如果我让 USM 成为一个单独的 USM 表,那么我的应用程序将拥有它的生命。如何清除此表(我可能有数万台设备,最终可能导致内存不足)。在什么基础上我可以清除这些用户?

  2. 如何让 SNMP4J 明确要求引擎启动和引擎时间

  3. 如果设备具有相同的用户名和安全名称但不同的 Authphrase 和隐私短语以及(可能相同的 engineId),SNMP4J 如何区分设备提前致谢。