snmptrap:主机名称或服务未知

时间:2014-04-02 15:31:39

标签: bash shell snmp net-snmp

我正在尝试使用以下命令行发送snmp陷阱:

snmptrap -v 1 -c public host '1.2.3.4.5.6' '192.193.194.195' 6 99 '55' 1.11.12.13.14.15  s "teststring"

snmptrap -v 2c -c public host "" UCD-NOTIFICATION-TEST-MIB::demoNotif \
   SNMPv2-MIB::sysLocation.0 s "Just here"

但我收到此错误消息:

getaddrinfo: host Name or service not known
getaddrinfo("host", NULL, ...): Name or service not known
snmptrap: 
zsh: exit 1     snmptrap -v 1 -c public host '1.2.3.4.5.6' '192.193.194.195' 6 99 '55'  s

怎么了?我好像没有得到什么......

我的最终目的是在shell脚本中的特定端口上发送localhost上的陷阱..

编辑:我有一个新错误:

read_config_store open failure on /var/lib/snmp/snmpapp.conf

我该如何解决?我无法修改计算机上的任何文件。我只能在shell脚本中写一些行来发送陷阱..

1 个答案:

答案 0 :(得分:3)

我认为主持人"主持人"在您的网络上不存在。请尝试输入陷阱目标的IP地址或现有主机名。

顺便说一句,你不需要在OID字符串周围加上引号。

在手册页上有关于命令语法的更多信息," man snmptrap"

编辑: 您的第二个错误看起来是您正在处理的计算机配置错误的结果。构建(编译)程序的人犯了错误,或者sysadmin在某些文件/目录上设置了异常权限。

假设它是某种Unix / Linux,我已经在网上搜索了建议,你可以尝试将shell变量SNMP_PERSISTENT_DIR设置为可写给用户的目录(例如/ tmp)。然后再次尝试该命令。 即如果使用Bash:

  # SNMP_PERSISTENT_DIR=/tmp
  # export SNMP_PERSISTENT_DIR
  # snmptrap <etc>