1

为发送 SNMP 陷阱提供的大多数示例都很简单,如下所示。

snmptrap -v 1 -c public host TRAP-TEST-MIB::demotraps localhost 6 17 '' \
    SNMPv2-MIB::sysLocation.0 s "Just here"

以任何 MIB 文件为例,它们包含许多复杂的对象组,例如,systemGroup 包含 sysLocation、sysName 等。

有人可以帮忙举出例子来展示如何发送包括此类对象组的 snmp 陷阱。在此再添加一个问题,SNMPTRAPD 是否支持国际化?

4

1 回答 1

3

将 SNMP 通知(陷阱或通知)定义为包含整个 OBJECT GROUP 甚至更糟糕的是整个 SNMP 表的方式是非常糟糕的做法。原因是您实际上并不需要所有这些变量。另一个原因是数据包/PDU 受到 MTU 大小的限制。因此,由于其大小,您可能无法在单个 UDP 数据包中发送数据。

正确的情况是只有很少的 varbind,您还可以启动一些轮询周期,以了解在收到此类陷阱时如果需要更多详细信息会发生什么。

SNMPTRAPD 和 NET-SNMP 库一般不支持国际化 (UNICODE)。该库仅限于 ASCII 字符集。

市场上有商业产品,包括NetDecision TrapVision和其他一些完全支持 UTF-8 国际化的产品。

于 2017-02-16T13:05:41.543 回答