比较Python脚本中的SNMP OID



我是Python的新手,我有一个现有的脚本,它被模拟为响应get请求的SNMP代理。它具有以下功能:

  1. 收集SNMP获取请求
  2. 比较请求的长度
  3. 发送一个已定义的字符串作为响应

这是意料之中的事。

现在我需要增强这个脚本,以确保它检查在请求中发送的OID,并根据OID发送不同的响应。有什么建议吗?

这取决于OID的用途。如果你有一个像1.2.3.4这样的字符串,那么你可以直接比较这些字符串。但是,将OID拆分为整数列表更有用:

>>> oidstr = '1.2.3.4'
>>> oid = [int(x) for x in oidstr.split('.')]

您也可以比较列表的相等性。

如果你有一个像b'x01x02x03x04'这样的二进制字符串,那么你可以使用类似的理解将其转换为整数列表——oid = [x for x in oidbin],因为二进制字符串是可迭代的。

最新更新