저는 IPv6(듀얼 스택 아님) 시스템만 가지고 있는데 해당 시스템에서 snmptrap을 보내는 방법을 알고 싶습니다 . - snmpd에 액세스할 수 있도록 구성하시겠습니까?
즉, 순수 IPv6 환경에서 snmp를 사용할 수 있습니까?
답변1
무엇을 지정해야 하는지에 따라UDP6.
보내기: trap2sink udp6:[::1]:162
snmpd.conf에서는 localhost IPv6로 전송됩니다.
인수하다:snmptrapd udp6:162
답변2
먼저 snmptrapd를 시작하여 IPv6를 모니터링합니다.
/usr/sbin/snmptrapd -On -Lsd -f -p /run/snmptrapd.pid udp:162,udp6:162
그런 다음 트랩을 보냅니다.
/usr/bin/snmptrap -Lo -v2c -c public udp6:[2001:db:8::beef]:162 "" .1.3.6.1.2.1.31337.0
답변3
루트로서 명령을 실행 /usr/sbin/snmptrapd udp:162,udp6:162
하고 snmptrapd를 시작합니다. 명령을 사용하여 이를 확인합니다 ps -u root | fgrep snmptrapd
. 그런 다음 트랩을 보내십시오. 제 경우에는 IPv6 주소가 2601:602:8500:1b2:5a74:16a3:770f:40ce이므로 명령은 입니다 snmpinform -v 2c -m ALL -c public 2601:602:8500:1b2:5a74:16a3:770f:40ce 145 coldStart.0
. MIB 파일 설정 방식에 문제가 있었기 때문에 -m ALL을 사용해야 했습니다. 이를 수정해야 했습니다. "coldStart.0: 알 수 없는 개체 식별자(하위 ID를 찾을 수 없음: (top)->ColdStart)" 오류가 발생하는 경우 귀하도 나와 같은 문제를 겪고 있는 것일 수 있습니다. 알려주세요. 오류 메시지가 나타나지 않으면 -m ALL 옵션을 무시하십시오. ColdStart.0은 표준 OID 중 하나입니다. 이 테스트의 OID가 무엇인지 모르겠습니다. 난 무엇인가?하다문제는 145번이다. 명령을 내릴 때마다 snmpinform
다른 숫자가 선택됩니다. 가급적이면 더 큰 숫자가 선택됩니다. 이렇게 하면 로그 파일을 추적하는 것이 더 쉬워집니다.
이것은 최선의 해결책이 아닙니다. 가장 좋은 해결책은 다음을 사용하는 것입니다.
snmpTrapdAddr upd6:162
/etc/snmp/snmptrapd.conf 파일의 매개변수입니다. 이것이 제가 처음에 여기에 온 이유입니다.
snmptrapd를 올바르게 설정하면 /var/log/syslog에 다음과 같은 항목이 있습니다.
Jan 10 02:04:35 jeffs-desktop snmptrapd[405089]: 2021-1-10 2:4 0.0.0.0 Cold Start