Отслеживание интернет трафика. Обзор лучших программ для мониторинга траффика на пк. Варианты реализации контроля

Отслеживание интернет трафика. Обзор лучших программ для мониторинга траффика на пк. Варианты реализации контроля

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

Выбор лучшей программы для контроля трафика интернета.

Network Meter – удобный гаджет для рабочего стола и программа для учёта трафика, которая позволяет вам легко контролировать подключение к Интернету и раздавать его по локальной сети и Wi-Fi. Большинство пользователей игнорируют возможности, предлагаемые гаджетами для рабочего стола, которые уже появились в Windows Vista и перенесены в Windows 7. Некоторые из этих приложений могут быть очень полезными.

Network Meter – это приложение, которое отслеживает активное подключение к сети Интернет. Оно позволяет указать IP-адрес как в локальной сети, так и в Интернете. Показывает текущую скорость передачи данных, загрузки, отдачи и объём данных, которые мы скачали и отправили в течение последнего сеанса (с момента перезагрузки Windows). Кроме того, в режиме мониторинга беспроводной сети приложение показывает SSID сети Wi-Fi, то есть её имя и процентное значение качества сигнала (0 – 100%). Дополнительным элементом гаджета является локатор IP-адресов (IP-поиск) и тестер Интернета (тест скорости).

Использовать программу сможет каждый:

  1. Распакуйте инсталлятор гаджета из ZIP-архива, выбрав для этого место на вашем жёстком диске . Дважды щёлкните распакованный файл, чтобы установить Network Meter.
  2. Вам будет предложено проверить изготовителя, нажмите «Установить». Гаджет должен появиться на нашем рабочем столе (обычно справа), но его можно поместить его куда угодно, цепляя и перетаскивая левой кнопкой мыши.
  3. Приложение уже активно, но, чтобы убедиться, что оно отслеживает интересующее вас соединение, перейдите к опции «Network Meter». Для этого нажмите на гаджет правой кнопкой мыши и выберете пункт «Параметры».
  4. На основной вкладке «Параметры» можно управлять функциями гаджета. Прежде всего, нужно выбрать, какую сеть контролировать (тип сети). Можно выбрать подключение к локальной сети по кабелю (проводная сеть) или Wi-Fi (беспроводная сеть). В последнем случае гаджет будет оснащён дополнительными функциями – SSID и измерителем качества сигнала. Функция, обозначенная маркером, показывает сетевую карту, контролируемую нашим локальным IP-адресом (локальной сетью), а также сеть, контролируемую для передачи данных. Если использовать на персональном ПК, не будет никаких проблем, но на ноутбуке стоит убедиться, что All Network Meter в настоящий момент контролирует активную карту – обычно нужно выбирать между Ethernet LAN и Wi-Fi-картой.
  5. На вкладке «Экран» определяется, как гаджет будет отображать информацию. Например, рекомендуется изменить настройки единиц по умолчанию с битов в секунду, чтобы узнать скорость в килобайтах или мегабитах. Настройки сохраняются нажатием кнопки «ОК».
  6. Изменения в окне «Network Meter» появляются незамедлительно. Стоит отметить, что счётчик представляет текущую передачу данных – на данный момент и, таким образом, контролирует сетевую активность. Однако другой показатель подсчитывает, сколько данных загружено и отправлено в течение этого сеанса. Он может быть полезен для пользователей, использующих сети, ограниченные лимитом – например, мобильный интернет 3G . Это позволяет легко узнать, превышается ли пакет.

Лицензия: Бесплатно

ВАЖНО. правильной работы программы требуется пакет.NET Framework 1.1, установленный в системе.

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

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

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

  • функция межсетевого экрана;
  • очень удобный и красивый интерфейс;
  • простота в эксплуатации.

Недостатки:

  • отсутствие множества функций в бесплатной версии;
  • нет графика отслеживания передачи данных.

Лицензия: бесплатная.

Расширенная утилита контроля, которая позволяет отслеживать сетевой трафик, создаваемый приложениями. Создаёт отчёты во многих форматах. Эта программа сообщает о загрузке и отправке данных для интернета, локальной сети и для определённых программ. Она также сообщает, какие приложения использует интернет. Контролирует качество сигнала Wi-Fi. Последняя версия полностью совместима с Windows 10. Показатель DU чётко отслеживает использование данных. Он предоставляет ежечасные, ежедневные, еженедельные и ежемесячные отчёты. Также может предупреждать о превышении фиксированных пределов. Данные из отчётов можно экспортировать в Excel, Word и PDF. Режим секундомера позволяет вам определять потребление данных с высокой степенью точности в определённое время. Вы можете не только указать часы, в которые передача не должна учитываться (что было бы полезно для людей, которые используют тарифные планы с бесплатными часами).

DU Meter отображается как полупрозрачное окно уведомлений в нижнем правом углу рабочего стола и показывает информацию о сетевом трафике в режиме реального времени. Окно DU Meter можно увеличить, перетащив его края с помощью мыши. Каждая вертикальная линия – одна секунда. Красная линия – это входящий трафик, а зелёная – исходящий. Внизу окна расположены вкладки «Интернет», «ЛВС», «Программы» – переключаясь между ними, можно увидеть соответствующие данные. Щёлкнув правой кнопкой мыши по окну программы, можно вызвать всплывающее меню, что предоставляет доступ к различным отчётам, режиму секундомера или вариантам пользователя и администратора.

Чтобы увидеть основной отчёт об интернет-трафике как можно быстрее, задержите указатель мыши над значком DU Meter на панели задач. Чтобы просмотреть подробную информацию о онлайн-активности программ, щёлкните правой кнопкой мыши на полупрозрачном окне измерителя DU и выберите «Просмотреть сетевые подключения». В новом окне на вкладке «Программы» есть все приложения, которые используют передачу данных. На вкладке «Открытые подключения TCP » отображаются сведения, которые позволят вам определить несанкционированный трафик с компьютера. Преимущества:

  • максимальное количество форматов отчётов;
  • одновременный подсчёт данных для конкретных приложений и сетевого трафика;
  • таймер использования.

Недостаток: пробная версия.

Лицензия: пробная.

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

Очень полезная программа. Многие дополнительные функции делают её наиболее универсальным приложением для мониторинга передачи данных на ПК. Преимущества:

  • простота в эксплуатации;
  • отслеживание определённых приложений;
  • возможность создания отчётов;
  • режим отслеживания трафика на маршрутизаторе (требуется SNMP, поддерживаемый маршрутизатором).

Недостаток: неточное отслеживание приложений, запущенных системой.

Лицензия: бесплатная.

Занимает очень мало места, не перегружает процессор во время работы. Есть не так много продвинутых функций, но приложение берёт своей простотой. Преимущества:

  • простое управление;
  • функция секундомера.

Недостатки:

  • неинтересный внешний вид;
  • отсутствие отслеживания данных для конкретных приложений.

Лицензия: бесплатная.

Работает без проблем почти во всех версиях Windows, имеет функции, доступные только в платных версиях этого типа программ. Преимущества:

  • функция межсетевого экрана;
  • расписание с возможностью отключения отслеживания в определённое время;
  • удалённое управление статистикой через сеть.

Недостаток: довольно сложно использовать.

Лицензия: бесплатная.

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

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

ВНИМАНИЕ : начиная с 6-й версии программа стала платной, поэтому во избежание недоразумений не обновляйте её. Здесь находится последняя бесплатная версия 5.5.5.

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

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

Благодаря таким программам сегодня можно замерять скорость Интернет-соединения, проверять все процессы, которые имеют доступ к Интернет, проводить замеры использования трафика в корпоративных сетях и многое другое.

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

Сравнение бесплатной программы для учёта трафика NetWorx с платным аналогом DU Meter

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

Установка NetWorx

Буду исходить из того, что Вы скачали portable-версию. Для начала работы надо распаковать архив с программой и запустить исполняемый exe-файл. Перед непосредственным запуском NetWorx сделаем пару настроек. Первое — понадобится указать язык программы, а второе — включить или выключить проверку новых версий. Вот и все:).

После этого в трее (место рядом с системными часами) появится значок программы, при помощи которого мы и будем ею управлять.

Управление NetWorx будет происходить через контекстное меню, вызываемое правым кликом мыши.

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

Настройки NetWorx

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

Разделы «График» и «Цвета графика» позволяют нам самим настроить внешний вид графика входящих/исходящих пакетов информации. В «Уведомлениях» можно включить и настроить сервисные сообщения от программы, а в «Дополнительных» мы имеем возможность произвести настройку сбора статистики.

Самая последняя вкладка — «Dial-up» — позволяет установить соединение по умолчанию и добавить приложения, которые будут запускаться вместе с NetWorx.

После того, как настройки сделаны, нажимаем сначала кнопку «Применить», чтобы они вступили в силу, а затем «Ok», чтобы выйти из настроек.

Монитор трафика

Теперь давайте пройдемся непосредственно по инструментам NetWorx. Первый и основной из них — монитор трафика. Он представлен в виде графика, который вызывается кнопкой «Показать график».

График может представляться в виде гистограммы (по-моему, удобней всего), кривых линий или просто чисел. При этом внизу всегда будет находиться два числа. Число с индексом «D» (по умолчанию синий цвет) показывает количество входящего трафика (от англ. download), а «U» (зеленый) соответственно исходящий (от англ. upload).

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

Измерение скорости

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

Для запуска теста достаточно нажать кнопку «Старт» и засечь определенный промежуток времени. Затем результат можно сохранить в текстовый файл, а потом сравнить с новыми данными, полученными при «загрузке» канала.

Статистика

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

Также присутствуют инструменты для бэкапа статистики и ее дальнейшего восстановления (например, если нужно сохранить все данные после переустановки системы).

Квота на трафик

Двигаясь дальше, переходим к разделу «Квота». Эта функция подойдет больше всего пользователям с Dial-up подключением или лимитированным трафиком (например мобильный Интернет). Она позволяет задать максимальное количество полученной или отправленной информации и всегда предупредит пользователя о перерасходе заданного лимита.

По умолчанию квота задана в 0,00 Кб, поэтому если хотите воспользоваться этой функцией, надо будет ее сперва «Настроить»:).

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

Для сохранения настроек нажмите «Ok», а в окне мониторинга квоты не забудьте поставить галочку на пункт «Уведомлять, когда квота израсходована, на %», чтобы вовремя получать информацию о перерасходе.

Трассировка маршрута

Пункт «Настройки» мы уже рассматривали, поэтому переходим к следующему — «Трассировка маршрута». Если у Вас вдруг пропал доступ к какому-либо Интернет-ресурсу или Вам надо узнать, какой путь Вы проходите, прежде чем попадете на тот или иной сайт, попробуйте произвести трассировку данного пути. Это можно сделать и штатными возможностями Windows, однако с NetWorx получается намного проще и нагляднее.

Для начала трассировки введите имя сайта (удаленного компьютера) или его IP-адрес. Теперь можно задать время ожидания ответа (хотя зачастую стандартного значения более чем достаточно) и можно нажимать «Старт». В данном случае мы протрассировали сайт yandex.ru и увидели, что для доступа к нему нужно пройти 11 промежуточных серверов, а общее время прохождения этого пути составляет 31 мс.

Пинг

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

Минус функции еще и в том, что вводить Интернет-адрес сайта напрямую нельзя — нужно знать его точный IP (можно узнать из предыдущей утилиты). Теперь конкретно об использовании: вводим адрес удаленного ПК, выбираем время ожидания и количество эхо-запросов и нажимаем «Старт».

В нашем примере пинговался сайт vkontakte.ru . Среднее время ответа не высчитывается автоматически, но его можно посчитать и в уме, сплюсовав все полученные значения и разделив на три:).

Получилось около 45 мс, что в принципе, хорошо (пинг до 50 мс ± 10 мс — считается хорошим). Значение же TTL — это «время жизни» эхо-пакета. Число 64 означает, что посылаемый пакет информации может пройти через 64 промежуточных сервера.

Соединения

Последний инструмент — «Соединения». Он позволяет наблюдать за всеми приложениями, которые требуют подключения к Интернет.

Сразу советую включить опцию «Преобразовывать адреса в имена». Так Вы сможете видеть куда «лезет» то или иное приложение и остановить его попытку подключиться к подозрительному ресурсу. Особенное внимание уделите «установленным» соединениям (ESTABLISHED) и прослушивающимся портам (LISTENING), так как именно они могут нести скрытую угрозу.

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

Выводы

Таким образом, можно подвести некий итог всего вышесказанного. NetWorx — это не просто программа для мониторинга Вашего Интернет-соединения, но еще и комплекс для обеспечения безопасности и всесторонней диагностики сети.

Поэтому, если у Вас возникает подозрение, что какое-то приложение нерационально использует трафик или даже передает конфиденциальную информацию, попробуйте понаблюдать за своей сетью программой NetWorx и Вы сможете без труда вычислить «шпиона»:).

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

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

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

Программы 10-Strike включены в единый реестр российских программ для ЭВМ минкомсвязи и могут участвовать в госзакупках.

Программы для администратора сети, сетевые утилиты

Программа для инвентаризации и учета установленного программного и аппаратного обеспечения на компьютерах в локальных сетях . "Инвентаризация Компьютеров" позволяет системным администраторам осуществлять учет компьютеров в сети предприятия, просматривать конфигурации удалённых компьютеров и списки установленных программ по сети, отслеживать изменения конфигурации и ПО. Программа содержит мощный генератор отчетов. Например, можно создавать отчеты по наличию определенных программ на компьютерах и их количеству . При планировании апгрейдов можно создать отчет, содержащий компьютеры с недостаточным объемом дисковой или оперативной памяти . Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.


- программа мониторинга серверов и компьютеров в сети , позволяющая визуально наблюдать текущее состояние вашей сети в любой момент времени. LANState мониторит хосты в сети, отслеживает подключения к сетевым ресурсам, следит за трафиком, и сигнализирует о различных событиях. LANState содержит множество функций, полезных для администраторов сетей: рассылка сообщений, выключение удаленных компьютеров, сканирование хостов и портов, получение различной информации с удаленных компьютеров (доступ к реестру, event log и т.п.). Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.


- программа для мониторинга серверов и прочих сетевых устройств , следит за работоспособностью сети и оповещает администратора о неполадках. Узнайте вовремя о произошедшем сбое (разрыв связи, завершение места на диске сервера, останов службы и т.п.) и устраните проблему с минимальными потерями времени. Программа сигнализирует о неполадках с помощью звука, экранных сообщений, по e-mail, может запускать внешние программы и службы, а также перезагружать компьютеры и службы. Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.


- программа для поиска файлов на компьютерах локальной сети (по протоколам NetBios и FTP). Введите фразу или маски файлов и найдите нужную информацию. При просмотре результатов поиска найденные файлы можно сразу же открыть, сохранить на диск, или сгенерировать отчет. При поиске используется многопоточная технология, что значительно ускоряет работу. Можно задать фильтры по размерам файлов и дате изменения. Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.


- программа мониторинга сетевых подключений пользователей по сети к общей папке и файлам , позволяет вовремя узнать о подключениях к компьютеру пользователей сети. Программа подает звуковые сигналы, выдает оповещения на экран, и ведет подробный журнал подключений, в который записывается информация о том, кто и когда подключался к сетевым папкам компьютера, какие файлы открывал и т.д. Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.


3.0 БЕСПЛАТНО!

- сканер локальных сетей, IP-адресов и хостов . Эта бесплатная программа позволяет просканировать локальную сеть и обнаружить активные хосты, компьютеры и сервера. Поддерживается сканирование диапазонов IP-адресов и множество протоколов для обнаружения сетевых устройств (ICMP пинг, поиск открытых TCP-портов, NetBios, SNMP, UPnP, ...). При наличии прав администратора с компьютеров Windows можно считать множество полезной информации. Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.

Наборы сетевых программ для сисадминов

Наборы программ для системных администраторов позволяют вам сэкономить средства при покупке нескольких наших сетевых программ или всех сразу. Получите три программы по цене двух и так далее. Например, при покупке Полного набора программ администратора в варианте "на организацию " (без ограничений на число рабочих мест), состоящего из семи наших программ для администраторов сети, можно сэкономить до 85 000 рублей или 30%!

Другие утилиты

- каталогизатор компакт-дисков (CD, DVD) . С его помощью вы быстро найдете нужные файлы на CD и DVD дисках вашей коллекции. SearchMyDiscs помогает организовать коллекции CD и DVD дисков, позволяя найти нужный диск за несколько секунд. Если вам надоело каждый раз долго искать нужный диск - эта программа для вас! Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.


- анализатор Raw лог файлов веб-сервера Apache . Создает различные отчеты и гистограммы. В программе имеется много настроек и фильтров, что позволит вам получить точную информацию о вашем сайте, скачиваемых файлах, и о том, кто и откуда к вам приходит. Поддерживаются Windows XP/2003/Vista/2008/7/8.1/2012/10/2016.

Оплата и доставка

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

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

Все наши программы также представлены в Интернет-магазинах Софткей и AllSoft (следуйте по ссылкам "купить " с нашего сайта).


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

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

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

Cacti

Сначала был MRTG (Multi Router Traffic Grapher) — программа для организации сервиса мониторинга сети и измерения данных с течением времени. Еще в 1990-х, его автор Тобиас Отикер (Tobias Oetiker) счел нужным написать простой инструмент для построения графиков, использующий кольцевую базу данных, изначально используемый для отображения пропускной способности маршрутизатора в локальной сети. Так MRTG породил RRDTool, набор утилит для работы с RRD (Round-robin Database, кольцевой базой данных), позволяющий хранить, обрабатывать и графически отображать динамическую информацию, такую как сетевой трафик, загрузка процессора, температура и так далее. Сейчас RRDTool используется в огромном количестве инструментов с открытым исходным кодом. Cacti — это современный флагман среди программного обеспечения с открытым исходным кодом в области графического представления сети, и он выводит принципы MRTG на принципиально новый уровень.

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

Cacti — это бесплатная программа, входящее в LAMP-набор серверного программного обеспечения, которое предоставляет стандартизированную программную платформу для построения графиков на основе практически любых статистических данных. Если какое-либо устройство или сервис возвращает числовые данные, то они, скорее всего, могут быть интегрированы в Cacti. Существуют шаблоны для мониторинга широкого спектра оборудования — от Linux- и Windows-серверов до маршрутизаторов и коммутаторов Cisco, — в основном все, что общается на SNMP (Simple Network Management Protocol, простой протокол сетевого управления). Существуют также коллекции шаблонов от сторонних разработчиков, которые еще больше расширяют и без того огромный список совместимых с Cacti аппаратных средств и программного обеспечения.

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

Так, например, вы можете быстро просмотреть данные за несколько прошлых лет, чтобы понять, является ли текущее поведение сетевого оборудования или сервера аномальным, или подобные показатели появляются регулярно. А используя Network Weathermap, PHP-плагин для Cacti, вы без чрезмерных усилий сможете создавать карты вашей сети в реальном времени, показывающие загруженность каналов связи между сетевыми устройствами, реализуемые с помощью графиков, которые появляются при наведении указателя мыши на изображение сетевого канала. Многие организации, использующие Cacti, выводят эти карты в круглосуточном режиме на 42-дюймовые ЖК-мониторы, установленные на стене, позволяя ИТ-специалистам мгновенно отслеживать информацию о загруженности сети и состоянии канала.

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

Nagios

Nagios — это состоявшаяся программная система для мониторинга сети, которая уже многие годы находится в активной разработке. Написанная на языке C, она позволяет делать почти все, что может понадобится системным и сетевым администраторам от пакета прикладных программ для мониторинга. Веб-интерфейс этой программы является быстрым и интуитивно понятным, в то время его серверная часть — чрезвычайно надежной.

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

Как и Cacti, очень активное сообщество поддерживает Nagios, поэтому различные плагины существуют для огромного количества аппаратных средств и программного обеспечения. От простейших ping-проверок до интеграции со сложными программными решениями, такими как, например, написанным на Perl бесплатным программным инструментарием WebInject для тестирования веб-приложений и веб сервисов. Nagios позволяет осуществлять постоянный мониторинг состояния серверов, сервисов, сетевых каналов и всего остального, что понимает протокол сетевого уровня IP. К примеру, вы можете контролировать использование дискового пространства на сервере, загруженность ОЗУ и ЦП, использования лицензии FLEXlm, температуру воздуха на выходе сервера, задержки в WAN и Интеренет-канале и многое другое.

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

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

Недостатком Nagios является конфигурация, так как ее лучше всего выполнять через командную строку, что значительно усложняет обучение новичков. Хотя люди, знакомые со стандартными файлами конфигурации Linux/Unix, особых проблем испытать не должны.

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

Icinga

Icinga начиналась как ответвление от системы мониторинга Nagios, но недавно была переписана в самостоятельное решение, известное как Icinga 2. На данный момент обе версии программы находятся в активной разработке и доступны к использованию, при этом Icinga 1.x совместима с большим количеством плагинами и конфигурацией Nagios. Icinga 2 разрабатывалась менее громоздкой, с ориентацией на производительность, и более удобной в использовании. Она предлагает модульную архитектуру и многопоточный дизайн, которых нет ни в Nagios, ни в Icinga 1.

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

Как и Nagios, Icinga может быть использована для мониторинга всего, что говорит на языке IP, настолько глубоко, насколько вы можете использовать SNMP, а также настраиваемые плагины и дополнения.

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

Icinga интегрируется со множеством программных пакетов для мониторинга и графического отображения, таких как PNP4Nagios, inGraph и Graphite, обеспечивая надежную визуализацию вашей сети. Кроме того, Icinga имеет расширенные возможности отчетности.

NeDi

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

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

NeDi — это бесплатное программное обеспечение, относящее к LAMP, которое регулярно просматривает MAC-адреса и таблицы ARP в коммутаторах вашей сети, каталогизируя каждое обнаруженное устройство в локальной базе данных. Данный проект не является столь хорошо известным, как некоторые другие, но он может стать очень удобным инструментом при работе с корпоративными сетями, где устройства постоянно меняются и перемещаются.

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

Обнаружение запускается процессом cron с заданными интервалами. Конфигурация простая, с единственным конфигурационным файлом, который позволяет значительно повысить количество настроек, в том числе возможность пропускать устройства на основе регулярных выражений или заданных границ сети. NeDi, обычно, использует протоколы Cisco Discovery Protocol или Link Layer Discovery Protocol для обнаружения новых коммутаторов и маршрутизаторов, а затем подключается к ним для сбора их информации. Как только начальная конфигурация будет установлена, обнаружение устройств будет происходить довольно быстро.

До определенного уровня NeDi может интегрироваться с Cacti, поэтому существует возможность связать обнаружение устройств с соответствующими графиками Cacti.

Ntop

Проект Ntop — сейчас для «нового поколения» более известный как Ntopng — прошел долгий путь развития за последнее десятилетие. Но назовите его как хотите — Ntop или Ntopng, — в результате вы получите первоклассный инструмент для мониторинга сетевого траффика в паре с быстрым и простым веб-интерфейсом. Он написан на C и полностью самодостаточный. Вы запускаете один процесс, настроенный на определенный сетевой интерфейс, и это все, что ему нужно.

Ntop — это инструмент для анализа пакетов с легким веб-интерфейсом, который показывает данные в реальном времени о сетевом трафике. Информация о потоке данных через хост и о соединении с хостом также доступны в режиме реального времени.

Ntop предоставляет легко усваиваемые графики и таблицы, показывающие текущий и прошлый сетевой трафик, включая протокол, источник, назначение и историю конкретных транзакций, а также хосты с обоих концов. Кроме того, вы найдете впечатляющий набор графиков, диаграмм и карт использования сети в реальном времени, а также модульную архитектуру для огромного количества надстроек, таких как добавление мониторов NetFlow и sFlow. Здесь вы даже сможете обнаружить Nbox — аппаратный монитор, который встраивает в Ntop.

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

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

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

Zabbix

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

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

В основном, Zabbix работает с программными агентами, запущенными на контролируемых системах. Но это решение также может работать и без агентов, используя протокол SNMP или другие возможности для осуществления мониторинга. Zabbix поддерживает VMware и другие гипервизоры виртуализации, предоставляя подробные данные о производительности гипервизора и его активности. Особое внимание также уделяется мониторингу серверов приложений Java, веб-сервисов и баз данных.

Хосты могут добавляться вручную или через процесс автоматического обнаружения. Широкий набор шаблонов по умолчанию применяется к наиболее распространенным вариантам использования, таким как Linux, FreeBSD и Windows-сервера; широко-используемые службы, такие как SMTP и HTTP, а также ICMP и IPMI для подробного мониторинга аппаратной части сети. Кроме того, пользовательские проверки, написанные на Perl, Python или почти на любом другом языке, могут быть интегрированы в Zabbix.

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

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

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

Observium

Observium — это программа для мониторинга сетевого оборудования и серверов, которое имеет огромный список поддерживаемых устройств, использующих протокол SNMP. Как программное обеспечение, относящееся к LAMP, Observium относительно легко устанавливается и настраивается, требуя обычных установок Apache, PHP и MySQL, создания базы данных, конфигурации Apache и тому подобного. Он устанавливается как собственный сервер с выделенным URL-адресом.

Observium сочетает в себе мониторинг систем и сетей с анализом тенденций производительности. Он может быть настроен для отслеживания практически любых показателей.

Вы можете войти в графический интерфейс и начать добавлять хосты и сети, а также задать диапазоны для автоматического обнаружения и данные SNMP, чтобы Observium мог исследовать окружающие его сети и собирать данные по каждой обнаруженной системе. Observium также может обнаруживать сетевые устройства через протоколы CDP, LLDP или FDP, а удаленные агенты хоста могут быть развернуты на Linux-системах, чтобы помочь в сборе данных.

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

Что касается серверов, то для них Observium может отобразить информацию о состоянии центрального процессора, оперативной памяти, хранилища данных, свопа, температуры и т. д. из журнала событий. Вы также можете включить сбор данных и графическое отображение производительности для различных сервисов, включая Apache, MySQL, BIND, Memcached, Postfix и другие.

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

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

В качестве примера можно привести пользовательское приложение с базой данных на серверной части, например, интернет-магазин. Ваш менеджмент хочет увидеть красивые графики и диаграммы, оформленные то в одном виде, то в другом. Если вы уже используете, скажем, Cacti, у вас есть несколько возможностей вывести собранные данные в требуемом формате. Вы можете, к примеру, написать простой скрипт на Perl или PHP для запуска запросов в базе данных и передачи этих расчетов в Cacti либо же использовать SNMP-вызов к серверу базы данных, используя частный MIB (Management Information Base, база управляющей информации). Так или иначе, но задача может быть выполнена, и выполнена легко, если у вас есть необходимый для этого инструментарий.

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

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

Всегда на связи, Игорь Панов.


См. также:

Любой администратор рано или поздно получает инструкцию от руководства: «посчитать, кто ходит в сеть, и сколько качает». Для провайдеров она дополняется задачами «пустить кого надо, взять оплату, ограничить доступ». Что считать? Как? Где? Отрывочных сведений много, они не структурированы. Избавим начинающего админа от утомительных поисков, снабдив его общими знаниями, и полезными ссылками на матчасть.
В данной статье я постараюсь описать принципы организации сбора, учёта и контроля трафика в сети. Мы рассмотрим проблематику вопроса, и перечислим возможные способы съема информации с сетевых устройств.

Это первая теоретическая статья из цикла статей, посвящённого сбору, учёту, управлению и биллингу трафика и IT-ресурсов.

Структура доступа в сеть Интернет

В общем случае, структура доступа в сеть выглядит следующим образом:
  • Внешние ресурсы – сеть Интернет, со всеми сайтами, серверами, адресами и прочим, что не принадлежит сети, которую вы контролируете.
  • Устройство доступа – маршрутизатор (аппаратный, или на базе PC), коммутатор, VPN-сервер или концентратор.
  • Внутренние ресурсы – набор компьютеров, подсетей, абонентов, работу которых в сети необходимо учитывать или контролировать.
  • Сервер управления или учёта – устройство, на котором работает специализированное программное обеспечение. Может быть функционально совмещён с программным маршрутизатором.
В данной структуре, сетевой трафик проходит от внешних ресурсов к внутренним, и обратно, через устройство доступа. Оно передает на сервер управления информацию о трафике. Сервер управления обрабатывает эту информацию, хранит в базе, отображает, выдает команды на блокировку. Однако, не все комбинации устройств (методов) доступа, и методов сбора и управления, совместимы. О различных вариантах и пойдет речь ниже.

Сетевой трафик

Для начала необходимо определить, а что же подразумевается под «сетевым трафиком», и какую полезную статистическую информацию можно извлечь из потока пользовательских данных.
Доминирующим протоколом межсетевого взаимодействия пока остается IP версии 4 . Протокол IP соответствует 3му уровню модели OSI (L3). Информация (данные) между отправителем и получателем упаковывается в пакеты – имеющие заголовок, и «полезную нагрузку». Заголовок определяет, откуда и куда идет пакет (IP-адреса отправителя и получателя), размер пакета, тип полезной нагрузки. Основную часть сетевого трафика составляют пакеты с полезной нагрузкой UDP и TCP – это протоколы 4-го уровня (L4). Помимо адресов, заголовок этих двух протоколов содержит номера портов, которые определяют тип службы (приложения), передающего данные.

Для передачи IP-пакета по проводам (или радио) сетевые устройства вынуждены «оборачивать» (инкапсулировать) его в пакет протокола 2го уровня (L2). Самым распространенным протоколом такого типа является Ethernet . Фактическая передача «в провод» идет на 1м уровне. Обычно, устройство доступа (маршрутизатор) не занимается анализом заголовков пакетов на уровне, выше 4го (исключение – интеллектуальные межсетевые экраны).
Информация из полей адресов, портов, протоколов и счетчики длин из L3 и L4 заголовков пакетов данных и составляет тот «исходный материал», который используется при учёте и управлении трафиком. Собственно объем передаваемой информации находится в поле Length («Длина пакета») заголовка IP (включая длину самого заголовка). Кстати, из-за фрагментации пакетов вследствие механизма MTU общий объем передаваемых данных всегда больше размера полезной нагрузки.

Суммарная длина интересных нам в данном контексте IP- и TCP/UDP- полей пакета составляет 2...10% общей длины пакета. Если обрабатывать и хранить всю эту информацию попакетно, не хватит никаких ресурсов. К счастью, подавляющий объем трафика структурирован так, что состоит из набора «диалогов» между внешними и внутренними сетевыми устройствами, так называемых «потоков». Например, в рамках одной операции пересылки электронного письма (протокол SMTP) открывается TCP-сессия между клиентом и сервером. Она характеризуется постоянным набором параметров {IP-адрес источника, TCP-порт источника, IP-адрес получателя TCP-порт получателя} . Вместо того, чтобы обрабатывать и хранить информацию попакетно, гораздо удобнее хранить параметры потока (адреса и порты), а также дополнительную информацию – число и сумму длин переданных пакетов в каждую сторону, опционально длительность сессии, индексы интерфейсов маршрутизатора, значение поля ToS и прочее. Такой подход выгоден для ориентированных на соединение протоколов (TCP), где можно явно перехватить момент завершения сессии. Однако и для не ориентированных на сессии протоколов можно проводить агрегацию и логическое завершение записи о потоке по, например, таймауту. Ниже приведена выдержка из SQL-базы собственной системы биллинга , осуществляющей протоколирование информации о потоках трафика:

Необходимо отметить случай, когда устройство доступа осуществляет трансляцию адресов (NAT , маскарадинг) для организации доступа в Интернет компьютеров локальной сети, используя один, внешний, публичный IP-адрес. В этом случае специальный механизм осуществляет подмену IP-адресов и TCP/UDP портов пакетов трафика, заменяя внутренние (не маршрутизируемые в Интернете) адреса согласно своей динамической таблице трансляции. В такой конфигурации необходимо помнить, что для корректного учета данных по внутренним хостам сети съём статистики должен производиться способом и в том месте, где результат трансляции ещё не «обезличивает» внутренние адреса.

Методы сбора информации о трафике/статистике

Снимать и обрабатывать информацию о проходящем трафике можно непосредственно на самом устройстве доступа (ПК-маршрутизатор, VPN-сервер), с этого устройства передавая ее на отдельный сервер (NetFlow, SNMP), или «с провода» (tap, SPAN). Разберем все варианты по-порядку.
ПК-маршрутизатор
Рассмотрим простейший случай – устройство доступа (маршрутизатор) на базе ПК c ОС Linux.

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

  • перехват (копирование) пакетов, проходящих через сетевую карту сервера, при помощи библиотеки libpcap
  • перехват пакетов, проходящих через встроенный межсетевой экран
  • использование сторонних средств преобразования попакетной статистики (полученной одним из двух предыдущих методов) в поток агрегированной информации netflow
Libpcap


В первом случае копия пакета, проходящего через интерфейс, после прохождения фильтра (man pcap-filter) может быть запрошена клиентской программой на сервере, написанной с использованием данной библиотеки. Пакет поступает вместе с заголовком 2го уровня (Ethernet). Можно ограничить длину захватываемой информации (если нас интересует только информация из его заголовка). Примерами таких программ могут быть tcpdump и Wireshark . Существует реализация libpcap под Windows . В случае применения трансляции адресов на ПК-маршрутизаторе такой перехват можно осуществлять только на его внутреннем интерфейсе, подключенном к локальным пользователям. На внешнем интерфейсе, после трансляции, IP-пакеты не содержат информации о внутренних хостах сети. Однако при таком способе невозможно учесть трафик, создаваемый самим сервером в сети Интернет (что важно, если на нем работают веб– или почтовый сервис).

Работа libpcap требует поддержки со стороны операционной системы, что в настоящее время сводится к установке единственной бибилиотеки. При этом прикладная (пользовательская) программа, осуществляющая сбор пакетов, должна:

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

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

Межсетевой экран


Захват данных, проходящих через межсетевой экран, позволяет учесть и трафик самого сервера, и трафик пользователей сети, даже при работе трансляции адресов. Главное в этом случае – правильно сформулировать правило захвата, и поставить его в нужное место. Данным правилом активируется передача пакета в сторону системной библиотеки, откуда приложение учета и управления трафиком может его получить. Для ОС Линукс в качестве межсетевого экрана применяют iptables, а средства перехвата – ipq, netfliter_queue или ulog . Для OC FreeBSD – ipfw с правилами типа tee или divert . В любом случае механизм межсетевого экрана дополняется возможностью работы с пользовательской программой следующим способом:
  • Пользовательская программа - обработчик трафика регистрирует себя в системе, используя системный вызов, или библиотеку.
  • Пользовательская программа или внешний скрипт устанавливает правило в межсетевой экран, “заворачивающее” выбранный трафик (согласно правилу) вовнутрь обработчика.
  • На каждый проходящий пакет обработчик получает его содержимое в виде буфера памяти (с заголовками IP и т.д. После обработки (учёта) программе необходимо также сообщить ядру операционной системы, что делать далее с таким пакетом - отбросить или передать далее. Как вариант, возможно передать ядру видоизмененный пакет.

Поскольку IP-пакет не копируется, а пересылается в программное обеспечение для анализа, становится возможным его «выброс», а следовательно, полное или частичное ограничение трафика определенного типа (например, до выбранного абонента локальной сети). Однако в случае, если прикладная программа перестала отвечать ядру о своем решении (зависла, к примеру), трафик через сервер просто блокируется.
Необходимо отметить, что описанные механизмы при существенных объемах передаваемого трафика создают избыточную нагрузку на сервер, что связано с постоянным копированием данных из ядра в пользовательскую программу. Этого недостатка лишен метод сбора статистики на уровне ядра ОС, с выдачей в прикладную программу агрегированной статистики по протоколу NetFlow .

Netflow
Этот протокол был разработан фирмой Cisco Systems для экспорта информации о трафике с маршрутизаторов с целью учета и анализа трафика. Наиболее популярная сейчас версия 5 предоставляет получателю поток структурированных данных в виде UDP-пакетов, содержащих информацию о прошедшем трафике в виде так называемых flow records:

Объем информации о трафике меньше самого трафика на несколько порядков, что особенно актуально в больших и распределенных сетях. Конечно же, блокировать передачу информации при сборе статистики по netflow невозможно (если не использовать дополнительные механизмы).
В настоящее время становится популярным дальнейшее развитие этого протокола – версия 9, основанная на шаблонной структуре flow record, реализации для устройств других производителей (sFlow). Недавно был принят стандарт IPFIX, который позволяет передавать статистику и по протоколам более глубоких уровней (например, по типу приложения).
Реализация netflow-источников (агентов, probe) доступна для ПК-маршрутизаторов, как в виде работающих по описанных выше механизмам утилит (flowprobe, softflowd), так и непосредственно встроенных в ядро ОС (FreeBSD: ng_netgraph , Linux: ). Для программных маршрутизаторов поток статистики netflow можно принимать и обрабатывать локально на самом маршрутизаторе, или отправлять по сети (протокол передачи – поверх UDP) на принимающее устройство (коллектор).


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

Функции экспорта netflow поддерживают маршрутизаторы Cisco Systems, Mikrotik, и некоторые другие. Аналогичный функционал (с другими протоколами экспорта) поддерживается всеми крупными производителями сетевого оборудования.

Libpcap “снаружи”
Немного усложним задачу. Что, если ваше устройство доступа – аппаратный маршрутизатор другого производителя? Например, D-Link, ASUS, Trendnet и т.д. На нем, скорее всего, невозможно поставить дополнительное программное средство съема данных. Как вариант – интеллектуальное устройство доступа у вас есть, но настроить его не представляется возможным (нет прав, или оно управляется вашим провайдером). В таком случае можно собирать информацию о трафике непосредственно в точке стыка устройства доступа с внутренней сетью, пользуясь «аппаратными» средствами копирования пакетов. В таком случае непременно потребуется отдельно стоящий сервер с выделенной сетевой картой для приема копий Ethernet-пакетов.
Сервер должен использовать механизм сбора пакетов по методу libpcap, описанному выше, и наша задача - на вход выделенной для этого сетевой карты подать поток данных, идентичный выходящему из сервера доступа. Для этого можно использовать:
  • Ethernet – хаб (hub): устройство, просто пересылающее пакеты между всеми своими портами без разбора. В современных реалиях его можно найти где-нибудь на пыльном складе, и применять такой метод не рекомендуется: ненадежно, низкая скорость (хабов на скорости 1 Гбит/с не бывает)
  • Ethernet – коммутатор с возможностью зеркалирования (мирроринга, SPAN портов . Современные интеллектуальные (и дорогие) коммутаторы позволяют копировать на указанный порт весь трафик (входящий, выходящий, оба) другого физического интерфейса, VLANа, в том числе удаленного (RSPAN)
  • Аппаратный раздвоитель , который может потребовать установки для сбора двух сетевых карт вместо одной – и это помимо основной, системной.


Естественно, вы можете настроить SPAN-порт и на самом устройстве доступа (маршрутизаторе), если оно это позволяет – Cisco Catalyst 6500, Cisco ASA. Вот пример такой конфигурации для коммутатора Cisco:
monitor session 1 source vlan 100 ! откуда берем пакеты
monitor session 1 destination interface Gi6/3! куда выдаем пакеты

SNMP
Что, если маршрутизатора под нашим контролем нет, с netflow связываться нет желания, нас не интересуют детали трафика наших пользователей. Они просто подключены в сеть через управляемый коммутатор, и нам надо просто грубо оценить объем трафика, приходящегося на каждый из его портов. Как вы знаете, сетевые устройства с возможностью удаленного управления поддерживают, и могут отобразить счетчики пакетов (байт), проходящих через сетевые интерфейсы. Для их опроса правильно будет использовать стандартизованный протокол удаленного управления SNMP . При помощи его можно достаточно просто получить не только значения указанных счетчиков, но также другие параметры, такие как имя и описание интерфейса, видимые через него MAC-адреса, и другую полезную информацию. Это делается как утилитами командной строки (snmpwalk), графическими SNMP-браузерами, так и более сложными программами мониторинга сети (rrdtools , cacti , zabbix , whats up gold и т.д.). Однако, данный метод имеет два существенных недостатка:
  • блокировка трафика может производиться только путем полного отключения интерфейса, при помощи того же SNMP
  • счетчики трафика, снимаемые по SNMP, относятся к сумме длин Ethernet-пакетов (причем unicast, broadcast и multicast по-отдельности), в то время как остальные описанные ранее средства дают величины относительно IP-пакетов. Это создает заметное расхождение (особенно на коротких пакетах) из-за оверхеда, вызванного длиной Ethernet-заголовка (впрочем, с этим можно приближенно бороться: L3_байт = L2_байт - L2_пакетов*38).
VPN
Отдельно стоит рассмотреть случай доступа пользователей к сети путем явного установления соединения к серверу доступа. Классическим примером может служить старый добрый dial-up, аналогом которого в современном мире являются VPN-службы удаленного доступа (PPTP, PPPoE, L2TP, OpenVPN, IPSEC)


Устройство доступа не только маршрутизирует IP-трафик пользователей, но также представляет из себя специализированный VPN-сервер, и терминирует логические туннели (часто зашифрованные), внутри которых передается пользовательский трафик.
Для учета такого трафика можно пользоваться как всеми средствами, описанными выше (и для глубокого анализа по портам/протоколам они хорошо подходят), так и дополнительными механизмами, которые предоставляют средства управления VPN-доступом. В первую очередь речь пойдет о протоколе RADIUS . Его работа – достаточно сложная тема. Мы же кратко упомянем, что контролем (авторизацией) доступа к VPN-серверу (RADIUS-клиенту) управляет специальное приложение (RADIUS-сервер), имеющее за собой базу (текстовый файл, SQL, Active Directory) допустимых пользователей с их атрибутами (ограничения по скорости подключения, назначенные IP-адреса). Помимо процесса авторизации, клиент периодически передает серверу сообщения аккаунтинга, информацию о состоянии каждой текущей работающей VPN-сессии, в том числе счетчики переданных байт и пакетов.

Заключение

Сведем все описанные выше методы сбора информации о трафике воедино:

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

  • как и куда попадают собранные данные о трафике
  • программное обеспечение для учета трафика
  • чем отличается биллинг от простой “считалки”
  • как можно накладывать ограничение на трафик
  • учёт и ограничение посещенных веб-сайтов

Теги: Добавить метки



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows