Как отобразить фактический сетевой трафик (беспроводной) в терминале?
Дополнительно: возможно ли добавить эту информацию в график top
?
Как отобразить фактический сетевой трафик (беспроводной) в терминале?
Дополнительно: возможно ли добавить эту информацию в график top
?
Ответы:
Вот несколько хороших инструментов в репозиториях Ubuntu для мониторинга сетевого трафика командной строки:
bmon - показывает несколько интерфейсов одновременно
slurm - имеет красивые цветные графики
tcptrack - любимый. Сообщает, какая полоса пропускания используется, а также какой протокол (услуга / порт) и пункт назначения, к которому осуществляется передача. Очень полезно, когда вы хотите точно знать, что использует вашу пропускную способность
sudo apt-get install bmon slurm tcptrack
nload
заслуживает упоминания для лучшего разделения загрузки и выгрузки (также не красочный)
sudo apt install ethstatus
Это довольно просто! установить "iftop" с помощью:
sudo apt-get install iftop
Тогда беги
sudo iftop
с любого терминала!
Наслаждайтесь!
iftop
также запись или войти в пропускной способности сети время от времени? В настоящее время я использую оба vnstat
и iftop
для различного использования, и vnstat
регистрирует использование пропускной способности. Это было бы чрезмерно и добавило бы больше нагрузок на мой сервер, если бы iftop
это тоже делалось.
Кто-то должен был также упомянуть nethogs
.
Разница в том, что, может быть, и круче, это то, что он показывает трафик на процесс , как показано на рисунке.
Взгляните на страницу
sudo apt-get -y install nethogs
затемsudo nethogs
apt-get install nethogs/jessie-backports
( сначала нужно добавить jessie-backports ).
Есть хороший инструмент, который называется спидометр, который отображает график в терминале, используя символы, цвета блока Юникода, и даже добавляет метки к каждому пику на графике.
$ sudo apt-get install speedometer
$ speedometer -l -r wlan0 -t wlan0 -m $(( 1024 * 1024 * 3 / 2 ))
Он имеет несколько параметров, может контролировать несколько интерфейсов, может отображать несколько графиков в нескольких строках или столбцах и даже может отслеживать скорость загрузки одного файла (наблюдая за размером файла на диске).
wlan0
в этой команде изменить eth0
имя или на любое другое имя сетевого интерфейса в вашей системе. См. Также: unix.stackexchange.com/a/125406
IPTraf - консольная утилита сетевой статистики для Linux. Он собирает различные цифры, такие как количество пакетов TCP и число байтов, статистика интерфейса и индикаторы активности, сбои трафика TCP / UDP, а также количество пакетов и байтов станции LAN.
Особенности
Монитор IP-трафика, который показывает информацию об IP-трафике, проходящем по вашей сети. Включает информацию о флаге TCP, количество пакетов и байтов, подробности ICMP, типы пакетов OSPF. Общая и подробная статистика интерфейса, показывающая количество IP, TCP, UDP, ICMP, не IP и других IP-пакетов, ошибки контрольной суммы IP, активность интерфейса, количество пакетов. Монитор служб TCP и UDP, показывающий количество входящих и исходящих пакетов для общих портов приложений TCP и UDP. Модуль статистики локальной сети, который обнаруживает активные узлы и показывает статистику, показывающую активность данных на них, TCP, UDP и другие фильтры отображения протокола, позволяя вам просматривать только интересующий вас трафик. Ведение журнала Поддерживает типы интерфейсов Ethernet, FDDI, ISDN, SLIP, PPP и loopback. Использует встроенный необработанный интерфейс сокетов ядра Linux, что позволяет использовать его для широкого спектра поддерживаемых сетевых карт. Полноэкранное управление через меню.
Протоколы признаны
IP TCP UDP ICMP IGMP IGP IGRP OSPF ARP RARP
Пакеты, отличные от IP, будут просто обозначены как «Non-IP» и в локальных сетях Ethernet будут снабжены соответствующими адресами Ethernet.
Поддерживаемые интерфейсы
Локальная обратная связь Все поддерживаемые Linux интерфейсы Ethernet Все поддерживаемые Linux интерфейсы FDDI SLIP Асинхронный PPP Синхронный PPP через ISDN ISDN с инкапсуляцией Raw IP ISDN с инкапсуляцией Cisco HDLC Parallel Line IP
Источник http://iptraf.seul.org/about.html
С apt
:
apt-get install iptraf
Или загрузите источник:
http://iptraf.seul.org/download.html
Текущие соединения:
Текущие порты:
Сводка всех интерфейсов:
Подробно для каждого интерфейса:
Источник http://iptraf.seul.org/shots.html
iptraf-ng
, заменили iptraf
.
tcpdump -i eth0
Это даст вам потоковую информацию обо всех данных, поступающих с этого интерфейса (вашей сетевой карты). Похоже на проволочную акулу.
Используйте, ifconfig
чтобы увидеть список интерфейсов ваших машин.
Я думаю, ifconfig [interface]
что сделаю это. Подобно:
gevorg @ gevorg-TravelMate-3260: ~ $ ifconfig wlan0 wlan0 Link encap: Ethernet HWaddr 00: 18: de: 89: 52: 71 MRODCAST MULTICAST MTU: 1500 Метрика: 1 Пакеты RX: 0 ошибок: 0 отброшено: 0 переполнений: 0 кадр: 0 Пакеты TX: 0 ошибок: 0 отброшено: 0 переполнений: 0 несущая: 0 столкновения: 0 txqueuelen: 1000 RX байтов: 0 (0,0 B) TX байтов: 0 (0,0 B) gevorg @ gevorg-TravelMate-3260: ~ $ ifconfig eth0 eth0 Link encap: Ethernet HWaddr 00: 16: 36: bf: 92: e3 адрес в сети Интернет: 192.168.10.100 Bcast: 192.168.10.255 Маска: 255.255.255.0 inet6 адрес: fe80 :: 216: 36ff: febf: 92e3 / 64 Область действия: ссылка UP BROADCAST RUNNING MULTICAST MTU: 1500 Метрика: 1 Пакеты RX: 342765 ошибок: 0 отброшено: 0 переполнений: 0 кадр: 0 Пакеты TX: 306183 ошибок: 0 отброшено: 0 переполнений: 0 несущая: 0 столкновения: 0 txqueuelen: 1000 RX байт: 373934806 (373,9 МБ) TX байт: 39111569 (39,1 МБ) Прерывание: 16
Он показывает RX-байты: 73934806 (373,9 МБ) и TX-байты: 39111569 (39,1 МБ) .
netstat -t -u -c
?
Еще одним полезным инструментом является Сар. Установить его,
apt install sysstat
Как это использовать:
sar -n DEV 1
И удивительный путеводитель Брендана:
sar
, которое выполняет работу и включено (и включено) по умолчанию с большинством, если не со всеми дистрибутивами.
Установите 'vnstat', он может показывать трафик для интерфейса. Вы можете установить несколько пакетов для построения графиков.
Если вы ищете что-то чрезвычайно простое, но все же полезное, попробуйте ifstat
$ sudo apt-get install ifstat
$ ifstat
eth0 wlan0
KB/s in KB/s out KB/s in KB/s out
0.00 0.00 0.96 4.79
0.00 0.00 0.04 0.14
Он контролирует все интерфейсы одновременно, печатая новую строку каждую секунду. Полезно для передачи в другой скрипт или для того, чтобы оставить работу и наблюдать за использованием полосы пропускания с течением времени. Не так красиво, как другие инструменты, но он выполняет свою работу.
На странице руководства есть несколько полезных опций :
-z Hides interface which counters are null, eg interfaces that are up but not used.
-n Turns off displaying the header periodically.
-t Adds a timestamp at the beginning of each line.
-T Reports total bandwith for all monitored interfaces.
-S Keep stats updated on the same line if possible (no scrolling nor wrapping).
-b Reports bandwith in kbits/sec instead of kbytes/sec.
ifstat -zntS
выводит только сетевые интерфейсы, которые не являются нулевыми, с временными метками, без заголовка, периодически показывающего и с результатами только в одной строке (я люблю man-страницы).
По словам человека ifconfig :
Эта программа устарела! Для замены проверьте IP-адрес и IP-ссылку. Для статистики используйте ссылку ip -s.
Итак, используя команду ip :
$ ip -s link
Мы можем получить сетевую статистику:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
173654497900 26078946 0 0 0 0
TX: bytes packets errors dropped carrier collsns
173654497900 26078946 0 0 0 0
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 12:34:56:78:90:00 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
3650412438854 399476618 0 2551849 0 0
TX: bytes packets errors dropped carrier collsns
617437624480 321390259 0 0 0 0
Или же
$ ip -s -h link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0 addrgenmode eui64
RX: bytes packets errors dropped overrun mcast
174G 26.1M 0 0 0 0
TX: bytes packets errors dropped carrier collsns
174G 26.1M 0 0 0 0 2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 12:34:56:78:90:00 brd ff:ff:ff:ff:ff:ff promiscuity 0 addrgenmode eui64
RX: bytes packets errors dropped overrun mcast
3.65T 399M 0 2.55M 0 0
TX: bytes packets errors dropped carrier collsns
617G 321M 0 0 0 0
Еще один возможный инструмент называется nload
.
http://linux.die.net/man/1/nload
Похоже на slurm
или bmon
, но немного проще.
Я недавно обнаружил, wavemon
что может быть легко установлен с помощью apt-get install wavemon
.
Этот инструмент предоставляет информацию, особенно об уровне сигнала беспроводной сети.
И это блог, показывающий список команд для мониторинга пропускной способности:
http://www.binarytides.com/linux-commands-monitor-network/
ОБНОВИТЬ:
Я использую NetHogs около двух месяцев. Он показывает вам общее использование полосы пропускания. С помощью следующей настройки вы можете дополнительно получить пропускную способность для каждой программы
sudo nethogs -v 3
Там тоже конки .
Возможно, вы указали пакет в используемых в настоящее время репозиториях вашей системы. Попробуйте запустить:
sudo apt-get install conky-all
Некоторая базовая информация о конфигурации: Документы сообщества Ubuntu: Настройка Conky . ВНИМАНИЕ: информация на этом сайте может быть устаревшей, поэтому, пожалуйста, проверьте, что перечисленные шаги применимы к вашей системе.
Конечно, на базовый conky смотреть очень скучно, поэтому вот хорошая тема conky, с которой можно начать:
Просто следуйте инструкциям на этой странице для настройки; чтобы установить определенную тему, скопируйте .conkyrc
файл из соответствующей папки для темы в .harmattan-themes
папке в свой домашний каталог.
Затем отредактируйте файл в соответствии с инструкциями на связанной странице.
ЧАЕВЫЕ
Измените файл после копирования его в свою домашнюю папку, таким образом вы сохраните исходные неизмененные файлы на случай, если вам потребуется повторно скопировать .conkyrc
файл для темы.
nettop
это еще один вариант (не в стандартных репозиториях Linux).
Чтобы построить клон репо:
git clone https://github.com/Emanem/nettop.git
Установите зависимости:
sudo apt-get install libncurses5-dev libncursesw5-dev build-essential libpcap-dev
И построить двоичный файл:
make
Бежать с:
sudo ./nettop
Кстати, в macos есть встроенная утилита, nettop
которая делает то же самое, но имеет больше возможностей.
top
?" часть? :)