我正在尝试对 snmp 服务器执行查询,但总是出现超时错误。我正在使用 SLES 11 (OpenSUSE) 和防火墙已禁用。
我正在执行的查询是:
> snmpwalk -mALL -v1 -ccomname localhost system 2 > /dev/null
Timeout: No Response from localhost
hosts.allow
我尝试通过配置文件和来允许 snmp 访问/etc/snmp/snmpd.conf
。这些文件如下:
主机允许
snmpd : ALL : ALLOW
snmpd配置文件
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
网络状态
此外,我还测试了服务器是否确实在监听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 条类似上述的条目。
答案1
问题是社区名称错误,应该public
是comname
。
我运行 snmp 配置将社区名称设置为comname
,但它仍然是“公共”。我不知道为什么。