我正在使用 SharpSnmp 库的 ListenerBinding 来接收 snmp-get-requests。以下方法处理传入请求并评估请求的 id:
private void HandleSnmpRequest(object sender, MessageReceivedEventArgs e)
{
if (e.Message is GetRequestMessage getRequest){
var messageId = e.Message.Variables().First().Id;
...
}
.....
}
只要传入的请求具有版本 1 或 2,一切都很好。如果请求具有版本 3,则e.Message.Variables()
返回一个空集合。为什么“变量”集合中没有请求的 id?