@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 #
  • Вопрос задан
  • 3010 просмотров
Решения вопроса 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).

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

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

Войти через центр авторизации
Похожие вопросы