Самый простой метод диагностики ошибок и сбоев в коммутируемой сети – подключение устройства для мониторинга (например, анализатора протоколов) к любому свободному порту коммутатора (см. Рисунок 1).

Рисунок 1. Мониторинг осуществляется через любой свободный порт.

Такое подключение позволяет прибору, наряду с рабочими станциями, получить доступ к широковещательному домену и не оказывает никакого влияния на работу остальных сегментов сети.

К сожалению, невозможно определить, относится ли свободный порт к той же самой виртуальной локальной сети VLAN (широковещательному домену), что и проблемное соединение – для этого необходим консольный доступ или, как вариант, документация на сеть, однако она крайне редко содержит нужные подробности, а включенная в нее информация далеко не всегда актуальна и соответствует текущему положению дел. Кроме того, необходимо учитывать, что даже если сетевая документация соответствует действительности, возникшая проблема может свести на нет ее ценность, если ее причиной была ошибка в конфигурации или кабельной системе.

ПАССИВНЫЙ МОНИТОРИНГ

Плюсы. Для пассивного мониторинга не нужны ни специальные настройки, ни другие условия. При наличии достаточного терпения рано или поздно вам удастся увидеть трафик практически от всех сетевых устройств, находящихся в данном широковещательном домене, поскольку таблица адресов подвержена старению и периодически обновляется, а установление соединений через мост происходит в соответствии с базовыми процедурами.

Минусы. Пассивный мониторинг предполагает, что устройство для мониторинга никакой передачи не осуществляет. Если запросы не отправляются, то коммутатор никогда ничего не узнает о MAC-адресе устройства и откликов на отсутствующие запросы не будет. В абсолютном большинстве случаев в нормальной сети при пассивном мониторинге вы увидите только очень небольшой трафик, который состоит из широковещательных служебных уведомлений или сообщений широковещательных протоколов, например, ARP.

Подключение к сети прибора для мониторинга помогает собирать первоначальную информацию при поиске уязвимых мест в защите сети. Получаемый случайным образом незапрашиваемый трафик сам по себе зачастую указывает на нарушение системы безопасности. В защищенных сетях всегда принимают меры для выявления активного соединения на порту коммутатора, когда устройство, установленное на противоположном конце, не имеет ассоциированного с ним MAC-адреса или адрес не известен.

Как показано на Рисунке 2, на устройство для мониторинга поступает очень мало трафика. Тестер может получать всего несколько пакетов в секунду вместо тех тысяч в секунду, которые циркулируют между рабочими станциями и сервером.

Рисунок 2. Коммутаторы маршрутизируют трафик от отправителя к порту назначения.

АКТИВНЫЙ МОНИТОРИНГ

Плюсы. Активный мониторинг, точнее, сочетание активного и пассивного мониторинга – прекрасный метод, позволяющий быстро получить список станций в широковещательном домене, а также представление о том, какие сервисы доступны этим станциям.

Данный метод помогает попутно идентифицировать многие распространенные сетевые проблемы, включая повторяющиеся IP-адреса, неправильно настроенные рабочие станции и некорректно работающие серверы DHCP и маршрутизаторы.

Минусы. Активный опрос устройств в широковещательном домене и запрос трафика, конечно, очень полезны для выявления других устройств в сети и поиска прочих сбоев, однако они вряд ли помогут узнать, почему сеть работает медленно.

Активное обнаружение позволяет выявить устройства в сети, но определить, что делают эти устройства, невозможно.

ПОВЕДЕНИЕ МОСТОВ

Коммутатор, который мы рассматриваем как многопортовый мост, направляет на порт, где осуществляется мониторинг, лишь крохотную долю трафика. Это обычное поведение для моста, функционирующего таким образом, чтобы лишний трафик не поступал на другие порты. Продвижение трафика через мост организуется несколькими способами. Некоторые коммутаторы позволяют изменять метод продвижения, однако в сетях Ethernet по умолчанию применяется технология прозрачного моста (transparent bridging).

При прозрачной пересылке трафика местоположение адресата должен определять сам мост. Для этого все пакеты с неизвестным получателем направляются на все порты, за исключением того, откуда поступил пакет. Как только адресат откликнется на запрос, все мосты вдоль маршрута узнают, на какой порт следует пересылать последующий трафик, и направляют его только туда. Таков порядок действий в случае отдельно взятого коммутатора, а также всех коммутаторов, установленных параллельно, подключенных в каскад или составляющих любую другую иерархическую конфигурацию.

Этот метод можно несколько упростить, если коммутатор будет записывать MAC-адреса отправителей любого трафика и связывать их с конкретными портами. При этом не важно, обслуживает ли этот порт отдельную рабочую станцию, концентратор или магистральный канал (uplink) к другому коммутатору. Любой трафик, предназначенный определенному MAC-адресу, направляется на этот порт и никуда более. Пока коммутатор не обнаружит пакет, у которого в поле отправителя содержится данный MAC-адрес, у него не появится соответствующей записи в таблице маршрутизации для пересылки трафика на этот MAC-адрес уже в качестве получателя, и, следовательно, до тех пор все пакеты такого трафика будут рассылаться всем получателям.

Поскольку нет никакой гарантии, что MAC-адрес будет навечно привязан к данному порту, для каждой записи в таблице пересылки установлен период устаревания, по окончании которого следующий пакет, направленный на этот же MAC-адрес, будет снова отправлен всем получателям. Период устаревания зависит от настроек по умолчанию, заданных производителем коммутатора, от конфигурации коммутатора, статических записей в таблице и других факторов. Функция роуминга в беспроводных сетях основана на том же принципе устаревания, хотя использует и иные технологии для быстрого обновления таблиц пересылки.

Итак, трафик, транслируемый на порт (см. Рисунок 2), к которому мы подключили устройство для мониторинга, будет практически полностью состоять из широковещательного трафика и много-адресных рассылок, и лишь изредка в нем станут появляться пакеты, рассылаемые всем, поскольку местоположение адресата неизвестно. Такие пакеты, скорее всего, окажутся следствием устаревания таблиц маршрутизации на мостах либо результатом работы таких широковещательных протоколов, как ARP, и лишь изредка свидетельством действительно неизвестного адресата.

Многие неопытные сетевые специалисты замечают абсолютное доминирование широковещательных рассылок в процентном распределении трафика (почти 100%), но не обращают внимания на чрезвычайно низкий уровень использования. И тогда они делают неверный вывод о том, что имеет место широковещательный шторм, либо ошибочно относят такой высокий процент широковещательного трафика к характеристикам нормального состояния данной сети.

КОНТРОЛЬ ДОСТУПА

С каждым днем контроль доступа по протоколу 802.1X становится все популярнее, поскольку поддерживает различные методы аутентификации для предоставления доступа к главной сети. Любая станция, подключенная к коммутатору, сначала проходит процедуру аутентификации и лишь затем допускается в широковещательный домен.

Это может быть реализовано разными способами: путем полной блокировки станции; переводом ее в состояние «удержания» в отдельном широковещательном домене до тех пор, пока не будет успешно пройдена процедура аутентификации; помещение станции в незащищенный широковещательный домен с доступом в Internet, но без доступа к локальной сети, когда ее не удается идентифицировать. Внедрение протокола 802.1X приводит к определенным сложностям при пассивном мониторинге. Ниже перечислены только некоторые из них.

Полное отсутствие трафика. Коммутатор направляет на порт какой-либо трафик лишь после отправки станцией запроса на аутентификацию, поэтому, вплоть до успешного завершения аутентификации, в сети будут видны только пакеты, связанные с этой процедурой.

Очень маленький трафик. Пока станция не прошла аутентификацию, для наблюдения доступна очень малая доля трафика. «Наблюдаемость» отдельных видов трафика зависит от различных факторов и имеет свои отличия в разных сетях, а может быть, даже внутри одной сети – для разных точек подключения. Вот очень краткий список вариантов (на самом деле их гораздо больше):

  • только запрос коммутатора на аутентификацию;
  • трафик протокола связующего дерева;
  • внутренний трафик (например, по протоколу LLDP);
  • пакеты, направляемые всем («адресат неизвестен»);
  • широковещательные пакеты и многоадресные рассылки;
  • трафик из карантинного широковещательного домена.

Тем не менее, несмотря ни на какие отдельные «просачивающиеся» пакеты, подключенная станция не может запрашивать у защищенной сети какой-либо трафик. В зависимости от конфигурации коммутатор может предоставлять доступ в карантинную сеть, через которую посетители получат выход в Internet, но блокировать доступ к любым сетевым ресурсам в локальной защищенной сети.

НАСТРОЙКИ ДУПЛЕКСА И АВТОСОГЛАСОВАНИЯ

Практически на всех новых интерфейсах Ethernet по умолчанию установлена настройка автоматического согласования (Auto-Negotiation). Разумное, с нашей точки зрения, решение. Тем не менее, многие производители не согласны с таким подходом – возможно, потому, что далеко не все специалисты по сетям хорошо разбираются в том, как это работает.

Вероятность того, что при автосогласовании не удастся установить надежное соединение, очень низка. Действительно, иногда подобное происходит, но почти все производители уже разобрались в этой проблеме и устранили ее, создав или обновив соответствующие программы, а остальные в любой момент готовы воспользоваться вашими замечаниями и устранить ошибку. Более подробно принципы автосогласования изложены в стандарте IEEE 802.3, статья 28.

Рабочая станция, инициирующая процесс автосогласования, отправляет сигнал с квитированием — импульс быстрого канала (Fast Link Pulse, FLP). Он состоит из пакета обычных импульсов, типичных для сетей 10BaseT. Импульс FLP описывает возможности отправляющей его рабочей станции. Если устройство на дальнем конце тоже отправляет импульсы FLP, то импульсы сравниваются и на основании полученной информации выбираются наилучшие характеристики, которые оба устройства способны обеспечить. Затем они приступают к обмену информацией по выбранному варианту канальной технологии.

Если при выполнении автосогласования станция не получает импульсов FLP от устройства на противоположном конце линии, она пытается сама определить скорость передачи. В случае обоюдной возможности поддерживать одну и ту же скорость определение скорости почти всегда пройдет успешно.

Когда станция, выполняющая автосогласование, не получает импульсов FLP от другого устройства, она обязана выбрать для соединения полудуплексный режим и не станет пытаться определить параметры дуплексного режима для второго устройства, если импульсов FLP по-прежнему нет. Незнание этого правила является, пожалуй, основной причиной неверных настроек дуплексного режима. К сожалению, среди сетевых инженеров широко распространено заблуждение, что станция, осуществляющая автосогласование, сумеет определить настройки дуплексного режима у удаленного устройства, если они зафиксированы принудительно.

Еще одно ложное представление о работе сетей состоит в следующем: несоответствие настроек дуплексного соединения ведет к неработоспособнос-ти канала. На самом деле, если настройки дуплексного режима не совпадают, то в сети начнут возникать ошибки, ее работа замедлится, но трафик все-таки будет передаваться от одного устройства другому. Если имеет место несоответствие настроек дуплексного режима для соединения между коммутаторами, то ошибки можно посмотреть в отчетах для данного интерфейса и, исходя из особенностей этих ошибок, узнать настройки дуплексного режима для каждого из устройств.

С точки зрения мониторинга и безопасности сети несоответствие настроек дуплексного режима имеет определенное значение, хотя и не критическое. Если несоответствие наблюдается на интерфейсе, к которому подключено устройство для пассивного мониторинга, тогда никаких проблем в сети обнаружить не удастся, так как оно не осуществляет передачу. Если настройки дуплексного режима различаются у двух устройств на противоположных концах сегмента, причем оба активно передают пакеты, то можно говорить о двух факторах. Часть пакетов будет утеряна из-за ошибок в процессе передачи. Повторная отправка таких пакетов на MAC-уровне осуществляться не будет. В результате системе придется устранять последствия на более высоких уровнях, какими бы они ни были. Если достаточное количество пакетов признают обычными столкнувшимися пакетами, то MAC-уровень попытается послать их заново, однако буфер начнет резервировать данные и сбрасывать пакеты, которые должны передаваться через этот интерфейс. Потеря пакетов может повлиять на анализ проблем в сети и воспрепятствовать сбору достоверных данных, ведь в таких условиях невозможно однозначно определить, были ли пакеты сброшены, в каком количестве и когда.

Некоторые коммутаторы по умолчанию настроены таким образом, что отключают любой порт, если на нем наблюдается чрезмерное количество коллизий, причем независимо от того, установлен ли в результате автосогласования полудуплексный режим или нет. Для коллизионных доменов с разделяемой средой передачи предусмотрена процедура арбитража конфликтов в среде передачи 802.3, но в результате порт, на котором наблюдаются такие коллизии, блокируется или отключается коммутатор. Cisco, например, называет такой параметр «errdisable» – отключение (блокировка) ошибок.

Игорь Панов — региональный менеджер по продукции и поддержке партнеров Fluke Networks в России и СНГ. С ним можно связаться по адресу: igor.panov@flukenetworks.com.