2011-11-10 20 views
1

私はagent-Xでサブエージェントを書くためにnet-snmpを拡張しようとしています。 net-snmpのサンプルコードを使用して、サブエージェントにコンパイルしました。 以下は、私はから入手コードです: http://www.net-snmp.org/wiki/index.php/TUT:Writing_a_MIB_Modulesnmp agentXサブエージェントのポートを設定する方法は?

そして私はAgentXのを使用して、私のサブエージェントにsnmpgetコマンドとのsnmpsetを実行するために成功しました。

私の質問は:

  1. 私はどのように私は、彼らが聴いているどのポートを見つけることができ、サブエージェントとマスターエージェントはポートで待機していると思いますか?私は、デフォルトのポートはであると言われているが、私は「netstatコマンド」を使用したときに、私はサブエージェントのリスニングポートを変更する方法

  2. ポート705でリッスンして任意のプロセスを見つけることができませんか?ポートを設定するにはサンプルコードを変更する必要がありますか?

答えて

0

問題が解決される: http://www.net-snmp.org/wiki/index.php/FAQ%3aAgent_12

netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID、 NETSNMP_DS_AGENT_X_SOCKET、 "TCP:ローカルホスト:705")を追加することにより、

'init_agent'コールの前のコード例です。

ありがとうございます!

1

デフォルトでは、実際には「windows以外のもの」のデフォルトでは、/var/agentx/masterにあるUNIXソケットをリッスンします。あなたがサブエージェントを作成すると、それはあなたのFOO.confファイルどこを読んであげる

agentXSocket tcp:localhost:705 

あなたは、あるいは構成ファイルsnmpd.confを使用して他のポスターによって提案されたAPIを使用してリスニング・アドレスを変更することができますFOOはあなたがsnmpd.confファイルを変更する必要がinit_snmp("FOO");

0

に渡されたものです

master agentx 
AgentXSocket tcp:X.X.X.X:705 

エージェントのコードでこれらの行を書き留めてください。init_agent()

netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID, NETSNMP_DS_AGENT_X_SOCKET, "tcp:X.X.X.X:705");