Материал просмотрен 912 раз(а)

Здравствуйте, товарищи! Время от времени у нас случаются казусы, когда сеть перестаёт нормально работать и приходится засучив рукава брать в одну руку пинг, в другую – обжимку. Ну или ещё что-нибудь, с чем привыкли работать. Безусловно, у каждого из нас выработался собственный план устранения неполадок и нельзя сказать, что какой-то – правильный, а у другого – нет. Ниже я постараюсь обобщить некоторые стратегии и методы поиска ошибок, которые могут быть вам полезны в будущем.

Карта сети

Как понять почему не работает сеть

  1. Прогнозирование нормальной работы.
    На этом этапе мы должны понять, какое поведение (состояние) будет являться ожидаемым, то есть как должны вести себя устройства/пакеты данных при нормально функционирующей сети. Для того, чтобы выполнить этот этап, сетевой инженер должен знать механизмы взаимодействия различных сетевых устройств друг с другом. Если в сети используются VLAN-ы, значит коммутаторы должны принимать решение о перенаправлении на основе записей с данными конкретного VLAN в таблице коммутации. Здесь пригодятся знания служебных протоколов как уровня данных (связанные непосредственно с передачей данных), так и протоколов уровня управления (связанные с организацией, настройкой устройств и согласования режимов), например CDP, VTP.
    Анализ  уровня данных можно начинать с уровня 3 сетевого взаимодействия, то есть следования протокола IP. На этом этапе на плане сети нужно иметь условные обозначения всех устройств и линий связи. Нанести IP адреса, маски сетей и основные шлюзы. Не лишним будет и таблица маршрутизации, если её возможно обозначить. Следующим шагом мы обозначим уровень 2 на нашей “карте”, только в место IP адресов будут MAC-адреса источника/получателя, различные сети VLAN, состояния портов в случае использования STP (обозначен корневой коммутатор, блокированные и выделенные порты).
  2. Локализация поломки.
    Далее, нам нужно максимально сузить поле поиска, чтобы найти конкретное устройство (или пару устройств), нормальная работа которого была нарушена. Как правило, мы постепенно диагностируем различные участки сети опираясь на результаты первого пункта и выясняем, где именно собака порылась. Снова начинаем с уровня 3. В этом случае нам очень поможет утилита ping, при помощи которой можно попарно проверить все устройства. Облегчить задачу может также умение пользоваться сниффером tcpdump (wireshark) или debug, так как проблемы в передаче данных могут быть однонаправленными. В целом, здесь работа ведётся с протоколом ICMP как основным, он поможет выявить проблемы маршрутизации (когда возвращается сообщение о недоступности сети/хоста), зацикливания (истекает TTL) и т.д. В дальнейшем, для уточнения (а на этом этапе мы только уточняем) картины, мы будем прибегать к различным протоколам (DNS, ARP, DHCP,… ) чтобы найти ту самую проблемную связку, из-за которой работа сети нестабильна или ошибочна. Здесь вполне может сложиться такая ситуация, когда неисправность выражается в одном проявлении (не получили MAC-адрес назначения по протоколу ARP), а сама первопричина совсем в другом участке (неисправность магистрального канала, благодаря которой широковещательный ARP-запрос не был доставлен)
  3. Анализ причин.
    После того, как найден проблемный узел, можно приступить к анализу подобного поведения. Здесь опять же пригодится результат прогнозирования нормальной работы, дабы сравнить функционирование узла с ожидаемым. В чём может быть причина? Интерфейс в состоянии down/down, не хватает записи в таблице маршрутизации, сработала защита и порт заблокирован, какое-то правило на файрволле…