라이브러리
[PHP] SNMP::get - SNMP 객체 가져오기
SNMP (Simple Network Management Protocol)
SNMP는 네트워크 장비를 관리하기 위한 프로토콜입니다. SNMP를 사용하면 네트워크 장비의 상태를 모니터링하고, 설정을 변경할 수 있습니다. PHP에서 SNMP를 사용하기 위해 `snmp` 확장 모듈이 필요합니다.
SNMP::get
`SNMP::get` 함수는 SNMP를 사용하여 특정 오브젝트의 값을 가져올 수 있습니다. 오브젝트의 OID (Object Identifier)와 커뮤니티 문자열을 지정하면, 해당 오브젝트의 값을 가져올 수 있습니다.
# 예제
#hostingforum.kr
php
<?php
// SNMP 서버의 주소와 커뮤니티 문자열을 지정합니다.
$snmp_host = 'localhost';
$snmp_community = 'public';
// 가져올 오브젝트의 OID를 지정합니다.
$oid = '1.3.6.1.2.1.1.1.0'; // 시스템 이름
// SNMP 서버에 접속합니다.
$snmp = new SNMP($snmp_host, $snmp_community);
// 오브젝트의 값을 가져옵니다.
$value = $snmp->get($oid);
// 가져온 값을 출력합니다.
echo "시스템 이름: $value
";
?>
# 결과
#hostingforum.kr
시스템 이름: Linux localhost 3.10.0-1160.42.2.el7.x86_64 #1 SMP Tue Feb 18 19:04:44 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
# 오브젝트 OID
SNMP 오브젝트의 OID는 MIB (Management Information Base)에서 가져옵니다. MIB는 네트워크 장비의 관리 정보를 정의한 파일입니다. 각 오브젝트는 고유의 OID를 가지고 있으며, 이 OID를 사용하여 오브젝트의 값을 가져올 수 있습니다.
# 커뮤니티 문자열
SNMP 서버에 접속하기 위해 커뮤니티 문자열이 필요합니다. 커뮤니티 문자열은 SNMP 서버의 관리자가 지정한 문자열입니다. 커뮤니티 문자열을 사용하여 SNMP 서버에 접속하면, SNMP 서버는 접속을 허용합니다.
# 오류 처리
SNMP::get 함수는 오류를 발생할 수 있습니다. 오류를 처리하기 위해 try-catch 문을 사용할 수 있습니다.
#hostingforum.kr
php
<?php
// ...
try {
$value = $snmp->get($oid);
} catch (SNMPException $e) {
echo "오류 발생: " . $e->getMessage() . "
";
}
?>
# 참고
* SNMP 확장 모듈은 PHP 7.0 이상에서 사용할 수 있습니다.
* SNMP 서버의 주소와 커뮤니티 문자열은 SNMP 서버의 관리자가 지정한 값입니다.
* 오브젝트 OID는 MIB에서 가져옵니다.
* 커뮤니티 문자열은 SNMP 서버의 관리자가 지정한 문자열입니다.
* 오류 처리는 try-catch 문을 사용합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.