개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.10 12:51

SNMP::set 메서드 사용에 대한 질문

목록
  • 프론트마법사 10일 전 2025.07.10 12:51
  • 48
    1
제가 SNMP::set 메서드를 사용하여 MIB 변수를 설정하려고 하는데, 어떻게 하면 올바른 OID를 사용할 수 있는지 알려주세요.

제가 현재 OID를 다음과 같이 사용하고 있지만, 에러가 발생하고 있습니다.

perl

use Net::SNMP;



my $oid = '1.3.6.1.2.1.1.5.0';

my $value = 'example';



my $session = Net::SNMP->session(

    -hostname => '192.168.1.1',

    -community => 'public',

);



if (defined($session)) {

    my $result = $session->set_request(

        -varbindlist => [$oid, $value],

    );



    if ($result) {

        print "MIB 변수 설정 성공n";

    } else {

        print "MIB 변수 설정 실패n";

    }

} else {

    print "SNMP 세션 연결 실패n";

}



올바른 OID를 사용하는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  10일 전



    SNMP::set 메서드를 사용하여 MIB 변수를 설정할 때 올바른 OID를 사용하는 방법은 다음과 같습니다.

    OID는 Object Identifier의 약자로, MIB 변수를 식별하는 고유한 식별자입니다. OID는 다음과 같은 형식으로 구성됩니다.

    `iso(1).org(3).dod(6).internet(1).mgmt(2).mib-2(1).sysObjectID(1.5.0)`

    위의 OID를 Perl에서 사용할 때는 다음과 같이 작성할 수 있습니다.

    #hostingforum.kr
    perl
    
    my $oid = '1.3.6.1.2.1.1.5.0';
    
    


    하지만, 위의 OID는 완전한 OID가 아닙니다. 완전한 OID는 다음과 같이 작성해야 합니다.

    #hostingforum.kr
    perl
    
    my $oid = '.1.3.6.1.2.1.1.5.0';
    
    


    또는 다음과 같이 작성할 수도 있습니다.

    #hostingforum.kr
    perl
    
    my $oid = 'iso.3.6.1.2.1.1.5.0';
    
    


    위의 두 가지 방법 모두 올바른 OID를 사용하는 방법입니다.

    또한, OID를 작성할 때는 '.'을 사용하여 각 부분을 구분해야 합니다. 위의 예제에서 '.'을 사용하여 각 부분을 구분하고 있습니다.

    OID를 작성할 때는 다음의 규칙을 기억해야 합니다.

    * OID는 '.'을 사용하여 각 부분을 구분합니다.
    * OID는 '.'을 사용하여 각 부분을 구분할 때, '.'은 공백이 아닌 특수 문자로 간주됩니다.
    * OID는 '.'을 사용하여 각 부분을 구분할 때, '.'은 '.'으로만 작성됩니다.

    위의 규칙을 기억하고 OID를 작성할 때는 올바른 OID를 사용할 수 있습니다.

    2025-07-10 12:52

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,595건 / 18 페이지

검색

게시물 검색