Домой / Настройка Wi-Fi / Реферат: Сетевые анализаторы. Анализаторы сетевых пакетов Анализ сетевых пакетов

Реферат: Сетевые анализаторы. Анализаторы сетевых пакетов Анализ сетевых пакетов

Анализатор сетей Ethernet METROSCOPE™

Компания Fluke Networks , представляет обновлённый анализатор сетей Ethernet - MetroScope .

Анализатор MetroScope предназначен для тестирования и документирования качества доступа и предоставляемых сервисов по каналам Ethernet.

Прибор используется как для квалификации новых подключений, так и для решения проблем с существующими. Тесты, использующиеся для решения данных задач: определение числа ошибочных битов ошибок BERT,тесты по рекомендации RFC 2544 и новая оригинальная методика тестирования ProVision™ . Совокупность этих тестов и методик позволяют измерять производительность Ethernet каналов провайдеров и корпоративных клиентов, проводить аудит и мониторинг за работой сети, а также контролировать доступность ключевых сервисов – сервера (HTTP, DNS, Mail и т.д.), VoIP, IPTV.

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


Функциональные особеннности:

  • Набор тестов ProVision™ - улучшенное тестирование каналов Carrier Ethernet
  • Тесты в соответствии с RFC2544
  • Интегрированный VoIP SIP телефон с функцией измерения MOS
  • Базовое тестирование каналов для поддержки IPTV
  • Многопоточное тестирование с разным приоритетом, для разных виртуальных каналов и в разных направлениях.
  • Измерение джиттера с точностью до 40наносекунд
  • Тестер частоты ошибок по битам (BERT тесты)
  • Декодирование и отображение стекированных VLAN (QinQ) – двойное тегирование
  • Возможность фильтрации по номеру VLAN
  • Средства для измерения времени отклика серверов (HTTP, DNS, Mail и т.д.)
  • Генерация пакетов с ошибками CRC для оценки реакции активного оборудования
  • Поддержка устройств стандарта 802.3ah
  • Тестирование беспроводных сетей 802.11a/b/g
  • Измерение джиттера с точностью до микросекунд
  • Результат тестирования Прошел/Не прошел для всех тестов
  • Возможности создания отчетов о тестировании и создания сценариев тестов с настраиваемыми пользователями пределами тестов
  • Возможность выбора длины кадра любого размера (до 2048байт)
  • Отчеты содержат комментарии пользователя, логотип компании, настройки прибора, трассировку маршрута
  • Работа в режиме удаленное устройство/отражение/петля:
  • Второй MetroScope
  • Дистанционный тестер LinkReflector
  • Петля на базе порта активного оборудования
  • Зонд Visual UpTime Select от компании Fluke Networks
  • Устройство, поддерживающее стандарт 802.3ah
  • Встроенные средства управления сетевыми устройствами (telnet, эмуляцию терминала, FTP и интернет-браузер)
  • Тестирование как проводных (медь и оптика), так и беспроводных сетей стандарта 802.11


Сравнение методов тестирования: RFC 2544 VS ProVision

ProVision тест, разработанный для проверки каналов MetroEthernet в реальных, а не лабораторных условиях имеет ряд преимуществ, по сравнению с используемыми сегодня тестами по методике RFC 2544.

  1. Тесты RFC 2544 выполняются последовательно, т.е. один за другим, при использовании ProVision они выполняются одновременно. Это не только экономит время, но и позволяет не допустить ошибку, которая связана с задержкой в канале во время измерения пропускной способности.
  2. ProVision может быть настроен для проверки асимметричных каналов, используемых в xDSL.
  3. ProVision может тестировать несколько каналов с несколькими потоками одновременно (опция Multistream).
  4. Результаты тестов RFC 2544 обычно отображаются по отдельности, а с помощью тестов ProVision результаты отображаются на одном экране.
  5. Кроме обычного анализа минимумов, максимумов и средних значений полученных данных, с помощью ProVision мы можем строить тренды и анализировать их в реальном времени.

RFC 2 544

ProVision™

Пропускная способность (без потерь)

Пропускная способность (с потерями)

Пропускная способность асимметричных каналов

Задержка

Задержка

Вариация задержки

Да (обычно доступен)

Одновременная настройка всех тестов

Несколько потоков

Отображение результатов разных параметров

Отображение результатов по нескольким потокам

Одновременные измерения

Результаты в реальном времени

Трендинг

Тестирование каналов для поддержки IPTV

MetroScope имеет возможность генерации multicast трафика с помощью встроенного генератора трафика. Новое приложение «multicast application» позволяет подключиться к группе устройств и контролировать время отклика.


Мониторинг и анализ качества VoIP

В новой версии MetroScope доступна функция тестирования VoIP (опция), позволяющая:

  • выполнять вызовы с прибора на любой другой IP телефон
  • воспроизводить предварительно подготовленный файл в формате WAV
  • генерировать трафик и выполнять звонки с возможностью отображения графика с точностью до 1 секунды , который отображает качество речи (MOS, R-Factor, количество потерянных пакетов, вариацию задержки), продолжительность разговора и количество переданных кадров.

Автоматическое тестирование и инвентаризация сети.

При подключении к локальной сети MetroScope запускает процедуру автоматического обнаружения (до 1000 устройств). На экран прибора выводится информация о диапазоне IP-адресов, масках подсетей, контроллерах доменов и т.д. Все найденные устройства сети группируются в таблице по принадлежности к сетям IP, VLAN, IPX или NetBIOS. Функция поиска позволяет находить устройства по IP-адресу, имени или MAC-адресу.


Измерение времени отклика сервера

Данная функция позволяет измерить время отклика TCP-портов таких приложений, Mail, DNS, FTP или WWW. Тестирование портов приложений осуществляется в режиме клиента, что позволяет избавиться от препятствий для команды PING, таких как сетевые экраны и низкий приоритет протокола ICMP. Ответы портов приложений можно анализировать с помощью встроенной функции Trace Route, которая позволяет определить точное место снижения производительности на протяжении всего маршрута.


Мониторинг сетей VLAN

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



Анализ работы беспроводных сетей Wi - Fi (802.11 a / b / g )

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


Тестирование физического уровня ЛВС

Кроме того, анализатор MetroScope позволяет тестировать оптоволоконные и медные кабельные линии на физическом уровне.
При тестировании оптоволоконных линий контролируется входная и выходная мощность оптического сигнала, а также температура, ток смещения лазера и напряжение питания трансивера.
Что касается диагностики медных UTP кабелей, то приборопределяет место повреждения в кабеле (с помощью встроенного рефлектометра), составляет схему его разводки и генерирует тональный сигнал, используемый для трассировки кабеля (с помощью индуктивного щупа IntelliTone Pro или PRO3000)

В набор MTSCOPE-KIT дополнительно входит недорогой сетевой тестер LinkRunner DUO CE , позволяющий осуществлять end-to-end тестирование сетевых трактов на физическом, канальном и сетевом уровнях без использования второго прибора MetroScope.
Для тестирования нескольких сетевых соединений один анализатор MetroScope может взаимодействовать с неограниченным числом устройств LinkRunner DUO CE , которые не только «отражают» трафик, но и сами по себе являются мощными диагностическими приборами.

Сравнение моделей анализатора MetroScope


* Включая Device Discovery, Network Discovery, VLAN Discovery, Nearest Switch, Switch Scan, Key Devices, Problem Detection

** Тестирование может выполняться в режиме петли на физическом уровне или в качестве ответного устройства могут выступать LinkReflector, второй анализатор MetroScope, либо устройство, поддерживающее стандарт 802.3ah


Артикул Код по Каталогу Наименование
MTSCOPE-KIT MTSCOPE-KIT Комплект MetroScope SPA
MTSCOPE MTSCOPE Сетевой анализатор MetroScope SPA
LRPRO-REFLECT LRPRO-REFLECT Дистанционный тестер LinkReflector
LRPRO-LION LRPRO-LION Комплект литий-ионных аккумуляторов для LinkReflec
ES2-SX ES2-SX 1000BASE-SX гигабитный волоконно-оптический транси
ES2-ZX ES2-ZX 1000BASE-ZX гигабитный волоконно-оптический транси
ES2-LX ES2-LX 1000BASE-LX гигабитный волоконно-оптический транси
MS-SX MS-SX MS-SX, волоконно-оптический трансивер SFP, DDM, GI
ES-BATTERY ES-BATTERY Запасная батарея
ES-BATT-CHG ES-BATT-CHG Внешнее зарядное устройство для батареи
MS-AUTO-CHG MS-AUTO-CHG Зарядное устройство с питанием от прикуривателя
OPVS-KB Мини-клавиатура USB
944806 944806 Нуль-модемный кабель (DB9)
DTX-ACUN DTX-ACUN Блок питания, универсальный

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

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

В сети Ethernet существуют следующие основные возможности прослушивания трафика:

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

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

Примечание : Хорошим выбором базового инструмента для анализа сетевого трафика в графической среде является бесплатный пакет wireshark [ 43 ] , доступный для Windows и в репозиториях некоторых дистрибутивов Linux.

Утилита tcpdump

Консольная утилита tcpdump входит в состав большинства Unix-систем и позволяет перехватывать и отображать сетевой трафик [ 44 ] . Утилита использует libpcap , переносимую C/C++ библиотеку для перехвата сетевого трафика.

Для установки tcpdump в Debian можно использовать команду:

# apt-get install tcpdump

Для запуска данной утилиты необходимо иметь права суперпользователя (в частности, в связи с необходимостью перевода сетевого адаптера в "беспорядочный" режим). В общем виде формат команды имеет следующий вид:

tcpdump <опции> <фильтр-выражение>

Для вывода на консоль описание заголовков ( расшифрованные данные) перехваченных пакетов необходимо указать интерфейс для анализа трафика ( опция -i ):

# tcpdump -i eth0

Можно отключить преобразования IP адресов в доменные имена (т.к. при больших объемах трафика создается большое число запросов к DNS-серверу ) - опция -n :

# tcpdump -n -i eth0

Для вывода данных канального уровня (например, mac адреса и прочее) - опция -e :

# tcpdump -en -i eth0

Вывод дополнительной информации (например, TTL , опции IP ) - опция -v :

# tcpdump -ven -i eth0

Увеличение размера захватываемых пакетов (больше 68 байт по умолчанию) - опция -s с указанием размера (-s 0 - захватывать пакеты целиком):

Запись в файл (непосредственно пакеты - " дамп ") - опция -w с указанием имени файла:

# tcpdump -w traf.dump

Чтение пакетов из файла - опция - r с указанием имени файла:

# tcpdump -r traf.dump

По умолчанию tcpdump работает в беспорядочном режиме. Ключ -p указывает tcpdump перехватывать только трафик, предназначенный данному узлу.

Дополнительную информацию по ключам и формате фильтров tcpdump можно получить в справочном руководстве (man tcpdump ).

Анализ трафика на уровне сетевых интерфейсов и сетевом уровне с помощью tcpdump

Для выделения Ethernet -фреймов используются следующие конструкции tcpdump (общий вид):

tcpdump ether { src | dst | host } MAC_ADDRESS

где src - MAC-адрес источника, dst - MAC-адрес назначения, host - src или dst , а также для выделения широковещательного трафика.

Общие сведения

Инструментальные средства, называемые сетевыми анализаторами, получили свое имя в честь Sniffer Network Analyzer. Этот продукт был выпущен в 1988 году компанией Network General (теперь -- Network Associates) и стал одним из первых устройств, позволяющих менеджерам буквально не выходя из-за стола узнать о том, что происходит в крупной сети. Первые анализаторы считывали заголовки сообщений в пакетах данных, пересылаемых по сети, предоставляя, таким образом, администраторам информацию об адресах отправителей и получателей, размере файлов и другие сведения низкого уровня. Причем все это -- в дополнение к проверке корректности передачи пакетов. С помощью графов и текстовых описаний анализаторы помогали сетевым администраторам провести диагностику серверов, сетевых каналов, концентраторов и коммутаторов, а также приложений. Грубо говоря, сетевой анализатор прослушивает или "обнюхивает" ("sniffs") пакеты определенного физического сегмента сети. Это позволяет анализировать трафик на наличие некоторых шаблонов, исправлять определенные проблемы и выявлять подозрительную активность. Сетевая система обнаружения вторжений является ничем иным, как развитым анализатором, который сопоставляет каждый пакет в сети с базой данных известных образцов вредоносного трафика, аналогично тому, как антивирусная программа поступает с файлами в компьютере. В отличие от средств, описанных ранее, анализаторы действуют на более низком уровне.

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

Номер уровня модели ВОС

Название уровня

Примеры протоколов

Уровень 7

Прикладной уровень

DNS, FTP, HTTP, SMTP, SNMP, Telnet

Уровень 6

Уровень представления

Уровень 5

Уровень сеанса

Уровень 4

Транспортный уровень

NetBIOS, TCP, UDP

Уровень 3

Сетевой уровень

ARP, IP, IPX, OSPF

Уровень 2

Канальный уровень

Arcnet, Ethernet, Token ring

Уровень 1

Физический уровень

Коаксиальный кабель, оптоволокно, витая пара

Физический уровень - это реальная физическая проводка или иная среда, примененная для создания сети. На канальном уровне происходит первоначальное кодирование данных для передачи через конкретную среду. Сетевые стандарты канального уровня включают беспроводной 802.11, Arcnet, коаксиальный кабель, Ethernet, Token Ring и многое другое. Анализаторы обычно зависят от типа сети, в которой они работают. Например, для анализа трафика в сети Ethernet вы должны иметь анализатор Ethernet.

Существуют анализаторы коммерческого класса, от таких производителей, как Fluke, Network General и других. Обычно это специальные аппаратные устройства, которые могут стоить десятки тысяч долларов. Хотя эти аппаратные средства способны осуществлять более глубокий анализ, можно создать недорогой сетевой анализатор с помощью программного обеспечения с открытыми исходными текстами и недорогого ПК на Intel-платформе.

Виды анализаторов

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

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

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

Помимо выявления низкоуровневых характеристик сети, например источник пакетов и пункт их назначения, современные анализаторы декодируют полученные сведения на всех семи уровнях сетевого стека Open System Interconnection (OSI) и зачастую выдают рекомендации по устранению проблем. Если же анализ на уровне приложения не позволяет дать адекватную рекомендацию, анализаторы производят исследование на более низком, сетевом уровне.

Современные анализаторы обычно поддерживают стандарты удаленного мониторинга (Rmon и Rmon 2), которые обеспечивают автоматическое получение основных данных о производительности, таких как информация о нагрузке на доступные ресурсы. Анализаторы, поддерживающие Rmon, могут регулярно проверять состояние сетевых компонентов и сравнивать полученные данные с накопленными ранее. Если необходимо, они выдадут предупреждение о том, что уровень трафика или производительность превосходит ограничения, установленные сетевыми администраторами.

Компания NetScout Systems представила систему nGenius Application Service Level Manager, предназначенную для контроля времени реакции на отдельных участках канала доступа к Web-сайту и определения текущей производительности серверов. Это приложение может анализировать производительность в общедоступной сети, с тем, чтобы воссоздавать общую картину на компьютере пользователя. Датская фирма NetTest (бывшая GN Nettest) начала предлагать Fastnet -- систему сетевого мониторинга, которая помогает компаниям, занимающимся электронным бизнесом, планировать емкость каналов, искать и устранять неисправности в сети.

Анализ конвергентных (мультисервисных) сетей

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

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

«Конвергенция породила новые сложности, с которыми приходится иметь дело сетевым администраторам, -- заметил Гленн Гроссман, директор по управлению продуктами компании NetScout Systems. -- Голосовой трафик очень чувствителен к временным задержкам. Анализаторы могут просматривать каждый бит и байт, передаваемый по проводам, интерпретировать заголовки и автоматически определять приоритет данных».

Использование технологий конвергенции голоса и данных может пробудить новую волну интереса к анализаторам, поскольку поддержка приоритетности трафика на уровне IP-пакетов становится существенной для функционирования голосовых и видеослужб. Например, фирма Sniffer Technologies выпустила Sniffer Voice -- инструментарий, предназначенный для администраторов мультисервисных сетей. Этот продукт не только предоставляет традиционные службы диагностики для управления трафиком электронной почты, Internet и баз данных, но и выявляет сетевые проблемы, а также дает рекомендации по их устранению, дабы обеспечить корректную передачу голосового трафика по IP-сетям.

Обратная сторона использования анализаторов

Следует помнить, что с анализаторами связаны две стороны медали. Они помогают поддерживать сеть в рабочем состоянии, но их могут применять и хакеры для поиска в пакетах данных имен пользователей и паролей. Для предотвращения перехвата паролей посредством анализаторов служит шифрование заголовков пакетов (например, с помощью стандарта Secure Sockets Layer).

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

Однако сетевые анализаторы стоят дорого. Если вы планируете приобрести его, то прежде четко сформулируйте, чего вы от него ожидаете.

Особенности применения сетевых анализаторов

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

Всегда необходимо разрешение

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

Нужно понимать топологию сети

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

Необходимо использовать жесткие критерии поиска

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

Установка эталонного состояния сети

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

Оригинал: 8 best packet sniffers and network analyzers
Автор: Jon Watson
Дата публикации: 22 ноября 2017 года
Перевод: А. Кривошей
Дата перевода: декабрь 2017 г.

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

Есть множество утилит, которые собирают сетевой трафик, и большинство из них используют pcap (в Unix-подобных системах) или libcap (в Windows) в качестве ядра. Другой вид утилит помогает анализировать эти данные, так как даже небольшой объем траффика может генерировать тысячи пакетов, в которых трудно ориентироваться. Почти все эти утилиты мало отличаются друг от друга в сборе данных, основные отличия заключаются в том, как они анализируют данные.

Анализ сетевого трафика требует понимания того, как работает сеть. Нет никакого инструмента, который бы волшебным образом заменил знания аналитика об основах работы сети, такие как "3-х этапное рукопожатие" TCP, которое используется для инициирования соединения между двумя устройствами. Аналитики также должны иметь некоторое представление о типах сетевого трафика в нормально функционирующей сети, таких как ARP и DHCP. Это знание важно, потому что аналитические инструменты просто покажут вам то, о чем вы их попросите. Вам решать, что нужно просить. Если вы не знаете, как обычно выглядит ваша сеть, может быть сложно понять, что вы нашли то, что нужно, в массе собранных вами пакетов.

Лучшие снифферы пакетов и анализаторы сети

Промышленные инструменты

Начнем с вершины и далее спустимся к основам. Если вы имеете дело с сетью уровня предприятия, вам понадобится большая пушка. Хотя в основе почти все использует tcpdump (подробнее об этом позже), инструменты уровня предприятия могут решать определенные сложные проблемы, такие как корреляция трафика со множества серверов, предоставление интеллектуальных запросов для выявления проблем, предупреждение об исключениях и создание хороших графиков, чего всегда требует начальство.

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

Это очень большой набор инструментов управления IT. В этой статье более уместна утилита Deep Packet Inspection and Analysis которая является его составной частью. Сбор сетевого трафика довольно прост. С использованием таких инструментов, как WireShark, базовый анализ также не является проблемой. Но не всегда ситуация полностью понятна. В очень загруженной сети может быть трудно определить даже очень простые вещи, например:

Какое приложение в сети создает этот трафик?
- если приложение известно (скажем, веб-браузер), где его пользователи проводят большую часть своего времени?
- какие соединения самые длинные и перегружают сеть?

Большинство сетевых устройств, чтобы убедиться, что пакет идет туда, куда нужно, используют метаданные каждого пакета. Содержимое пакета неизвестно сетевому устройству. Другое дело - глубокая инспекция пакетов; это означает, что проверяется фактическое содержимое пакета. Таким образом можно обнаружить критическую сетевую информацию, которую нельзя почерпнуть из метаданных. Инструменты, подобные тем, которые предоставляются SolarWinds, могут выдавать более значимые данные, чем просто поток трафика.

Другие технологии управления сетями с большим объемом данных включают NetFlow и sFlow. У каждой есть свои сильные и слабые стороны,

Вы можете узнать больше о NetFlow и sFlow.

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

Основы

Основным инструментом для сбора сетевого трафика является

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

В некоторых редких случаях достаточно будет выводить захваченные tcpdump данные прямо на экран, чтобы найти то, что вам нужно. Например, при написании этой статьи я собрал трафик и заметил, что моя машина отправляет трафик на IP-адрес, который я не знаю. Оказывается, моя машина отправляла данные на IP-адрес Google 172.217.11.142. Поскольку у меня не было никаких продуктов Google, и не был открыт Gmail, я не знал, почему это происходит. Я проверил свою систему и нашел следующее:

[ ~ ]$ ps -ef | grep google user 1985 1881 0 10:16 ? 00:00:00 /opt/google/chrome/chrome --type=service

Оказывыается, что даже когда Chrome не работает, он остается запущенным как служба. Я не заметил бы этого без анализа пакетов. Я перехватил еще несколько пакетов данных, но на этот раз дал tcpdump задачу записать данные в файл, который затем открыл в Wireshark (подробнее об этом позже). Вот эти записи:

Tcpdump - любимый инструмент системных администраторов, потому что это утилита командной строки. Для запуска tcpdump не требуется графический интерфейс. Для производственных серверов графический интерфес скорее вреден, так как потребляет системные ресурсы, поэтому предпочтительны программы командной строки. Как и многие современные утилиты, tcpdump имеет очень богатый и сложный язык, который требует некоторого времени для его освоения. Несколько самых базовых команд включают в себя выбор сетевого интерфейса для сбора данных и запись этих данных в файл, чтобы его можно было экспортировать для анализа в другом месте. Для этого используются переключатели -i и -w.

# tcpdump -i eth0 -w tcpdump_packets tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes ^C51 packets captured

Эта команда создает файл с захваченными данными:

File tcpdump_packets tcpdump_packets: tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 262144)

Стандартом для таких файлов является формат pcap. Он не является текстом, поэтому его можно анализировать только с помощью программ, которые понимают данный формат.

3. Windump

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

Самое существенное различие между Windump и tcpdump заключается в том, что Windump нуждается в библиотеке Winpcap, установленной до запуска Windump. Несмотря на то, что Windump и Winpcap предоставляются одним и тем же майнтайнером, их нужно скачивать отдельно.

Winpcap - это библиотека, которая должна быть предварительно установлена. Но Windump - это exe-файл, который не нуждается в установке, поэтому его можно просто запускать. Это нужно иметь в виду, если вы используете сеть Windows. Вам не обязательно устанавливать Windump на каждой машине, поскольку вы можете просто копировать его по мере необходимости, но вам понадобится Winpcap для поддержки Windup.

Как и в случае с tcpdump, Windump может выводить сетевые данные на экран для анализа, фильтровать таким же образом, а также записывать данные в файл pcap для последующего анализа.

4. Wireshark

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

Если вы анализируете трафик на сервере с графическим интерфейсом, Wireshark может сделать все за вас. Он может собрать данные, а затем анализировать их все здесь же. Однако на серверах графический интерфейс встречается редко, поэтому вы можете собирать сетевые данные удаленно, а затем изучать полученный файл pcap в Wireshark на своем компьютере.

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

Одной из самых полезных возможностей Wireshark является возможность следовать за потоком. Лучше всего представить поток как цепочку. На скриншоте ниже мы можем видеть множество захваченных данных, но меня больше всего интересовал IP-адрес Google. Я могу щелкнуть правой кнопкой мыши и следовать потоку TCP, чтобы увидеть всю цепочку.

Если захват трафика производился на другом компьютере, вы можете импортировать файл PCAP с помощью диалога Wireshark File -> Open. Для импортированных файлов доступны те же фильтры и инструменты, что и для захваченных сетевых данных.

5. tshark

Tshark - это очень полезное звено между tcpdump и Wireshark. Tcpdump превосходит их при сборе данных и может хирургически извлекать только те данные, которые вам нужны, однако его возможности анализа данных очень ограничены. Wireshark отлично справляется как с захватом, так и с анализом, но имеет тяжелый пользовательский интерфейс и не может использоваться на серверах без графического интерфейса. Попробуйте tshark, он работает в командной строке.

Tshark использует те же правила фильтрации, что и Wireshark, что не должно удивлять, так как они по сути являются одним и тем же продуктом. Приведенная ниже команда говорит tshark только о том, что необходимо захватить IP-адрес пункта назначения, а также некоторые другие интересующие нас поля из HTTP-части пакета.

# tshark -i eth0 -Y http.request -T fields -e ip.dst -e http.user_agent -e http.request.uri 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /images/title.png 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /images/styles/phoenix.css 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /images/code/jquery_lightbox/jquery_lightbox/js/jquery-1.2.6.pack.js 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /images/styles/index.css 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /images/images/title.png 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /favicon.ico 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /favicon.ico

Если вы хотите записать трафик в файл, используйте для этого параметр-W, а затем переключатель -r (чтение), чтобы прочитать его.

Сначала захват:

# tshark -i eth0 -w tshark_packets Capturing on "eth0" 102 ^C

Прочитайте его здесь же, или перенесите в другое место для анализа.

# tshark -r tshark_packets -Y http.request -T fields -e ip.dst -e http.user_agent -e http.request.uri 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /contact 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /reservations/ 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /reservations/styles/styles.css 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /res/code/jquery_lightbox/jquery_lightbox/js/jquery-1.2.6.pack.js 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /res/styles/index.css 172.20.0.122 Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0 /res/images/title.png

Это очень интересный инструмент, который скорее попадает в категорию инструментов сетевого криминалистического анализа, а не просто снифферов. Сфера криминалистики, как правило, занимается расследованиями и сбором доказательств, и Network Miner выполняет эту работу просто отлично. Также, как wireshark может следовать потоку TCP, чтобы восстановить всю цепочку передачи паков, Network Miner может следовать потоку для того, чтобы восстановить файлы, которые были переданы по сети.

Network Miner может быть стратегически размещен в сети, чтобы иметь возможность наблюдать и собирать трафик, который вас интересует, в режиме реального времени. Он не будет генерировать свой собственный трафик в сети, поэтому будет работать скрытно.

Network Miner также может работать в автономном режиме. Вы можете использовать tcpdump, чтобы собрать пакеты в интересующей вас точке сети, а затем импортировать файлы PCAP в Network Miner. Далее можно будет попробовать восстановить какие-либо файлы или сертификаты, найденные в записанном файле.

Network Miner сделан для Windows, но с помощью Mono он может быть запущен в любой ОС, которая поддерживает платформу Mono, например Linux и MacOS.

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

7. Fiddler (HTTP)

Технически не является утилитой для захвата сетевых пакетов, но он так невероятно полезен, что попал в этот список. В отличие от других перечисленных здесь инструментов, которые предназначены для захвата трафика в сети из любого источника, Fiddler скорее служит инструментом отладки. Он захватывает HTTP трафик. Хотя многие браузеры уже имеют эту возможность в своих средствах разработчика, Fiddler не ограничивается трафиком браузера. Fiddler может захватить любой HTTP-трафик на компьютере, в том числе и не из веб-приложений.

Многие настольные приложения используют HTTP для подключения к веб-службам, и помимо Fiddler, единственным способом захвата такого трафика для анализа является использование таких инструментов, как tcpdump или Wireshark. Однако они работают на уровне пакетов, поэтому для анализа необходимо реконструировать этии пакеты в потоки HTTP. Это может потребовать много работы для выполнения простых исследований и здесь на помощь приходит Fiddler. Fiddler поможет обнаружить куки, сертификаты, и прочие полезные данные, отправляемые приложениями.

Fiddler является бесплатным и, так же, как Network Miner, он может быть запущен в Mono практически на любой операционной системе.

8. Capsa

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

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

Capsa доступна только для Windows 2008/Vista/7/8 и 10.

Заключение

Несложно понять, как с помощью описанных нами инструментов системный админимтратор может создать инфраструктуру мониторинга сети. Tcpdump или Windump могут быть установлены на всех серверах. Планировщик, такой как cron или планировщик Windows, в нужный момент запускает сеанса сбора пакетов и записывает собранные данные в файл pcap. Далее системный администратор может передать эти пакеты центральной машине и анализировать их с помощью wireshark. Если сеть слишком велика для этого, имеются инструменты корпоративного уровня, такие как SolarWinds, чтобы превратить все сетевые пакеты в управляемый набор данных.

Почитайте другие статьи о перехвате и анализе сетевого трафика :

  • Dan Nanni, Утилиты с интерфейсом командной строки для мониторинга сетевого трафика в Linux
  • Paul Cobbaut, Администрирование систем Linux. Перехват сетевого трафика
  • Paul Ferrill, 5 инструментов для мониторинга сети в Linux
  • Pankaj Tanwar, Захват пакетов при помощи библиотеки libpcap
  • Riccardo Capecchi, Использование фильтров в Wireshark
  • Nathan Willis, Анализ сети с помощью Wireshark
  • Prashant Phatak,

tcpdump

Основным инструментом почти всех сборов сетевого трафика является tcpdump . Это приложение с открытым исходным кодом, которое устанавливается практически во все Unix-подобных операционных системах. Tcpdump - отличный инструмент для сбора данных и поставляется с очень мощным механизмом фильтрации. Важно знать, как фильтровать данные во время сбора, чтобы в итоге получить управляемый фрагмент данных для анализа. Захват всех данных с сетевого устройства даже в умеренно загруженной сети может создать слишком много данных для простого анализа.

В некоторых редких случаях tcpdump позволяет выводить результат работы непосредственно на ваш экран, и этого может быть вполне достаточно, чтобы найти то, что вы ищете. Например, при написании статьи был захвачен некоторый трафик и замечено, что машина отправляет трафик на неизвестный IP-адрес. Оказывается, машина отправляла данные на IP-адрес Google 172.217.11.142. Поскольку не было запущено никаких продуктов Google, возник вопрос, почему это происходит.

Проверка системы показала следующее:

[ ~ ]$ ps -ef | grep google

Оставьте свой комментарий!