2012-11-02 65 views
2

我已經安裝了系統上的淨snmp5.7.2所述的AgentX主代理([NIL]),我已經寫我app_agent.conf我的應用程序和警告:無法連接到

agentXSocket udp:X.X.X.X:1610 

和出口SNMPCONFIGPATH = path_to_app_agent.conf

我也wrtten的snmpd.conf在/usr/etc/snmp/snmp.conf

trap2sink X.X.X.Y 
agentXSocket udp:X.X.X.X:1610 

我有兩個以上的snmpd.conf出現在我的/ etc/SNMP /一/ var/net-snmp/ 在/ etc/SNMP

com2sec notConfigUser default  public 
com2sec notConfigUser v1   notConfigUser 
com2sec notConfigUser v1   notConfigUser 
view systemview included .1.3.6.1.2.1.1 
view systemview included .1.3.6.1.2.1.25.1.1 
access notConfigGroup "" any noauth exact systemview none none 
pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat 

在/ var/NET-SNMP/

setserialno 1322276014 
    ifXTable .1 14:0 18:0x $ 
    ifXTable .2 14:0 18:0x $ 
    ifXTable .3 14:0 18:0x $ 
    engineBoots 14 
    oldEngineID 0x80001f888000e17f6964b28450 

我已經開始snmpd,並snmptrapd。現在,在我的代碼我打電話

netsnmp_ds_set_boolean(NETSNMP_DS_APPLICATION_ID, NETSNMP_DS_AGENT_ROLE, 1); 
init_agent("app_agent"); 
init_snmp("app_agent"); 

init_snmp拋出一個警告

警告:無法連接到的AgentX主代理([NIL):

我越來越知道想法爲什麼??如有任何幫助,請事先致謝

回答

3

這基本上是說您寫入的子代理程序無法連接到NetSNMP主代理程序,因爲消息提示。在Linux中,默認情況下,agentx將嘗試使用/ var/agentx/master通過套接字進行連接。以下提示可以幫助:

  1. 運行在適當的特權您的子代理有權訪問 到插座e.x.須藤在你的snmpd.conf
  2. 檢查插座的設置(其位於不同),如果沒有指定,如 agentxsocket /var/agentx/masteragentxperms 777 777
  3. 重啓NetSNMP任何更改才能與sudo service snmpd restart作用;或者作爲選項,您可以嘗試使用sudo service snmpd stop停止服務並運行帶有調試模式snmpd -f -Lo -Dagentx的實例,該實例很可能會輸出有關子代理連接的有用信息。
+0

請考慮「評論」而不是「回答」這種答案。 – Andros

3

我就遇到了這個問題,現在瓦特/斑驢和ospfd,做一個 '使用strace -f -p PID' 之後,注意到這個輸出中:

connect(14, {sa_family=AF_FILE, path="/var/agentx/master"}, 110) = -1 EACCES (Permission denied) 

所以我:

ls -al /var/agentx/ 

總8

drwx------ 2 root root 4096 Sep 12 20:50 . 

    drwxr-xr-x. 27 root root 4096 Sep 12 20:13 .. 

    srwxrwxrwx 1 root root 0 Sep 12 20:50 master 

然後I:

chmod 755 /var/agentx/ 

並立即斑馬和ospfd有他們的Agentx子網連接。

tail -10f /var/log/quagga/zebra.log 
    2014/09/12 20:52:59 ZEBRA: snmp[info]: NET-SNMP version 5.5 AgentX subagent connected 

tail -10f /var/log/quagga/ospfd.log 
    2014/09/12 20:52:59 OSPF: snmp[info]: NET-SNMP version 5.5 AgentX subagent connected 

這是在RHEL6上運行quagga-0.99.23-2014062401。希望這可以幫助。

1

也有類似的問題,無論是與Unix套接字或TCP:本地主機:750我仍然得到同樣的錯誤信息:

/var/log/quagga/ospfd.log: warning, failed to connect to Master AgentX [nill] or [tcp:localhost:750]. 

我通過禁用SELINUX解決了這個問題。

0

也許你編譯過它,不支持任何傳輸域。

例如在的OpenWRT,就必須在Makefile中改變:

 
SNMP_TRANSPORTS_INCLUDED = Callback UDP 

SNMP_TRANSPORTS_EXCLUDED = TCP TCPIPv6 Unix 

 
SNMP_TRANSPORTS_INCLUDED = Callback UDP TCP TCPIPv6 Unix 

SNMP_TRANSPORTS_EXCLUDED = 

支持所有運輸領域。

0

淨-SNMP有時無法從配置文件中讀取主代理的ADRESS的子代理,所以你甚至可以嘗試

/* set the location of master agent */ 
    netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID, 
         NETSNMP_DS_AGENT_X_SOCKET, "udp:X.X.X.X:1610"); 

調用init_agent()之前寫在代碼的AgentX這些行。在OS Ubuntu的

0

我已經解決了問題,接下來的命令對應的行17.07

  1. 更改代碼(加線)

view systemview included .1.3.6.1.2.1.1

view systemview included .1.3.6.1.2.1.2

view systemview included .1.3.6.1.2.1.25.1.1

代替

view systemview included .1.3.6.1.2.1.1

view systemview included .1.3.6.1.2.1.25.1.1

  • /etc/snmpd.conf
  • 向下新線master agentx重啓SNMPD妖:
  • sudo /etc/init.d/snmpd restartsudo service snmpd restart

    相關問題