1

我是 SNMP 新手,需要开发一个 Windows 服务,该服务将为所有网络发现设备 (SNMP),然后需要从发现的设备中获取信息。

我可以做的设备发现,虽然我相信有些设备没有被检测到,但现在的问题是检索设备信息。

有人有什么建议吗?

我的发现代码:

    Discoverer _discoverer = new Discoverer();
    _discoverer.AgentFound += Discoverer_AgentFound;

    Console.WriteLine("v1 discovery");
    _discoverer.Discover(VersionCode.V1, new IPEndPoint(IPAddress.Broadcast, 161), new OctetString("public"), 6000);

    Console.WriteLine("v2 discovery");
    _discoverer.Discover(VersionCode.V2, new IPEndPoint(IPAddress.Broadcast, 161), new OctetString("public"), 6000);

    Console.WriteLine("v3 discovery");
    _discoverer.Discover(VersionCode.V3, new IPEndPoint(IPAddress.Broadcast, 161), null, 6000);
4

1 回答 1

0

SNMP RFC 文档没有定义使用 SNMP 发现设备的标准方法。因此,Discoverer#SNMP 类使用一种通用方法来检测设备,

https://sharpsnmplib.codeplex.com/wikipage?title=SNMP%20Device%20Discovery

出于安全考虑,管理员可能会通过轻松更改配置来隐藏设备。一般来说,您应该手动添加每个设备。

于 2014-02-01T13:06:15.063 回答