lextudio / sharpsnmplib

Sharp SNMP Library- Open Source SNMP for .NET
https://sharpsnmp.com
MIT License
356 stars 152 forks source link

Receive traps from several agents #377

Open lextudio-support opened 5 hours ago

lextudio-support commented 5 hours ago

Hi.
We are working on a project where we're going to receive traps from 3000 snmp agents. Does that mean we will have to instantiate 3000 instances of the SnmpEngine? ( To be able to handle all the different engineGroups ). Or should the EngineGroup class be modified to handle a collection of engineGroups?

Kind rgds

Original Reported Date: 2013-11-06T23:59:44.243-08:00 Original CodePlex Discussion Thread ID: 466764

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

https://sharpsnmplib.codeplex.com/discussions/436297

Start from snmptrapd and you only need to change membership provider to accept traps from those agents.

Original Posted Date: 2013-11-07T19:35:44.853-08:00

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

The challenge we are facing is how to handle time synchonization data for SNMPv3 for all agents. Seems like the library expect all agents to start up at time 0 (at the same time as the trap receiver is started?) Is there something we are missing here?

Original Posted Date: 2013-11-14T22:10:36.563-08:00

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

Hi,deripsni:

i face the same problem in v3 trap!

when i look through the source code, i think  we must instantiate 3000 instances of "SnmpEngine and engineGroups"

but the Listener UserRegistry, ListenerBinding,SnmpApplicationFactory can be reuse.

But we need lextm to comfrim it.

Original Posted Date: 2013-11-19T22:29:06.823-08:00

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

Btw, how to handle traps from different agent with same username but diff auth/priv password?

this version of "sharpsnmplib" only use "user name" as the key of usm,

And it is not thread safe, so it can't match the situation of adding user dynamically.

Original Posted Date: 2013-11-20T00:50:13.863-08:00

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

deripsni wrote:

The challenge we are facing is how to handle time synchonization data for SNMPv3 for all agents. Seems like the library expect all agents to start up at time 0 (at the same time as the trap receiver is started?) Is there something we are missing here?

that's a challenge you set for yourself. SNMP does not require time sync at all. So you have to figure it out on your own.

Original Posted Date: 2013-12-03T12:24:05.22-08:00

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

samlin wrote:

Btw, how to handle traps from different agent with same username but diff auth/priv password?

this version of "sharpsnmplib" only use "user name" as the key of usm,

And it is not thread safe, so it can't match the situation of adding user dynamically.

Write your own membership provider and then you can achieve it. If you want to add users on the fly, you need to change more classes. It is not the goal of snmpd to be a real world SNMP agent, so please extend it in the way you like.

Original Posted Date: 2013-12-03T12:28:25.88-08:00

lextudio-support commented 5 hours ago

Copied from CodePlex without authors:

lextm wrote:

deripsni wrote:

The challenge we are facing is how to handle time synchonization data for SNMPv3 for all agents. Seems like the library expect all agents to start up at time 0 (at the same time as the trap receiver is started?) Is there something we are missing here?

that's a challenge you set for yourself. SNMP does not require time sync at all. So you have to figure it out on your own.

Do you mean SNMPv1 and SNMPv2x does not require time sync at all?

I think in SNMPv3 you have to use the USM (User-based Security Model)? Or is it optional in SNMPv3?

From what I can see this is stated in the RFC2574 on [Page 6]:
" - The timeliness module MUST provide for:

 - Protection against message delay or replay (to an extent
   greater than can occur through normal operation)"

and

" The timeliness module is fixed for the User-based Security Model
while there is provision for multiple authentication and/or privacy
modules, each of which implements a specific authentication or
privacy protocol respectively."

Please clearify.

Kind Regards
deripsni

Original Posted Date: 2013-12-05T23:42:32.457-08:00