Задать вопрос
@sergey_privacy
Админ со стажем, начинающий DevOps

Почему snmpget freebsd не получает данные с циски, доступной по пингу?

Добрый день!
Установил сервер на FreeBSD 10 с модулем net-snmp. Пингую с сервера маршрутизатор, пинг проходит нормально, они в одной подсети друг с другом находятся. snmpget не получает данные с цисок, которые по пингу доступны, при этом соседний сервер с этих маршрутизаторов данные получает. Чтобы проверить работу самой программы snmpget, я забрал данные с принтсерверов, сетевых принтеров - все получил.

root@usomonitor:/home/dark # snmpget -v2c -c public 10.141.1.95 1.3.6.1.2.1.1.1.0
SNMPv2-MIB::sysDescr.0 = STRING: Xerox Phaser 3600; OS 1.70.01.24 04-04-2008, NIC V4.01.03(P3600) 03-19-2008, Engine 1.10.71, Duplex 1.00.03 , PCL5e 5.73 02-29-2008, PCL6 5.57  11-28-2007, PS3 1.76.76 02-20-2008, IBM/EPSON 5.18 11-07-2007


root@usomonitor:/home/dark # snmpget -v2c -c public 10.141.1.1 1.3.6.1.2.1.1.1.0
SNMPv2-MIB::sysDescr.0 = STRING: Cisco IOS Software, s72033_rp Software (s72033_rp-IPBASE-M), Version 12.2(33)SXJ1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2011 by Cisco Systems, Inc.
Compiled Wed 22-Jun-11 18:03 by prod_rel_team


root@usomonitor:/home/dark # snmpget -v2c -c public 10.141.100.9 1.3.6.1.2.1.1.1.0
Timeout: No Response from 10.141.100.9.


root@usomonitor:/home/dark # ping -c 2 10.141.100.9
PING 10.141.100.9 (10.141.100.9): 56 data bytes
64 bytes from 10.141.100.9: icmp_seq=0 ttl=254 time=0.240 ms
64 bytes from 10.141.100.9: icmp_seq=1 ttl=254 time=0.315 ms

--- 10.141.100.9 ping statistics ---
2 packets transmitted, 2 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.240/0.277/0.315/0.038 ms
root@usomonitor:/home/dark #
  • Вопрос задан
  • 3031 просмотр
Подписаться 3 Оценить Комментировать
Решения вопроса 1
@sergey_privacy Автор вопроса
Админ со стажем, начинающий DevOps
Проверьте, отличаются ли настройки snmp на 10.141.1.1 и 10.141.100.9. В частности, контроль доступа.

2 сервера на freebsd, находятся в одной подсети с маршрутизаторами. С одного все данные получаются, с другого - нет. Ограничение стоит на другие сети, в данной подсети ограничений нет, тем более, для одного конкретного хоста. Команда из одной консоли скопирована в другую, т.е. ошибок быть не может.

UPD: Проблему решил. Не заметил одну злую строчку в access-листах, которая все и обрубала на некоторый диапазон адресов, в который попал этот сервер.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
RicoX
@RicoX
Ушел на http://ru.stackoverflow.com/
На циске может быть открыт snmp только для определенных IP и это правильно, чтоб не допускать amplification атак с использованием циски. Смотрите фаирвол и ACL. Также приложите вывод:
show running-config | i snmp
Ответ написан
Комментировать
@throughtheether
human after all
Проверьте, отличаются ли настройки snmp на 10.141.1.1 и 10.141.100.9. В частности, контроль доступа. Проверьте, на интерфейсах по пути от хоста к 10.141.100.9 есть ли аксесс-листы, влияют ли они на SNMP пакеты.

UPD:
2 сервера на freebsd, находятся в одной подсети с маршрутизаторами.
То есть оба адреса 10.141.1.1 и 10.141.100.9 (я ведь правильно понял, это адреса маршрутизаторов?) входят в один префикс (/17 или короче), используемый на L2-домене(линке)?
С одного все данные получаются, с другого - нет. Ограничение стоит на другие сети, в данной подсети ограничений нет, тем более, для одного конкретного хоста.
Вообще-то, как правило, принято (этому способствует логика настройки) разрешать SNMP-доступ для каждого конкретного хоста, а не "ограничивать сети". Приведите конфигурацию каждого из маршрутизаторов в части SNMP.
Команда из одной консоли скопирована в другую, т.е. ошибок быть не может.
ошибок быть не может.
Как много раз я это слышал.

UPD2:
Откуда взялась совершенно бредовая маска /17 я не совсем понял. Разве я такую маску упоминал?
Вы писали:
2 сервера на freebsd, находятся в одной подсети с маршрутизаторами.
в одной подсети с маршрутизаторами
в одной подсети
, при этом адреса маршрутизаторов указаны как 10.141.1.1 и 10.141.100.9. Я предположил, что "одна подсеть" включает в себя оба этих адреса. Оба этих адреса могут входить в один префикс, если его длина /17 (10.141.0.0/17) и короче. Вы могли сразу указать, что каждый сервер имеет по одному интерфейсу в одной подсети с каждым маршрутизатором, что избавило бы от двояких прочтений. Выражайтесь корректнее, пожалуйста.

С одного все данные получаются, с другого - нет.
Вы не могли бы уточнить, вы, действуя с каждого из серверов, не можете получить данные с одного конкретного маршрутизатора (10.141.100.9), я правильно вас понял?

Далее, предлагаю исследовать проблему по частям. Подобная ошибка, предполагаю, может возникать по следующим причинам:
1) snmp-запрос не доходит до устройства
2) snmp-сервер на устройстве работает некорректно/не работает вообще
3) snmp-сервер на устройстве работает корректно, запрос некорректен
4) snmp-ответ на запрос не доходит до сервера.

Сразу несколько пунктов вы можете проверить командой Cisco CLI show snmp. Посмотрите, какие именно счетчики (в разделе X SNMP packets input, где X - число) увеличивают значение при выполнении запроса с сервера.

Если все счетчики сохраняют значение - запрос не доходит до устройства (п.1).
Если растет количество Unknown community name - то или запрос содержит неверное значение community string (пример: publiс вместо public, п.3), либо snmp настроен с ACL.
Если ответ - %SNMP agent not enabled, то SNMP-сервер на устройстве неактивен (п.2).

Есть еще некоторое количество возможных вариантов, включая маловероятные и экзотические, которые я пока отложу до ваших новых ответов, воспользовавшись вашим замечательным советом
Не надо придумывать лишних сложностей.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы