进行SNMPv3连接时,是否需要指定;“上下文名称”;
当我们建立SNMPv3连接时,以下是主要参数进行SNMPv3连接时,是否需要指定;“上下文名称”;,snmp,Snmp,当我们建立SNMPv3连接时,以下是主要参数 SNMPV3UserName SNMPV3ContextName SNMPV3安全级别 SNMPV3Auth协议 SNMPV3AuthPassword SNMPV3竞争控制 SNMPV3privacPassword 我想了解,连接时是否需要指定“SNMPV3ContextName”。我在SNMP RFC文档和其他链接中没有找到任何明确提及的内容。 我有一个应用程序,如果不是由用户输入,它会要求输入上下文名称。我怀疑它不应该要求输入上下文名称,因为
- SNMPV3UserName
- SNMPV3ContextName
- SNMPV3安全级别
- SNMPV3Auth协议
- SNMPV3AuthPassword
- SNMPV3竞争控制
- SNMPV3privacPassword
SnmpAdminString
定义为OCTET字符串(大小(0..255))
所以,它可以是空的。我找不到任何东西来约束它,所以允许使用空字符串。根据这些RFC(以及RFC 3412),如果您的引擎需要这种消除歧义的功能(从某种意义上说,将其视为多个引擎),则似乎可以在contextEngineID
之上添加多个上下文
但是,与任何SNMP一样,一些实现可能会施加自己的约束,或者干脆不遵守规范。因此,您应该查阅所使用技术的文档。Net SNMP是实际的参考设计,请使用它并查看。似乎您已经回答了自己的问题?“RFC说这是可选的,但有些经理认为这是强制性的。”我们还能说什么呢@LightnessRacesinOrbit是的,虽然RFC并没有特别提到“必须”或“可选”,但我检查了打印机面板。在这里,它允许值为空。所以我现在假设它是可选的。另外一件事是这个字段是后来添加的,早些时候它不存在。因此,对于向后兼容性等,它必须是可选的。