我正在尝试执行查询到snmp服务器,但我总是获得超时错误。 我正在使用SLES 11(OpenSUSE), 防火墙被禁用 。
我执行的查询是:
> snmpwalk -mALL -v1 -ccomname localhost system 2 > /dev/null Timeout: No Response from localhost
我已经尝试通过configuration文件hosts.allow和/etc/snmp/snmpd.conf来允许访问snmp。 这些文件如下:
snmpd : ALL : ALLOW
syslocation Server Room syscontact Sysadmin (root@localhost) # These really aren't meant for production use. They include all MIBS # and can use considerable resources. See snmpd.conf(5) for information # on setting up groups and limiting MIBS. rocommunity public 127.0.0.1 # rwcommunity mysecret 127.0.0.1
另外,我testing了服务器实际上是用netstat监听的:
> sudo netstat -tualpn | grep snmp tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 20561/snmpd udp 0 0 0.0.0.0:161 0.0.0.0:* 20561/snmpd
另外,我已经检查了日志文件:
NET-SNMP version 5.4.2.1 Connection from UDP: [127.0.0.1]:47705->[127.0.0.1] Connection from UDP: [127.0.0.1]:47705->[127.0.0.1] [...] Connection from UDP: [127.0.0.1]:39362->[127.0.0.1] Connection from UDP: [127.0.0.1]:39362->[127.0.0.1] Connection from UDP: [127.0.0.1]:39362->[127.0.0.1] Connection from UDP: [127.0.0.1]:39362->[127.0.0.1]
我发现每次执行snmpwalk语句时,都会在日志中添加6个与上面类似的条目。
问题是社区名称错了,应该public而不是comname 。
我运行snmpconfiguration将社区名称设置为comname ,但它仍然是“公共”。 我不知道为什么。