Проверим службу, которая больше всего «отъедает» ресурсов процессор. Для этого, перейдем в раздел Tools → Profile:
пятница, 1 сентября 2023 г.
Мониторинг пропускной способности и скорости сети в Linux
Speedtest
Speedtest - старый фаворит. Это инструмент для проверки скорости загрузки и скачивания с использованием speedtest.net. Он реализован на Python, упакован в Apt, а также доступен с pip. Вы можете использовать его как инструмент командной строки или в скрипте Python.
Установите его с помощью:
sudo apt install speedtest-cli
Или:
sudo pip3 install speedtest-cli
Затем запустите его с помощью команды speedtest
:
speedtest
Retrieving speedtest.net configuration...
Testing from CenturyLink (65.128.194.58)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by CenturyLink (Cambridge, UK) [20.49 km]: 31.566 ms
Testing download speed................................................................................
Download: 68.62 Mbit/s
Testing upload speed......................................................................................................
Upload: 10.93 Mbit/s
Это быстрая, и пригодная для скриптов утилита, поэтому вы можете запускать его регулярно и сохранять результаты в файл или базу данных для записи скорости вашей сети с течением времени.
Fast
Fast - это услуга, предоставляемая Netflix. Его веб-интерфейс расположен на Fast.com, а интерфейс командной строки доступен через npm:
npm install --global fast-cli
И веб-сайт, и утилита командной строки предоставляют один и тот же базовый интерфейс - это простой тест скорости, и ничего лишнего:
fast
82 Mbps v
Команда показывает вашу скорость скачивания (download) через Интернет. Чтобы получить скорость загрузки (upload), используйте флаг -u
:
fast -u ? 80 Mbps v / 8.2 Mbps ^
iPerf
iPerf (iPerf3) - отличный способ проверить скорость вашей локальной сети (а не скорость Интернета, как это делают два предыдущих инструмента). Пользователи Debian, Raspbian и Ubuntu могут установить его с помощью apt:
sudo apt install iperf [Debian/Ubuntu]
yum install epel-release [RHEL/CentOS]
yum install iperf3 [RHEL/CentOS]
iPerf также доступен в Window и Mac
После установки вам понадобятся два компьютера в одной сети, чтобы использовать его (на обоих должен быть установлен iPerf). Один мы будем использовать в качестве сервера.
Узнайте IP-адрес сервера:
ip addr show | grep inet.*brd
Запустите iperf
на сервере:
iperf -s
Это компьютер входящих соединений от клиентов. Теперь запустите на втором компьютере iperf с флагом -c
и укажите ip-адрес сервера.
iperf -c server_address
NetHogs
NetHogs это утилита для проверки полосы пропускания, который группирует информацию по процессам. Это может быть полезно, чтобы понять кто занимает всю полосу пропускания. NetHogs входит во многие дистрибутивы. Для его установки используйте:
yum install epel-release [RHEL/CentOS]
yum install nethogs [RHEL/CentOS]
apt install nethogs [Debian/Ubuntu]
Для запуска используйте:
sudo nethogs

Вы можете указать определенный интерфейс после команды:
sudo nethogs eth0
Также у команды есть дополнительные параметры, такие как выбор задержки для частоты обновления -d
, информации о версии -V
, tracemode -t
.
nload
nload позволяет отслеживать сетевой трафик и использование полосы пропускания в режиме реального времени, с большим количеством дополнительной информации, такой как: общий объем передаваемых данных, минимальное и максимальное использование сети и многое другое. Также nload строит графики входящего и исходящего трафика.
Опции nload:
device
- выбор интерфейса-a
- промежуток в секундах, для подсчитывания среднего значения-i
- стопроцентная планка на графике пропускной способности в kBit/s-m
- отображение нескольких интерфейсов, без графика-t
- интервал обновления в миллисекундах-u
- режим отображения: Bit/s, kBit/s, MBit/s

Для установки используйте:
sudo apt install nload [Debian/Ubuntu]
yum install epel-release [RHEL/CentOS]
um install nload [RHEL/CentOS]
Для запуска:
nload
CBM – Color Bandwidth Meter
CBM - очень простой инструмент, который отображает сетевой трафик на всех подключенных устройствах. Удобство заключается в том, что команды отображаются в нижней части терминала.

Для установки используйте команду:
sudo apt install cbm -y [Debian/Ubuntu]
yum install epel-release [RHEL/CentOS]
yum install cbm [RHEL/CentOS]
После этого просто запустите:
cbm
vnStat
vnStat - это монитор сетевого трафика, который использует статистику сетевого интерфейса, предоставляемую ядром, что означает что он не будет перехватывать трафик и в результате гарантирует низкую загрузку ЦПУ. Особенность vnStst в том, что он сохраняет все данные в собственной базе.

vnStat также предоставляет веб-интерфейс на основе php для отображения графической статистики. Для настройки веб-интерфейса vnStat в вашей системе должны быть установлены пакеты Apache
, php
и php-gd
.

Для установки используйте команду:
sudo apt install vnstat [Debian/Ubuntu]
sudo yum install epel-release [RHEL/CentOS]
sudo yum install vnstat [RHEL/CentOS]
Для запуска:
vnstat
iftop
iftop - это инструмент для мониторинга, который создает обновляемый список сетевых подключений между парами хостов в реальном времени.

Для установки используйте:
sudo apt install iftop [Debian/Ubuntu]
yum install epel-release[RHEL/CentOS]
yum install iftop [RHEL/CentOS]
Для запуска:
sudo iftop
Будет произведен запуск с мониторингом всех интерфейсов.
slurm
slurm - это еще один инструмент мониторинга сетевой нагрузки для linux, который показывает результаты в графике ascii.

Команды для установки:
sudo apt-get install slurm [Debian/Ubuntu]
sudo yum install slurm -y [RHEL/CentOS]
Установка и использование fping в Linux
Что такое fping?
Fping – это инструмент, аналогичный утилите ping, но гораздо более производительный в случае, когда нам нужно сделать пинг до нескольких узлов. С fping можно использовать файлы со списком адресов или даже указывать целые диапазоны сетей с маской.
Установка
В большинстве дистрибутивов Linux пакет fping можно установить из репозиториев:
# sudo apt install fping [ДляDebian/Ubuntu]
# sudo yum install fping [Для CentOS/RHEL]
# sudo dnf install fping [Для Fedora 22+]
# sudo pacman -S fping [Для Arch Linux]
Если нужно установить из исходного пакета, то используются следующие команды:
$ wget https://fping.org/dist/fping-4.0.tar.gz
$ tar -xvf fping-4.0.tar.gz
$ cd fping-4.0/
$ ./configure
$ make && make install
Готово! Теперь посмотрим, что мы сможем сделать с помощью fping
Пинг множества адресов
Используйте команду fping, а затем через пробел укажите нужные IP адреса
# fping 192.168.1.1 192.168.1. 192.168.1.3
192.168.1.1 is alive
192.168.1.1 is unreachable
192.168.1.3 is unreachable
Пинг диапазона адресов
Используйте ключи –s и –g, после которых укажите первый и последний адрес диапазона.
# fping -s -g 192.168.0.1 192.168.0.9
192.168.0.1 is alive
192.168.0.2 is alive
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.3
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.3
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.3
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.4
192.168.0.3 is unreachable
192.168.0.4 is unreachable
8 9 targets
2 alive
2 unreachable
0 unknown addresses
4 timeouts (waiting for response)
9 ICMP Echos sent
2 ICMP Echo Replies received
2 other ICMP received
0.10 ms (min round trip time)
0.21 ms (avg round trip time)
0.32 ms (max round trip time)
4.295 sec (elapsed real time)
Пинг целой подсети
Укажите маску подсети через слеш, чтобы пропинговать всю подсеть. Ключ –r 1 указывает на то, что будет одно повторение операции
# fping -g -r 1 192.168.0.0/24
Пинг с адресами из файла
Можно записать в файл список адресов (в нашем случае мы назвали его merionfping.txt), и зачитать из него адреса для пинга
# fping < fping.txt
192.168.1.20 is alive
192.168.1.100 is alive