【发布时间】:2017-08-08 04:23:14
【问题描述】:
我使用 Python 使用 pysnmp 测试了以下 SNMP GET 命令的代码
g = getCmd( SnmpEngine(),
CommunityData( 'escom' ),
UdpTransportTarget( ( 'localhost', 161 ) ),
ContextData(),
ObjectType( ObjectIdentity( 'SNMPv2-MIB', 'sysDescr', 0 ) ) )
next( g )
当我使用localhost 或127.0.0.1 运行它时,它可以工作,但是当我使用计算机的IP 时,我得到一个超时错误。
我还测试了一个使用 Java (snmp4j) 找到的示例,它是相同的:它适用于 localhost 和 127.0.0.1,但不适用于 IP。如果我对 IP 进行 ping 操作,它会起作用,所以我不明白为什么会发生这种情况。
我使用的是 Windows 10,并按照this tutorial 配置了 SNMP 代理。
有没有办法避免我使用IP时超时?
【问题讨论】:
-
什么电脑的IP?网络是什么样的?两个端点之间有哪些防火墙,它们是如何连接的?另一端正在运行什么 SNMP 代理,它是如何配置的?如果是同一台计算机,除了防火墙和代理如何配置(因为服务侦听特定接口)之外,您可以忽略这些问题。