Reg. Date: October 08, 2004 By 이정훈
***************************************************
[ucd-snmp-4.2.3.tar.gz를 이용해서 snmp agent를 구현하는 방법]
***************************************************
1. ucd-snmp-4.2.3.tar.gz를 다운로드 ==> SNMP stack for v1,v2c,v3
2. SNMP-4.2.0.tar.gz를 다운로드 ==> Perl scriptor for mib2c
http://net-snmp.sourceforge.net에서 다운로드....
3. %> tar xvzf SNMP-4.2.0.tar.gz
%>perl Makefile.PL
%>./make
%>./make test /* 문제가 없는지 체크함 */
%>./make install
%>env MIBS=ALL mib2c -f xxx yyy
여기서, xxx는 xxx.c xxx.h에 사용될 이름이며,
yyy는 자신의 MIB에서 사용할 Object Identifier임...(중요)
%> 최종 결과물은 xxx.c xxx.h 이며, 이것을
~agent/mibgroup에 move한다.
- 여기서 자신의 agent의 역할을 코딩합니다.
get/set/table query 등등...
4. %> tar xvzf ucd-snmp-4.2.3.tar.gz
%>./configure --with-mib-modules="xxx"
여기서 xxx는 위에서 xxx.c xxx.h에서 사용한 이름임.
%>./make
%>./make install
5.%>snmpconf
- 여기서 snmp 환경설정을 interactive하게 입력을 합니다.
- 그결과 snmp.conf, snmpd.conf, snmptrapd.conf 라는 파일이 세개
생성됩니다.
- %> mv snmp.conf snmpd.conf snmptrapd.conf /usr/local/share/snmp
- 이때 get할때와 set할때의 community를 정확히 입력하고 기억해야 합니다.
6. %>./snmpd -D /*agent daemon 시작 */
세부적으로 발생하는 문제들은 web surfing하다고 보니까
곳곳에 답이 나오더군요. 작은 도움이 되셨길 바라며...
즐거운 하루들 되시길 바랍니다.
>저는 공개용으로 (GPL) 사용할수 있는 snmp agnet에 Private MIB를 추가하고 싶어서 한번 해보았는데, 생각보다 쉽지않더군요. 혹시 성공하시면 경험을
>나누어 주시길 바라며, 지금까지의 저의 짧은 지식을 공유하면...
>
>******************************************************
>1. ucd-snmp, net-snmp와의 차이점은?
> 제가 알기로는 ucd-snmp의 4.2.0(?)인가 이상의 버전이 이름만 net-snmp로
> 변경된것으로 알고 있습니다. UC David라는 사람 주관으로 시작했다가 점점
> contributor들이 많아지면서 자연스럽게 이름이 바뀐것으로 알고있습니다.
> sourceforge.net의 FAQ를 참조하세요.
> 참조 http://net-snmp.sourceforge.net/FAQ.html
>
>2. MIB를 C로 변환하는 법?
> Perl scriptor를 이용하면 MIB를 .c and .h로 변환하여줍니다.
> ->www.cpan.org/modules/by-module/SNMP에서 SNMP.4.2.0.tar.gz 설치후 아래 실행
>
> %>env MIBS=EXAMPLE-MIB mib2c kkk
> where, kkk는 private MIB내의 Module Identy입니다. (MIB이름이 아님)
>
>3. SNMP agent새롭게 컴파일 하기
> 생성된 .c와 .h를 이용하여 snmp agent를 새롭게 컴파일합니다.
> ./configure --with-mib-modules="example"
> ./make
> ./make install
> ./snmpd -D (Debug mode, /var/log/snmp/snmpd.log)
>
> where, example.c exmaple.h파일은 반드시 ~agent/mibgroup에 미리
> 넣어 놓아야 합니다.
>
>4. 관련 사이트를 서핑해보시면 perl sciptor와 SNMP agent 버전간에 호환성을
> 보장하고 있지 않습니다. 공개용이므로 너무 큰걸 바라지 말라는 거죠.
>
>******************************************************
>
>아무튼, 좋은 결과 있으시길...
>
>
>
>>linux상에서 snmp agent를 target(mpc8260)에 넣으려고 하는데요..
>>일단 지금 스터디중인데요.. 궁금한게 있어서요..
>>
>>ucd-snmp, net-snmp가 있던데 차이점이 먼지 알고 싶고요..
>>각각 어떤 개념의 snmp인지 알고 싶습니다.
>>
>>그리고 ucd-snmp를 다운받아서 설치하고 mibs을 만들고 mibs을 c로 변환하는 방법이랑 agent 전체로 컴파일되는 방법을 알고 싶은데.. 설명해주실 고수님들 없으신가요?
>>
>>- 그럼 감사하겠습니다..
>>
>>