SNMP snmp2_set

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

snmp2_set — SNMP 개체의 값 설정


설명

snmp2_set(
    string $hostname,
    string $community,
    array|string $object_id,
    array|string $type,
    array|string $value,
    int $timeout = -1,
    int $retries = -1
): bool
                

snmp2_set()object_id에 의해 지정된 SNMP개체의 값을 설정하는 데 사용됩니다.


매개변수

hostname
SNMP 에이전트(서버)의 호스트 이름입니다.
community
쓰기 커뮤니티.
object_id
SNMP 개체 ID입니다.
type
MIB는 각 개체 ID의 유형을 정의합니다. 아래 목록에서 단일 문자로 지정해야 합니다.

types

=The type is taken from the MIB
iINTEGER
uINTEGER
sSTRING
xHEX STRING
dDECIMAL STRING
nNULLOBJ
oOBJID
tTIMETICKS
aIPADDRESS
bBITS

SNMP 라이브러리를 컴파일하는 동안 OPAQUE_SPECIAL_TYPES가 정의된 경우 다음도 유효합니다.

types

Uunsigned int64
Isigned int64
Ffloat
Ddouble

이들 대부분은 명백한 해당 ASN.1 유형을 사용합니다. '', 'x', 'd' 및 'b'는 모두 OCTET STRING 값을 지정하는 다른 방법이며 'u' 부호 없는 유형도 Gauge32 값을 처리하는 데 사용됩니다.

MIB 파일이 "snmp_read_mib"를 사용하여 MIB 트리에 로드되거나 libsnmp 구성에서 지정하여 로드되는 경우, MIB에서 유형을 자동으로 읽을 수 있으므로 '='를 모든 객체 ID에 대한 type 매개변수로 사용할 수 있습니다.

예를 들어 BITS 유형의 변수를 설정하는 방법에는 두 가지가 있습니다. "구문 비트{telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":

  • "b" 유형과 비트 번호 목록을 사용합니다. 이 메서드는 동일한 OID에 대한 GET 쿼리가 예를 들어 0xF8.
  • "x" 유형과 16진수를 사용하지만 일반적인 "0x" 접두사 없이(!)

자세한 내용은 예제 섹션을 참조하십시오.

value
The new value.
timeout
첫 번째 시간 초과까지의 마이크로초 수입니다.
retries
시간 초과가 발생한 경우 재시도할 횟수입니다.

반환 값

성공하면 true를, 실패하면 false를 반환합니다.

SNMP 호스트가 데이터 유형을 거부하면 "경고: 패킷 오류. 이유: (badValue) 주어진 값의 유형 또는 길이가 잘못되었습니다."와 같은 E_WARNING 메시지가 표시됩니다. 표시됩니다. 알 수 없거나 유효하지 않은 OID가 지정되면 "변수를 추가할 수 없음"이라는 경고가 표시될 수 있습니다.


Examples

예제 #1 snmp2_set() 사용

                  
<?php
  snmp2_set("localhost", "public", "IF-MIB::ifAlias.3", "s", "foo");
?>
                  
                

예제 #2 BITS SNMP 개체 ID 설정을 위해 snmp2_set() 사용

                  
<?php
  snmp2_set("localhost", "public", 'FOO-MIB::bar.42', 'b', '0 1 2 3 4');
  // or
  snmp2_set("localhost", "public", 'FOO-MIB::bar.42', 'x', 'F0');
?>
                  
                

기타