5

У меня есть сервер Linux Linux и я хочу видеть текущие сетевые подключения и скорость загрузки / выгрузки каждого из них. Есть ли простая команда, которая выполняет эту цель?

4 ответа4

6

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

В порядке простоты настройки:

Простой пакет, который не требует много настроек - это iftop. Это покажет вам пропускную способность на процесс. скриншот iftop Это, вероятно, то, что вы хотите, если вы хотите простое решение в реальном времени.

  • Чтобы получить пропускную способность для каждого интерфейса, bwm-ng - это небольшой пакет, который показывает использование в реальном времени для каждого интерфейса.
  • netstat перечислит ваши открытые соединения и должен уже присутствовать в большинстве систем
  • ntop - очень полезный инструмент для мониторинга системы, который также может отслеживать TCP-соединения для каждого процесса, если вы устанавливаете модуль ядра для поддержки мониторинга сети.
  • Gacti, Nagios, NTOP и ганглии несколько более тяжелые весовые системы , которые могут выполнять мониторинг сети на хост / системы / службы / протокол / и т.д. , в зависимости от настройки для одного сервера к корпоративной сети в целом. См. Мониторинг сервера MediaWiki для реального примера работы ganglia .
2

Есть простой пакет, называемый nethogs, который показывает полосу пропускания, используемую отдельными процессами, и сортирует список, помещая самые интенсивные процессы на первое место.

# Ubuntu or Debian
$ sudo apt install nethogs

# Fedora or CentOS
$ sudo yum install nethogs -y
1

непрерывный опрос в режиме реального времени с интервалом в 5 секунд с использованием собственного netstat

netstat --interfaces = eth0 -c 5

Таблица интерфейса ядра

Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg

eth0 1500 0 601670041 0 0 0 290653338 0 0 0 BMRU

eth0 1500 0 601796657 0 0 0 290721761 0 0 0 BMRU

с помощью awk вы можете просто наблюдать интересующее вас поле, ниже приведенный пример, вы просто будете наблюдать, как 2 столбца RX и TX показывают, сколько пакетов было получено или передано без ошибок (RX-OK/TX-OK)

netstat --interfaces = eth0 -c 5 | awk '{print $ 4 "\t" $ 8}'

RX-OK TX-OK

605142559 292429624

605142595 292429661

0

Я использую iptraf для этого.

С Уважением,

http://catcher.hdcs.cz

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .