SNMP 에이전트가 최대 256자의 인터페이스 설명( ifAlias
)을 반환하는 Cisco 스위치가 있습니다. 예를 들어 다음은 100자 길이의 인터페이스 설명입니다.
$ snmpget -m ./IF-MIB_tmp -M /usr/share/snmp/mibs/ -M
/usr/local/share/snmp/mibs/ -Ov -v 2c -c public switch
IF-MIB::ifAlias.53
STRING: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
$
그러나 MIB 파일의 DisplayString SIZE는 64자입니다.
$ grep -A 5 -i "^ifalias" ./IF-MIB_tmp /usr/share/snmp/mibs/* /usr/local/shar /snmp/mibs/*
./IF-MIB_tmp:ifAlias OBJECT-TYPE
./IF-MIB_tmp- SYNTAX DisplayString (SIZE(0..64))
./IF-MIB_tmp- MAX-ACCESS read-write
./IF-MIB_tmp- STATUS current
./IF-MIB_tmp- DESCRIPTION
./IF-MIB_tmp- "This object is an 'alias' name for the interface as
--
/usr/share/snmp/mibs/mib-rfc2863a.txt:ifAlias OBJECT-TYPE
/usr/share/snmp/mibs/mib-rfc2863a.txt- SYNTAX DisplayString (SIZE(0..64))
/usr/share/snmp/mibs/mib-rfc2863a.txt- MAX-ACCESS read-write
/usr/share/snmp/mibs/mib-rfc2863a.txt- STATUS current
/usr/share/snmp/mibs/mib-rfc2863a.txt- DESCRIPTION
/usr/share/snmp/mibs/mib-rfc2863a.txt- "This object is an 'alias' name for the interface as
$
snmpget
DisplayString SIZE 매개변수로 정의된 문자 수(예: 처음 64개의 "x" 문자)가 표시될 것으로 예상했습니다 . DisplayString SIZE가 출력에 영향을 줍니까 snmpget
? 그렇다면 어떻게? 아니면 DISPLAY-HINT 매개변수가 SNMP GetResponse 값의 출력을 실제로 변경하는 유일한 매개변수입니까?
답변1
클라이언트 MIB의 정보는 서버/스위치에서 받는 값과 관련이 없으며, 그래서도 안됩니다.snmpget
단순히 Cisco 스위치 SNMP 에이전트가 제공하는 내용을 반환합니다. 이 경우 MIB는 대부분 지침입니다. Cisco의 구현이 길이가 0~255일 수 있는 DisplayString의 SMIv2 정의를 준수하는 한 Cisco는 원하는 대로 MIB를 자유롭게 구현할 수 있습니다.https://www.rfc-editor.org/rfc/rfc2579). 이는 RFC 2863의 표준이기도 합니다(참조:https://www.rfc-editor.org/rfc/rfc2863).