У меня система только с IPv6 (не с двойным стеком). Мне интересно, как:
- отправить snmptrap из этой системы? - настроить snmpd для доступа к ней?
Я имею в виду, готов ли SNMP к использованию в среде только IPv6?
решение1
По вашему мнению, необходимо указатьudp6.
Отправка: trap2sink udp6:[::1]:162
в snmpd.conf Это приведет к отправке на локальный хост 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
Как root, я дал команду /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
. Мне нужно использовать -m ALL, потому что что-то не так с настройкой моих файлов MIB — мне нужно над этим поработать. Если вы получите сообщение об ошибке «coldStart.0: Unknown Object Identifier (Sub-id not found: (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