使用SharpSNMP Lib发现网络

时间:2013-03-20 12:17:14

标签: network-programming snmp sharp-snmp

我是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);

1 个答案:

答案 0 :(得分:0)

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

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

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