注册 SNMP 代理应用程序
除了 SNMP 管理器操作,WinSNMP API 版本 2.0 还支持 SNMP 代理操作。
若要将 WinSNMP 应用程序注册为 SNMP 代理,应用程序可以调用 SnmpListen 函数。 此函数通知 Microsoft WinSNMP 实现,SNMP 实体将充当 SNMP 代理的角色。 应用程序还可以调用 SnmpListen ,以在不再充当代理时通知实现。
如果应用程序调用 SnmpListen 函数并在 lStatus 参数中传递值SNMPAPI_ON,则会发生以下操作:
- 将在 SNMP 代理角色中运行的实体绑定到其分配的端口,并“侦听”传入的 SNMP 消息请求。
- 代理使用特定于应用程序的逻辑来处理每个 SNMP 请求。
- 代理对每个请求形成适当的响应。
- 代理通过调用 SnmpSendMsg 函数将响应传输到请求实体。 当代理调用 SnmpSendMsg 时,它会在 srcEntity 参数中指定代理的地址,并在 dstEntity 参数中指定远程管理器实体的地址。 (这些值与代理实体在调用 SnmpRecvMsg 函数以检索 SNMP 请求时在这些参数中收到的值相反)
有关 SNMP 管理应用程序和代理应用程序的详细信息,请参阅 关于 SNMP。