net-snmp 예제

그런 다음 새 프로그램(예-악마)을 실행하고 그 안에 보관된 데이터에 액세스할 수 있어야 합니다. 좋은 테스트는 데이터를 시작하기 전에 데이터에 액세스할 수 없고 데이터를 시작한 후에 데이터에 액세스할 수 없도록 하는 것입니다. 이 모든 예는 아래에 나와 있습니다 (이는 위의 “자동 내장”예와 거의 동일하게 보입니다): net-snmps snmpd 마스터 에이전트를 실행할 때 snmpd.conf 파일에서 AgentX 마스터 에이전트 지원을 켜려면 “마스터 에이전트”라는 줄을 넣어야합니다. 이 작업을 수행하지 않은 경우 에이전트를 중지하고 구성 라인을 추가하고 아래 예제가 작동하기 전에 snmpd 마스터 에이전트를 다시 시작해야합니다. [이전 예제에서는 AgentX 지원에 의존하지 않았기 때문에 이 작업을 수행할 필요가 없습니다.] 다음으로, 우리가 얘기할 사람, 사용하려는 SNMP 버전, 인증 방법 등을 설명하는 세션을 초기화합니다. 이 세션의 전체 정의는 net-snmp/snmp_api.h 헤더 파일에서 찾을 수 있습니다. 한 가지 주의해야 할 점은 snmpbulkget이 snmpgetnext 명령처럼 작동하므로 인수로 주어진 객체를 남깁니다. 위의 예에서는 특정 개체를 제공하는 대신 분기를 제공했습니다. snmpbulkget을 snmpwalk 호출로 생각할 수 있지만 결과는 하나의 패킷에 있습니다.

아래와 같이 Makefile을 사용하여 예제 악마를 빌드합니다. 이를 컴파일하기 위해 Makefile은 net-snmp-config 명령을 사용하여 필요한 컴파일 플래그 및 컴파일 라이브러리 목록을 생성합니다. 셸에서 다음 명령을 실행하여 제공하는 출력 유형을 확인할 수 있습니다. 여기에 우리가 이야기하고 생성하려고하는 파일은 다음과 같습니다 : 그럼, 아직하지 않은 경우 그물 snmps snmpd 마스터 에이전트를 발사. snmpd.conf 파일에서 마스터 에이전트 지원을 켜려면 “마스터 에이전트”라는 줄을 넣어야하므로 snmpd를 실행하기 전에이 작업을 수행하십시오. 위에 표시된 mysubagent 응용 프로그램이 여전히 실행 중인 경우 이 하위 에이전트가 해당 응용 프로그램과 충돌하므로 먼저 죽여야 합니다. 우리가 계측하는 exmaple은 IETF 워킹 그룹 의자의 이름을 포함하는 쓸모없는 테이블입니다. 물론 이 데이터는 네트워크 관리 관점에서 그다지 유용하지는 않지만 이 예제에서는 데이터를 사용하고 저장하는 방법만 보여 줍니다.

더 유용한 예제(그러나 더 복잡함)를 보려면 들어오는 SNMP 알림을 로깅하기 위해 NOTIFICATION-LOG-MIB의 일부를 구현하는 앱/notification_log.c 파일을 확인하십시오. 먼저 일부 헤더 파일을 포함해야 합니다. net-snmp 도구 키트를 설치한 후 대부분의 상황을 처리하는 사용하기 쉬운 헤더 파일이 설치되었습니다. 우리는 이들과 함께 우리의 snmpdemoapp.c 파일을 시작: 이전 가이드에서, 우리는 SNMP 프로토콜의 기본 사항 및 설치 하 고 우분투에 SNMP 구성 요소를 구성 하는 방법에 대해 설명 14.04 서버. 이 가이드에서는 우리가 작업한 net-snmp 제품군과 함께 제공되는 많은 도구의 기본 사용을 설명합니다. 보시다시피 net-snmp 제품군을 사용하여 다양한 방법으로 데이터를 검색하고 조작할 수 있습니다. 이러한 작업을 스크립팅하거나 응용 프로그램에서 이러한 유틸리티를 활용하여 복잡한 모니터링 및 관리 환경을 구축할 수 있습니다. 모든 것이 잘 진행되면 mysubagent 바이너리 파일 (예 : 위의 스크립트 출력이 선택)을 생성해야합니다.

그런 다음 snmpd 마스터 에이전트를 시작할 수 있습니다 (이전 예제에서 그렇게하지 않은 경우 하위 에이전트 테스트를 시작한 결과입니다. mib 모듈을 하위 에이전트로 컴파일하는 방법에는 두 가지가 있습니다. 당신은 그것을 직접 할 수 있습니다, 아래에 자세히 설명, 또는 당신은 당신의 mib 모듈을 가지고 자동으로 net-snmp-config 스크립트를 사용하여 빠르고 더러운 하위 에이전트를 만들려고 할 수 있습니다 : 예를 들어, 우리는 몇 가지 예 MIB 개체 및 코드를 참조합니다 : NET-SNMP-TUTORIAL-MIB MIB, 그리고 예제 MIB 모듈과 헤더 파일입니다. 참고: 이러한 데모에는 순 snmp-5.0.1 이상의 것이 필요합니다. 이 가이드의 목적을 위해 net-snmp 명령을 제공해야 하는 인증 부분에 익숙하다고 가정합니다.