如何让 SNMP 代理接受来自网络中其他主机的连接?

Tar*_*run 15 networking 12.04 snmp

我已经在我的系统中配置了 SNMP 代理,IP 地址为 192.168.1.1 我已经使用以下教程在其中配置了 SNMP 代理

我修改了以下几行

在文件中 /etc/snmp/snmpd.conf

 rocommunity public 127.0.0.1
 rocommunity public 192.168.1.0/24
 rocommunity public 192.168.2.0/24
Run Code Online (Sandbox Code Playgroud)

在文件中 /etc/default/snmpd

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid'
Run Code Online (Sandbox Code Playgroud)

当我尝试从 IP 地址为 192.168.1.1 的系统中使用 snmpwalk 命令时,它工作正常。

例如:一大块命令输出:

iso.3.6.1.2.1.1.1.0 = STRING: "Linux devenv 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64"
iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.8072.3.2.10
iso.3.6.1.2.1.1.3.0 = Timeticks: (74328) 0:12:23.28
iso.3.6.1.2.1.1.4.0 = STRING: "Me <me@example.org>"
iso.3.6.1.2.1.1.5.0 = STRING: "devenv"
iso.3.6.1.2.1.1.6.0 = STRING: "Sitting on the Dock of the Bay"
iso.3.6.1.2.1.1.7.0 = INTEGER: 72
Run Code Online (Sandbox Code Playgroud)

但是当我尝试通过带有 ip 的不同系统使用 snmpwalk 时,192.168.2.1它给出了No response from 192.168.1.1. 请帮忙。

snmpwalk -c public -v1 192.168.1.1 | less
Run Code Online (Sandbox Code Playgroud)

PS我已经在ip地址为192.168.2.1的机器上配置了相同的步骤。或者是否有任何其他程序将被使用。

编辑 1。

难道netstat这里是一个截图

Snmpd 网络状态

Eri*_*lho 15

编辑文件/etc/snmp/snmpd.conf。更改行:

agentAddress  udp:127.0.0.1:161
Run Code Online (Sandbox Code Playgroud)

到:

agentAddress  udp:161
Run Code Online (Sandbox Code Playgroud)

然后重启snmpd:

sudo service snmpd restart
Run Code Online (Sandbox Code Playgroud)

它现在应该监听所有接口:

$ sudo netstat -ulnp | grep 161
udp        0      0 0.0.0.0:161             0.0.0.0:*                           8517/snmpd      
Run Code Online (Sandbox Code Playgroud)