Подключение к сетям (ЛВС и Интернет), настройка сетевых протоколов. Следим за использованием интернета в Ubuntu Программы мониторинга интернет трафика в ubuntu

Для тех пользователей, кто лишен возможности использовать безлимитный тарифный план (например вынужден часто использовать 3G в роуминге) учет потребления трафика - достаточно критичная задача. Как же решить ее в Ubuntu? Рассмотрим 2 интересных приложения.

Network Traffic Monitor (NTM)

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

  1. текущая скорость загрузки-отдачи
  2. общее количество трафика, количество трафика для текущей ppp сессии, количество трафика за месяц
  3. время текущей ppp сессии (актуально когда оплата интернета - почасовая, не знаю где такое еще сохранилось)

Программа позволяет указывать интерфейс, за которым производится слежение и, в случае если это PPPoE соединение, предоставляет возможность автоматически обрывать соединение при достижении указанного в настройках лимита по трафику/времени за указанный промежуток времени (день/неделя/месяц или любой другой интервал). К сожалению, обладая такими богатыми возможностями, NTM - достаточно слабо интегрирован в Ubuntu, все ограничивается статичным индикатором, а чтобы посмотреть текущую ситуацию с лимитами приходится открыть окно программы, что не всегда удобно.

Download Monitor

Программа создана в рамках Ubuntu Apps Showdown . Ее возможности намного скромнее: download monitor позволяет задать дневной, недельный и месячный лимит по трафику, получать сообщения о превышении данных лимитов и просматривать простые графики. С другой стороны программа достаточно хорошо интегрирована в Ubuntu, имеется progress bar на Unity иконке, который позволяет оценить сколько трафика осталось.

Установить программу можно с помощью ppa-репозитория используя следующие команды:

Sudo add-apt-repository ppa:duncanjdavis/download-monitor-submit sudo apt-get update sudo apt-get install download-monitor

А как вы контролируете расход интернета?

Иногда просто необходимо знать, либо контролировать свой трафик. Ситуации бывают разные. Например просто интересно какой объем фильмов и музыки я «накачал» за месяц, или у кого-то лимитированный интернет, да мало ли для чего. Есть ли в Убунту инструмент для контроля трафика? Ну конечно же есть! Рассмотрим две программы для решения этой задачи.

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

  1. скорость загрузки-отдачи за данную сессию
  2. общий объем трафика, количество трафика за сегодня, а также месячный объем трафика
  3. время текущей ppp сессии (это очень полезно если у вас оплата интернета почасовая)

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

Скачать Network Traffic Monitor можно с официального программы.

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

sudo add-apt-repository ppa:duncanjdavis/download-monitor-submit
sudo apt-get update
sudo apt-get install download-monitor


Программа под Linux для построения графиков на основе статистики по трафику. Требует: PHP, MySQL, web-сервер. Лицензия: GPL.

  • Big Brother
  • Утилита, показывающая загруженность сетевого интерфейса в виде маленького окошка для трея.
  • Cachalot System Система учета трафика, времени работы пользователей. Кроссплатформенна (реализована на Java). Идеальна для интернет-кафе и небольших ISP.
  • Универсальный конвертер статистики. Позволяет собирать статистику по трафику с маршрутизаторов и экспортировать её по протоколу Cisco NetFlow v5. Лицензия: GPL.
  • grafist Утилита мониторинга утилизации ширины пропускаемого канала. Каждые 15 секунд смотрит в /proc/net/dev и записывает данные в 4 файла. Затем с помощью gd рисует график.
  • ifmonitor Программа для подсчета трафика. Работает с MySQL и не зависит от SNMP. Использует syslog для сохранения логов.
  • Монитор трафика на основе libpcap.
  • Ipac Пакет под Linux для сбора, суммирования и представления данных о количестве и размере пакетов протокола TCP/IP, прошедших через какой-либо интерфейс.
  • Ipacc Патч к ядру FreeBSD для учета трафика. Данные выдаются в виде ""src_ip, dest_ip, число пакетов, трафик"". Все взаимодействие производится через устройство /dev/ipacc или утилиту ipacc.
  • IPStat Программа для учета IP-трафика с web-интерфейсом Java Servlet/JSP. Собирает, суммирует и показывает данные по IP-трафику, вся база данных хранится в MySQL. Поддерживает ipchains/iptables. Лицензия: GPL.
  • macwatch Программа для подсчета входящего и исходящего трафика для указанного MAC-адреса и сохранения его в файле для использования с MRTG.
  • MRTG (Multi Router Traffic Grapher) Утилита, генерирующая HTML-страницы с PNG рисунками, показывающими загрузку сети.
  • Коллектор статистики для сбора информации по трафику с интерфейсов PC-маршрутизатора и экспорта ее в формате Cisco NetFlow v.5. Платформы: Linux, *BSD, Mac OS X, Windows. Лицензия: GPL.
  • NiTraf Простое и надёжное решение для подсчета трафика, именно то, что необходимо многим начинающим и не очень администраторам. Среди возможностей программы - поддержка квот по трафику, различные типы отчетов, уведомление администратора по e-mail. Лицензия GPL.
  • NuFW Демоны, позволяющие фильтровать пакеты в зависимости от удаленного пользователя. Лицензия: GPL.
  • Packit Сетевая утилита, предоставляющая полный контроль над трафиком IPv4. Полезна для тестирования firewall"ов и общего TCP/IP аудитинга. Основана на libnet и libpcap.
  • Ppplogd Набор скриптов для занесения данных о потреблении услуг доступа по коммутируемым линиям (dial-up). Данные обо всех соединениях сохраняются в базу данных MySQL. Программа предназначена для ведения отчетов потребления услуг.
  • (full Squid traffic)
  • TiTo Утилита для измерения трафика с указанных IP. Обладает web-интерфейсом, рисует графики, поддерживает скины. Лицензия: Freeware.
  • Во многих случаях может понадобиться отследить нагрузку на сеть, посмотреть сколько данных передается и какие пользователи, программы или компьютеры занимают канал. Особенно часто такие задачи возникают перед системными администраторами, перед которыми стоит задача отслеживать работу сети целой компании. Но также это может быть полезно и обычным пользователям.

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

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

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

    Мониторинг сети с помощью iptraf

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

    sudo apt install iptraf

    А в CentOS / Red Hat выполните:

    sudo yum install iptraf

    После установки утилиты для ее запуска просто наберите в терминале iptraf:

    Перед вами откроется интерактивный интерфейс на основе Ncurses, в котором необходимо выбрать нужное действие. Здесь доступны монитор пропускной способности сети, статистика по интерфейсу, статистика по сбоям и монитор локальной сети.

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

    Например, для просмотра сетевых соединений и статистики трафика для каждого из них выберите "IP traffic moitor". Затем вам будет необходимо выбрать сетевой интерфейс, например, enp2s0:

    Дальше вы увидите все IP адреса, с которыми сейчас выполняется взаимодействие. Здесь можно увидеть направление отправки пакетов, количество пакетов и общий объем переданных или полученных данных в байтах.

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



    Также поддерживаются фильтры, которые позволяют отфильтровывать информацию только по определенному критерию. Например, чтобы создать фильтр откройте меню "Filters" , затем выберите "IP..." , а дальше "Apply new filter" :

    Затем нужно указать имя фильтра:

    На следующем этапе вы можете расписать нужные параметры фильтрации:

    Чтобы применить фильтр нужно выбрать "Apply filter" и выбрать имя фильтра из списка:


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

    Мониторинг трафика Linux чаще всего выполняется администраторами именно с помощью этой утилиты. Видео про использование утилиты:

    Мониторинг сети с помощью других утилит

    Самая мощная программа для мониторинга сети - это iptraf. Она предоставляет всю необходимую для администраторов информацию. Но, кроме нее, существуют и другие продукты. Рассмотрим их более подробно.

    1. iftop

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

    Установить программу в Ubuntu можно командной:

    sudo apt install iftop

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

    2. nload

    nload - это очень простая утилита, которая отображает только скорость входящих и исходящих соединений. Это позволяет сделать примитивный анализ сети linux и определить нагрузку. Отображается текущая скорость, максимальная и минимальная скорость за период работы. Также данные о скорости выводятся в виде графика, поэтому вам будет достаточно беглого взгляда, чтобы понять что происходит.

    Для установки программы в Ubuntu используйте команду:

    sudo apt install nload

    3. nethogs

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

    Программа, как и другие доступна из официальных репозиториев, поэтому у вас не возникнет проблем с установкой:

    sudo yum install nethogs

    4. bmon

    Утилита bmon позволяет отображать достаточно подробно статистику по каждому сетевому интерфейсу. Она работает похоже на nload и выводит график кроме текстовой информации:

    Для установки программы выполните:

    sudo apt install bmon

    5. Vnstat

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

    sudo systemctl start vnstat

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

    Видео про использование и настройку vnstat:

    6. bwm-ng

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

    Для установки утилиты выполните такую команду:

    sudo apt install bwm-ng

    7. speedometer

    Это еще один простой инструмент, который позволяет выполнить мониторинг сети и выводит данные в виде красивых графиков. Для установки программы выполните:

    sudo pip install speedometer

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

    speedometer -r enp2s0f0 -t enp2s0f0

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

    8. netwatch

    Netwatch - это небольшая утилита, которая входит в набор инструментов Netdiag и показывает сетевые соединения между локальной и удаленными системами, а также скорость, с которой будут передаваться данные. Для установки программы используйте:

    sudo apt install netdiag

    Затем для запуска:

    9. ifstat

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

    sudo apt install ifstat

    Для запуска:

    10. trafshow

    Это утилита, очень похожа на iftop, которая отображает не только скорость передачи, но и сами соединения. Здесь выводится информация по соединениях, размеры пакетов и протокол. Для установки программы наберите:

    sudo apt install trafshow

    Осталось запустить программу:

    Выводы

    В этой статье мы рассмотрели команду Iptraf, а также еще несколько полезных утилит, с помощью которых можно выполнять мониторинг сети linux на сервере или домашнем компьютере. Некоторые из этих инструментов можно использовать даже в корпоративной среде. В качестве альтернативы вы можете использовать инструменты с веб-интерфейсом. Некоторые из них перечислены в статье . А какие инструменты мониторинга используете вы? Напишите в комментариях!