Мониторинг локальной сети linux

5 инструментов для мониторинга сети в Linux

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

В данной статье мы посмотрим, что можно использовать из консольных инструментов и другого свободно распространяемого ПО. Знание нескольких простых команд и того, в каких случаях их использовать, поможет вам в будущем стать специалистом в области сетевой диагностики. Мы будем использовать для тестов Ubuntu 10.04, но все тестируемое так же хорошо работает и на других дистрибутивах.

Старый добрый Ping

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

Первая и важнейшая команда — ifconfig . Выполнение этой команды отобразит информацию о всех известных системе сетевых устройствах. На примере выше вы видите eth0 и lo. Первое соответствует сетевой карте Ethernet (с назначенным адресом 192.168.0.2), второе же — так называемая локальная петля или loopback-соединение. Данная команда также показывает MAC-адрес устройства (HWaddr) и статистику трафика. Эта команда должна быть первой, если у вас возникли проблемы с сетью, чтобы посмотреть, насколько верен IP-адрес и учитывается ли трафик или ошибки передачи данных.

Команда ping — вторая используемая после ifconfig для того, чтобы понять, имеет ли ваш компьютер связь с внешним миром. Выполнение запроса ping в направлении любого известного вам сетевого адреса (например, 4.2.2.1) моментально покажет, соединены вы с сетью или нет. Также оно покажет время выполнения запроса. Обычно время выполнения при типе соединения DSL должно быть около 50 миллисекунд.

После этих двух команд можно попробовать выполнить команду route . Она отобразит список IP адресов, включающий конечный адрес (Destination) и адрес шлюза (Gateway), назначенных одному из устройств, а также дополнительную информацию, например, колонку Flags. В этой колонке будет написана буква G в строке, связанной со шлюзом по умолчанию. Вы можете использовать этот адрес в команде ping , чтобы установить, соединен ли ваш компьютер со шлюзом.

EtherApe

EtherApe может быть установлена из Центра приложений Ubuntu. Данная программа использует библиотеки GNOME и libpcap для отображения визуальной карты всего сетевого трафика, проходящего через выбранный интерфейс. После установки значок EtherApe появится в меню Приложения / Система. Однако, когда мы ее запустили таким образом, мы не смогли открыть ни одного сетевого устройства, поскольку для этого необходимы права суперпользователя. Поэтому мы запустили EtherApe из командной строки, используя sudo :

Когда вы запустили программу, она должна начать строить графическое отображение трафика, проходящего через основной Ethernet-интерфейс. Вы можете выбрать другое устройство, если ваш компьютер имеет несколько сетевых карт, через меню Capture / Interfaces. EtherApe также может отображать данные из сохраненного pcap-файла и отображать трафик определенного протокола.

Nmap — широко используемый сетевой сканер, предназначенный для использования в целях безопасности, впервые выпущенный в 1997 году. Он использует множество специальных пакетов для проверки сети с самыми различными целями, включая создание карты IP адресов, определения установленной на удаленном компьютере операционной системы и выяснения диапазона портов по указанному IP-адресу. Одна из основных функций — так называемый ping sweep , то есть серия ping-запросов с целью выяснения, с какими адресами компьютеры соединены с сетью. Делается это следующим образом:

$ nmap -sP 192.168.0.1-255

Также существует ряд графических приложений, доступных в Центре приложений Ubuntu, которые используют nmap как основу и отображают результаты в более «дружелюбном» режиме. Примеры таких приложений — NmapSI4, использующий интерфейс Qt4, и Zenmap.

Читайте также:  Run jar programs on windows

Tcpdump

Захват сетевого трафика для его дальнейшего анализа — первостепенная функция tcpdump . Захват пакета осуществляется посредством libpcap, а уже конечное отображение и анализ совершается tcpdump. Необработанная информация Ethernet-пакетов записывается в файл pcap для дальнейшего их исследования. Этот же формат используется и другими инструментами анализа пакетов, такими как, например, Wireshark.

Команда запуска tcpdump для захвата базового трафика может быть следующей:

$ sudo tcpdump nS

Команда sudo необходима для получения доступа к основному Ethernet-устройству. Данная команда отобразит основную информацию, включающую время, адрес отправления и адрес назначения, а также тип пакета. Tcpdump будет продолжать работать и отображать информацию в терминале до тех пор, пока вы не нажмете Ctrl-C. Tcpdump — самый лучший и быстрый спосою записи сетевого трафика в файл. Команда для этой цели может быть следующей:

$ sudo tcpdump s w pktfile.pcap

Wireshark

Wireshark, ранее известный как Ethereal, стал выбором многих, если не большинства, профессионалов в области сетевого администрирования. (Пользователи Ubuntu 10.04 найдут Wireshark в Центре приложений Ubuntu в разделе «Интернет».) Как это было и с другими инструментами, мы запустили Wireshark из командной строки, используя sudo , чтобы увидеть доступные Ethernet-устройства. После запуска слева в главном окне можно будет увидеть список доступных интерфейсов. После выбора необходимого физического или виртуального устройства, вы попадете на страницу, где будут отображаться сетевые пакеты.

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

Заключение

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

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

Источник

Мониторинг сети Linux

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

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

Инструменты имеют разные механизмы формирования отчета о трафике. Некоторые из инструментов, таких как nload, читают файл «/ proc / net / dev» для получения статистики трафика, тогда как некоторые инструменты используют библиотеку pcap для захвата всех пакетов, а затем вычисляют общий размер для оценки нагрузки трафика.

Мониторинг сети Linux

Ниже приведен список команд, отсортированных по их функциям.

  1. Общая пропускная способность — nload, bmon, slurm, bwm-ng, cbm, спидометр, netload
  2. Общая пропускная способность (выход пакетного стиля) — vnstat, ifstat, dstat, collectl
  3. Ширина полосы пропускания для каждого сокета — iftop, iptraf, tcptrack, pktstat, netwatch, trafshow
  4. Пропускная способность для каждого процесса — nethogs

Nload

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

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

Чтобы выйти мониторинга сети, достаточно нажать клавишу Q

Установить nload в Debian или Ubuntu можно из репозиториев по-умолчанию:

Пользователи CentOS или Fedora могут установить nload командой:

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки nload заново.

iftop

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

Читайте также:  Приложение кинопоиск для mac os

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

Опция n не позволяет iptop отыскивать IP-адреса на имя хоста, что вызывает дополнительный сетевой трафик.

Установить iftop в Debian или Ubuntu можно из репозиториев по-умолчанию.

Пользователи CentOS или Fedora могут установить iftop командой:

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить Epel

А затем ввести команду установки iftop заново.

iptraf

Iptraf — это интерактивный и красочный монитор IP Lan. Он показывает индивидуальные соединения и объем данных, передаваемых между хостами. Вот скриншот

Установка iptraf в Ubuntu или Debian:

Установка iptraf в CentOS или Fedora

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки iptraf заново.

Nethogs

Nethogs — это небольшой инструмент «net top», который показывает пропускную способность, используемую отдельными процессами, и сортирует список, в котором самые интенсивные процессы находятся сверху. В случае внезапного скачка полосы пропускания быстро открывайте nethogs и найдите ответственный за процесс. Nethogs сообщает PID, пользователя и путь программы.

Установка nethogs в Ubuntu или Debian:

Установка nethogs в CentOS или Fedora

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки nethogs заново.

Bmon (Bandwidth Monitor) — это инструмент, аналогичный nload, который показывает нагрузку на трафик по всем сетевым интерфейсам в системе. Вывод также состоит из графика и раздела с деталями уровня пакета. Bmon поддерживает множество опций и способен создавать отчеты в формате html.

Монитор сети bmon linux

Установка bmon в Ubuntu или Debian:

Установка bmon в Fedora

Slurm

Slurm является еще одним монитором сетевой нагрузки, который показывает статистику устройства вместе с графиком ascii. Он поддерживает 3 разных стиля графиков, каждый из которых может быть активирован с помощью клавиш c, s и l. Простой в функциях, slurm не отображает никаких дополнительных сведений о сетевой нагрузке.

Установить slurm в Debian или Ubuntu

Установить slurm в Fedora или CentOS

Tcptrack

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

Установка tcptrack в Ubuntu или Debian:

Установка tcptrack в Fedora

Vnstat

Vnstat немного отличается от большинства других инструментов где Мониторинг сети Linux является основой. На самом деле он запускает фоновый сервис / daemon и постоянно фиксирует размер передачи данных. Кроме того, его можно использовать для создания отчета об истории использования сети.

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

Чтобы отслеживать использование полосы пропускания в реальном времени, используйте параметр «-l» (режим «вживую»). Затем она покажет общую пропускную способность, используемую входящими и исходящими данными, но очень точным образом, без каких-либо внутренних сведений о хостах или процессах.

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

Vnstat поддерживает множество опций, подробности о которых можно найти на странице руководства.

Установить vnstat в Debian или Ubuntu

Установить vnstat в Fedora или CentOS

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки vnstat заново.

bwm-ng

Bwm-ng (Bandwidth Monitor Next Generation) является еще одним очень простым монитором сетевой нагрузки в режиме реального времени, который сообщает сводную информацию о скорости передачи данных и из всех доступных сетевых интерфейсов в системе.

Читайте также:  Просмотр файлов без windows

Если размер консоли достаточно велик, bwm-ng также может отображать гистограммы для трафика, используя режим вывода curses2.

Установка bwm-ng в Ubuntu или Debian

Установка bwm-ng в Fedora или CentOS

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки bwm-ng заново.

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

Установка cbm в Ubuntu или Debian

Установка cbm в Fedora или CentOS

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки cbm заново.

speedometer

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

Установка speedometer в Ubuntu или Debian

Pktstat

Pktstat отображает все активные соединения в реальном времени и скорость, с которой данные передаются через них. Он также отображает тип соединения, т. Е. Tcp или udp, а также информацию о HTTP-запросах, если они задействованы.

Установка speedometer в Ubuntu или Debian

Netwatch

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

Установка netwatch в Ubuntu или Debian (является частью netdiag)

Trafshow

Как и netwatch и pktstat, trafshow сообщает о текущих активных соединениях, их протоколе и скорости передачи данных в каждом соединении. Он может отфильтровывать соединения, используя фильтры типа pcap.

Кстати, если говорить про Мониторинг сети Linux то здесь можно отметить также и этот способ. Trafshow является таким же удобным как и его аналоги.

Мониторинг только соединений TCP

Установка trafshow в Ubuntu или Debian (является частью netdiag)

Установка trafshow в Fedora или Centos

Если в CentOS при установке возникли проблемы, то скорее всего вам нужно подключить epel

А затем ввести команду установки trafshow заново.

Netload

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

Установка netload в Ubuntu или Debian (является частью netdiag)

ifstat

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

Установка ifstat в Ubuntu или Debian

Установка ifstat в Fedora

Установка ifstat в CentOS. Необходимо сначала подключить RepoForge. Инструкцию можно увидеть здесь. Затем ввести:

dstat

Dstat — это универсальный инструмент (написанный на python), который может отслеживать различные системные статистики и сообщать о них в режиме пакетного стиля или записывать данные в файл csv или аналогичный файл. В этом примере показано, как использовать dstat для передачи информации о пропускной способности сети

Установка dstat в Ubuntu или Debian

collectl

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

Установка collectl в Ubuntu или Debian

Установка collectl в Fedora

Выводы

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

Ntop и Darkstat — это одни из основных сетевых средств мониторинга сети, доступных для Linux. Помимо этого, инструменты мониторинга уровня предприятия, такие как Nagios, предоставляют множество функций, позволяющих не только контролировать сервер, но и всю инфраструктуру.

Если у вас остались какие-то вопросы по теме «Мониторинг сети Linux» то, пишите нам про них в форму комментариев на сайте. Спасибо за визит!

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Оцените статью