Работа с сетевым монитором (часть 3)
- Работа с сетевым монитором (часть 4)
подпишитесь на информационный бюллетень обновления статей WindowsNetworking.com в реальном времени
До сих пор в этой серии статей я показал вам некоторые основные приемы сбора данных с помощью сетевого монитора. В этой статье я хочу продолжить обсуждение, показав вам, как анализировать собранные вами данные.
Чтобы упростить задачу, давайте выполним захват пакета с помощью простой операции ping. Для этого войдите на сервер, на котором вы будете запускать сетевой монитор, и откройте окно командной строки. Когда откроется окно командной строки, введите команду PING, затем пробел и полное доменное имя или IP-адрес компьютера в вашей сети, но пока не нажимайте Enter. Теперь откройте сетевой монитор и выберите команду «Пуск» в меню «Захват». Немедленно переключитесь в окно командной строки и нажмите Enter, чтобы выполнить команду PING. Команда должна вернуть четыре результата, как показано на рисунке A. Как только команда завершит выполнение, вернитесь к экрану сетевого монитора и выберите команду «Стоп» в меню «Захват». При этом вы перехватите пакеты, связанные с командой PING, но, вероятно, также перехватите некоторый несвязанный трафик.
Рисунок A. Команда PING должна вернуть четыре результата.
После остановки процесса захвата щелкните значок Показать захваченные данные ( ) для просмотра захваченных данных. Фактический объем данных, которые будут отображаться как часть захвата, зависит от того, насколько загружена ваша сеть и сколько времени требуется для выполнения команды PING. В лабораторной сети вы можете захватить только несколько десятков кадров, в то время как при захвате данных из производственной сети вы почти наверняка захватите намного больше кадров. Например, когда я попробовал эту процедуру во время написания этой статьи, я заснял почти шестьсот кадров в течение примерно пяти секунд.
Дело в том, что если бы вы использовали сетевой монитор для устранения неполадок в сети в реальном мире, вы почти наверняка зафиксировали бы какие-то нерелевантные данные. Знание того, как просеять эти лишние данные, является важным навыком, потому что в противном случае поиск данных, которые вас действительно интересуют, может быть подобен поиску иголки в стоге сена.
Если вы посмотрите на рисунок B, вы заметите, что было захвачено довольно много пакетов. Наша задача — фильтровать пакеты, не связанные с активностью, которую мы пытались зафиксировать, чтобы упростить анализ захваченных пакетов.
Рисунок B. Сетевой монитор часто фиксирует трафик, не связанный с активностью, которую вы пытаетесь проанализировать.
Для этого щелкните значок «Фильтр» на панели инструментов. Когда вы это сделаете, вы увидите довольно устрашающее диалоговое окно, как показано на рисунке C. Это диалоговое окно сообщает вам, что прямо сейчас сетевой монитор показывает вам все захваченные данные, независимо от протокола или IP-адреса.
Рисунок C. Диалоговое окно «Фильтр отображения» может показаться немного пугающим.
Однако мы выполнили PING с одной машины на другую и знаем IP-адреса, которые участвовали в PING. Поэтому мы можем фильтровать по этим адресам. Для этого выберите строку ANY <-> ANY и нажмите кнопку Edit Expression. Теперь вы увидите экран, подобный показанному на рисунке D.
Рисунок D. Диалоговое окно «Выражение» позволяет выбрать адреса, участвующие в диалоге.
Этот экран позволяет вам выбрать адреса двух машин, участвующих в разговоре. Обычно вы просто выбираете исходный и конечный адреса, проверяете, что столбец направления установлен на <-> и нажимаете OK. В данном конкретном случае все немного сложнее.
На рисунке вы заметите, что с машиной FUBAR связано несколько IP-адресов. Это потому, что эта машина является веб-сервером и содержит несколько сайтов, каждый со своим собственным адресом. В подобной ситуации вы должны выбрать основной адрес машины, если у вас нет особой причины для использования одного из других адресов.
Еще одна вещь, которая делает этот экран немного сложным, заключается в том, что адрес машины назначения не отображается. Вы можете исправить это, нажав кнопку «Редактировать адреса». При этом отобразится список всех адресов из предыдущего списка. Нажмите кнопку «Добавить», и вам будет предоставлена возможность добавить адрес в список. Обратите внимание на рис. E, что вы должны выбрать тип добавляемого адреса (IP или MAC). Нажмите «ОК», а затем «Закрыть», и адрес будет добавлен в фильтр адресов.
Рисунок E: Вы можете вручную добавить адрес в список
Теперь выберите IP-адреса, участвующие в интересующем вас разговоре, и дважды нажмите «ОК». Список захваченных кадров теперь фильтруется, чтобы отображать только трафик с выбранных машин, как показано на рисунке F.
Рисунок F. Мы отфильтровали список захваченных данных, чтобы отобразить только интересующие нас кадры.
Поскольку наш захват включал только команду PING, у вас не должно возникнуть проблем с поиском данных, которые вы ищете. Однако в реальном мире есть вероятность, что данные, которые вы пытаетесь захватить, могут даже не существовать в захвате. Есть два основных условия, которые могут вызвать это.
Первая причина, по которой ваш файл захвата может не содержать интересующих вас данных, заключается в том, что большинство компаний перешли от концентраторов к коммутаторам. В сети, в которой используются концентраторы, каждый компьютер в концентраторе получает одинаковый трафик. Когда компьютеру необходимо связаться с другим компьютером, он помещает пакет в проводную сеть, и этот пакет отправляется на каждый компьютер, подключенный к концентратору. Каждый компьютер просматривает адрес назначения, указанный в заголовке пакета, чтобы проверить, предназначен ли пакет для этого компьютера. Если адрес назначения совпадает с MAC-адресом компьютера, компьютер открывает пакет и обрабатывает его содержимое. В противном случае пакет игнорируется.
Все работает по-другому, если задействован переключатель. Когда компьютер отправляет пакет, коммутатор фактически просматривает заголовок пакета, чтобы определить предполагаемого получателя пакета. Затем коммутатор пересылает пакет на порт коммутатора, к которому подключен получатель. Компьютеры, кроме отправителя и получателя, совершенно не обращают внимания на разговор.
Причина, по которой коммутаторы начали заменять концентраторы, заключается в том, что коммутаторы гораздо более эффективны (и более безопасны), чем концентраторы. Если используется концентратор и два компьютера пытаются передать данные одновременно, происходит коллизия, при которой оба пакета уничтожаются. Каждый из двух компьютеров ждет случайное количество времени перед повторной передачей данных. Чем больше компьютеров подключено к сети, тем больше конфликтов происходит. Конечно, чем больше коллизий, тем ниже производительность сети. Поэтому снижение цен и потребность в большей производительности заставили многие компании перейти на коммутаторы.
Коммутаторы особенно проблематичны, когда речь идет о сборе данных с помощью сетевого монитора. Из-за того, как работают коммутаторы, вы сможете собирать данные, отправляемые на или с компьютера, на котором работает сетевой монитор.
Еще одним условием, которое может привести к тому, что нужные пакеты не будут перехвачены, является использование виртуальных машин. Если на одном сервере размещено несколько виртуальных машин, то трафик, проходящий между этими виртуальными машинами, скорее всего, не будет перехвачен, поскольку трафик между виртуальными машинами, размещенными на одном сервере, обычно не передается по сети. Можно настроить виртуальные машины так, чтобы трафик между ними направлялся в сеть, но это выходит за рамки данной статьи.
Вывод
В этой статье я объяснил необходимость фильтрации захваченных данных и объяснил, почему вы можете не захватить все ожидаемые данные. В части 4 я продолжу обсуждение, показав вам, как анализировать отфильтрованные данные.
- Работа с сетевым монитором (часть 4)
подпишитесь на информационный бюллетень обновления статей WindowsNetworking.com в реальном времени