По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
У вас возникли проблемы с контролем использования пропускной способности вашей сети Linux? Вам нужна помощь? Здесь важно, чтобы вы могли визуализировать то, что происходит в вашей сети, чтобы вы могли понять, что вызывает замедление работы сети, или просто наблюдать за своей сетью. В данной статье мы рассмотрим 17 полезных средств контроля пропускной способности для анализа использования сети в системе Linux. Перечисленные ниже средства имеют открытый исходный код и смогут помочь вам ответить на вопрос из серии «почему сеть сегодня так медленно работает?» Эта статья включает в себя описание средств контроля пропускной способности на одном компьютере с Linux и описание комплексных решений контроля, которые способны обрабатывать несколько хостов в LAN (Local Area Network – локальная вычислительная сеть) или даже в WAN (Wide Area Network – глобальная вычислительная сеть). 1. vnStat – контроль сетевого трафика vnStat – это полнофункциональная программа на основе командной строки для контроля сетевого трафика Linux и использования полосы пропускания сети в режиме реального времени в системах Linux и BSD. Одно из преимуществ этого средства перед аналогичными средствами заключается в том, что он регистрирует статистику сетевого трафика и использования полосы пропускания сети для последующего анализа – это его поведение по умолчанию. Фактически вы можете просматривать эти журналы даже после перезагрузки системы. Установка vnStat в Linux $ sudo yum install sysstat [On Older CentOS/RHEL & Fedora] $ sudo dnf install sysstat [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install sysstat [On Debian/Ubuntu & Mint] $ sudo pacman -S sysstat [On Arch Linux] 2. iftop – отображение использования полосы пропускания сети iftop – это простое и удобное в использовании средство контроля пропускной способности сети в режиме реального времени на основе командной строки, который используется для быстрого обзора операций сетевого трафика в интерфейсе. Оно отображает обновленные данные пропускной способности сети в среднем каждые 2, 10 и 40 секунд. Установка iftop в Linux $ sudo yum install iftop [On Older CentOS/RHEL & Fedora] $ sudo dnf install iftop [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install iftop [On Debian/Ubuntu & Mint] $ sudo pacman -S iftop [On Arch Linux] 3. nload – отображение использование сети nload – еще одно простое и удобное средство командной строки для контроля сетевого трафика и использования полосы пропускания сети в режиме реального времени. Оно использует графическое представление информации, чтобы у вас была возможность контролировать входящий и исходящий трафик. Помимо этого, оно также отображает такую информацию, как общий объем переданных данных и минимальное/максимальное использование сети. Установка nload в Linux $ sudo yum install nload [On Older CentOS/RHEL & Fedora] $ sudo dnf install nload [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install nload [On Debian/Ubuntu & Mint] $ sudo pacman -S nload [On Arch Linux] 4. NetHogs – контроль пропускной способности сетевого трафика NetHogs – это текстовое средство, чем-то похожее на предыдущее, для контроля использования пропускной способности сетевого трафика каждым процессом или приложением в режиме реального времени, которое работает в системе Linux. Оно отображает статистику использования пропускной способности вашей сети в режиме реального времени для каждого процесса. Установка NetHogs в Linux $ sudo yum install nethogs [On Older CentOS/RHEL & Fedora] $ sudo dnf install nethogs [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install nethogs [On Debian/Ubuntu & Mint] $ sudo pacman -S nethogs [On Arch Linux] 5. bmon – контроль пропускной способности и оценка скорости bmon – это простое в использовании средство командной строки для контроля использования пропускной способности сети и оценки скорости в Linux. Оно собирает сетевую статистику и визуализирует ее в удобном для пользователя формате, чтобы он мог наблюдать за работой своей системы. Установка bmon в Linux $ sudo yum install bmon [On Older CentOS/RHEL & Fedora] $ sudo dnf install bmon [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install bmon [On Debian/Ubuntu & Mint] $ sudo pacman -S bmon [On Arch Linux] 6. Darkstat – захват сетевого трафика Darkstat – это небольшой, простой в использовании, кросс-платформенный, работающий в режиме реального времени, эффективный веб-анализатор сетевого трафика. Это средство контроля сетевой статистики, которое работает за счет захватывания сетевого трафика и статистики использования компьютера и предоставляет отчеты по протоколу HTTP в графическом формате. Его также можно использовать через командную строку, результаты будут те же. Установка Darkstat в Linux $ sudo yum install darkstat [On Older CentOS/RHEL & Fedora] $ sudo dnf install darkstat [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install darkstat [On Debian/Ubuntu & Mint] $ sudo pacman -S darkstat [On Arch Linux] 7. IPTraf – контроль IP-сети IPTraf – это простое в использовании настраиваемое средство, основанное на ncurses, для контроля входящего и исходящего сетевого трафика, проходящего через интерфейс. Это важно для контроля IP-трафика и просмотра общей и подробной статистики интерфейса и многого другого. Установка IPTraf в Linux $ sudo yum install iptraf [On Older CentOS/RHEL & Fedora] $ sudo dnf install iptraf [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install iptraf [On Debian/Ubuntu & Mint] $ sudo pacman -S iptraf [On Arch Linux] 8. CBM – (Color Bandwidth Meter) CBM – это небольшая утилита командной строки для отображения текущего сетевого трафика на всех подключенных устройствах в цветах Ubintu Linux и его производных, таких как Linux Mint, Lubuntu и других. Она показывает каждый подключенный сетевой интерфейс, полученные и переданные байты, а также общее количество байтов, что позволяет контролировать пропускную способность сети. Установка CBM в Linux $ sudo yum install cbm [On Older CentOS/RHEL & Fedora] $ sudo dnf install cbm [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install cbm [On Debian/Ubuntu & Mint] $ sudo pacman -S cbm [On Arch Linux] 9. Iperf/Iperf3 – средство измерения пропускной способности сети Iperf/Iperf3 – это мощный инструмент для измерения пропускной способности сети по таким протоколам, как TCP, UDP и SCTP. В первую очередь он создан для настройки TCP-соединений по определенному пути, а поэтому полезен и в тестировании и контроле максимально достижимой пропускной способности в IP-сетях (поддерживает как IPv4, так и IPv6). Для проведения тестирований, которые сообщают информацию о пропускной способности, потерях и других полезных параметрах производительности сети, требуются сервер и клиент. Установка Iperf3 в Linux $ sudo yum install iperf3 [On Older CentOS/RHEL & Fedora] $ sudo dnf install iperf3 [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install iperf3 [On Debian/Ubuntu & Mint] $ sudo pacman -S iperf3 [On Arch Linux] 10. Netperf – тестирование пропускной способности сети Netperf чем-то похож на iperf для тестирования производительности сети. Он может помочь в контроле пропускной способности сети в Linux путем измерения передачи данных с использованием TCP, UDP. Также он поддерживает измерения через интерфейсы Berkeley Sockets, DLPI, Unix Domain Sockets и другие. Для запуска тестов потребуется сервер и клиент. Установка Netperf в Linux $ sudo yum install netperf [On Older CentOS/RHEL & Fedora] $ sudo dnf install netperf [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install netperf [On Debian/Ubuntu & Mint] $ sudo pacman -S netperf [On Arch Linux] 11. SARG – (Squid Analysis Report Generator) SARG – это анализатор лог-файлов Squid и инструмент для контроля скорости Интернет-соединения. Он формирует отчеты в формате HTML, которые включают в себя информацию об IP-адресах и общем использовании полосы пропускания сети. Это удобное в использовании средство контроля скорости Интернет-соединения отдельными устройствами в одной сети. 12. Monitorix – средство контроля системы и сети Monitorix – это небольшое приложение для контроля ресурсов системы и сети, предназначенное для небольших серверов Linux/Unix, а также обеспечивающее отличную поддержку встроенных устройств. Это приложение поможет вам отслеживать сетевой трафик и статистику использования с неограниченного количества сетевых устройств. Оно поддерживает соединения IPv4 и IPv6, включая пакетный трафик и графики сбоя трафика, а также поддерживает до 9 дисков на каждый сетевой интерфейс. Установка Monitorix в Linux $ sudo yum install monitorix [On Older CentOS/RHEL & Fedora] $ sudo dnf install monitorix [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux] $ sudo apt-get install monitorix [On Debian/Ubuntu & Mint] $ sudo pacman -S monitorix [On Arch Linux] 13. Cacti – средство контроля сети и отображения графической информации Cacti – это полнофункциональное веб-приложение PHP для построения сетевых трафиков с интуитивно понятным и простым в использовании интерфейсом. Для хранения собранных данных о производительности, которые в дальнейшем будут использоваться для построения графиков, оно использует базу данных MySQL. Это интерфейс для RRDTool, полезный для контроля небольших и сложных сетей с тысячами устройств. 14. Observium – платформа контроля сети Observium – это полнофункциональная платформа для контроля сети с изящным и мощным, надежным, но простым в использовании и интуитивно понятным интерфейсом. Оно поддерживает ряд платформ, таких как Linux, Windows, FreeBSD, Cisco, HP, Dell и другие, а также имеет функцию автоматического определения устройств. Данное приложение помогает пользователям собирать сетевые показатели и предлагает интуитивно понятное графическое представление показателей устройств, на основе собранных данных о производительности. 15. Zabbix – средство контроля приложений и сети Zabbix – это многофункциональная, широко известная и используемая платформа контроля сети, разработанная по модели «клиент-сервер» для контроля сетей, серверов и приложений в режиме реального времени. Она собирает данные различных типов, которые в дальнейшем использует для визуализации производительности сети или показателей нагрузки отслеживаемых устройств. Она может работать со многими широко известными протоколами, такими как HTTP, FTP, SMTP, IMAP и другими, без необходимости устанавливать какое-то дополнительное программное обеспечение на контролируемые устройства. 16. Nagios – контроль систем, сетей и инфраструктуры Nagios – это надежное, мощное, многофункциональное, широко известное и используемое программное обеспечение для контроля. Оно позволяет контролировать локальные и удаленные сетевые устройства, и их службы из единого окна. Оно предлагает контроль пропускной способности сетевых устройств, таких как коммутаторы и маршрутизаторы, через протокол SNMP, что позволяет легко выявлять чрезмерно используемые порты и возможных злоумышленников в сети. Помимо этого, Nagios также помогает отслеживать использования полосы пропускания сети для каждого порта и ошибки, а также может быстро обнаружить сбой в работе сети или протокола. Заключение В данной статье мы рассмотрели ряд полезных средств контроля пропускной способности сети и системы для Linux.
img
Всем привет! Мы продолжаем знакомиться с операционной системой Cisco IOS. Недавно в статьях мы уже рассмотрели операционную систему Cisco IOSи ее режимы. В этой статье мы рассмотрим основную структуру команд Cisco IOS. Структура команд Устройства, работающие на Cisco IOS, поддерживают множество команд, каждая из которых имеет определенный формат или синтаксис и может быть выполнена только в соответствующем режиме. Общий синтаксис команды - это команда, за которой следуют любые подходящие ключевые слова и аргументы. Некоторые команды включают подмножество ключевых слов и аргументов, которые обеспечивают дополнительную функциональность. Команды используются для выполнения действия, а ключевые слова используются для идентификации. Команда представляет собой начальное слово или слова, введенные в командной строке. Команды не чувствительны к регистру. После каждой введенной команды, включая любые ключевые слова и аргументы, нужно нажать Enter, чтобы отправить команду командному интерпретатору. Ключевые слова описывают конкретные параметры командного интерпретатора. Например, команда show используется для отображения информации об устройстве. Эта команда имеет различные ключевые слова, которые должны использоваться для определения того, какой конкретный вывод должен отображаться. Например: Switch # show running-config За командой show следует ключевое слово running-config, которое указывает, что текущая конфигурация должна отображаться в качестве вывода. Для команды может потребоваться один или несколько аргументов. В отличие от ключевого слова, аргумент обычно не является предопределенным словом. Аргумент - это значение или переменная, определяемая пользователем. Например: Switch> traceroute 192.168.254.254 Traceroute - команда, 192.168.254.254 - определяемый пользователем аргумент. Контекстно-зависимая справка Контекстно-зависимая справка содержит список команд и аргументов, связанных с этими командами в контексте текущего режима. Чтобы получить доступ к контекстно-зависимой справке, нужно ввести знак вопроса “?” в любом меню. Результат появится сразу, даже без нажатия клавиши Enter. Одна из методов использования контекстно-зависимой справки - это получение списка доступных команд. Это можно использовать, если вы не уверены как правильно пишется команда или хотите увидеть, поддерживает ли IOS определенную команду в определенном режиме. Например, чтобы отобразить команды, доступные на уровне User EXEC, нужно ввести знак вопроса “?”, в меню Switch. Другое использование контекстно-зависимой справки - отображать список команд или ключевых слов, которые начинаются с определенного символа или символов. После ввода последовательности символов, если знак вопроса сразу вводится без пробела, IOS отобразит список команд или ключевых слов для этого контекста, которые начинаются с введенных символов. Например, можно ввести sh? для получения списка команд, начинающихся с sh. И еще один тип контекстно-зависимой справки используется для определения того, какие параметры, ключевые слова или аргументы сопоставляются с определенной командой. При вводе команды введите пробел, за которым следует символ “?” определить, что может или должно быть введено дальше. Например: Switch# cl clear clock Switch# clock set ? hh:mm:ss Current Time Switch# clock set 13:30:00 ? <1-31> Day of the month MONTH Month of the year Switch# clock set 13:30:00 21 February 2018 ? Switch# clock set 13:30:00 21 February 2018 Проверка синтаксиса команд Когда команда отправляется нажатием клавиши Enter, интерпретатор командной строки анализирует команду слева направо, чтобы определить, какое действие запрашивается. Обычно IOS обеспечивает только отрицательную обратную связь, если что-то было введено неверно. Если интерпретатор не может понять введенную команду, он предоставит информацию о том, что не так с командой. Двойственная команда (Ambiguous command) – введено недостаточно символов для, чтобы система распознала команду. Switch# c % Ambiguous command:’c’ Неполная команда (Incomplete command) – не все необходимые ключевые слова или аргументы были введены. Switch# clock set % Incomplete command. Неверная команда (Invalid input) – команда введена некорректно. Ошибка произошла в месте, на которое указывает маркер Switch#clok set 13:30:00 21 February 2018                 ^ %Invalid input detected at ‘^’ marker. Горячие клавиши и сочетания клавиш В CLI IOS есть возможность использовать горячие клавиши и сочетания клавиш, которые облегчают использование системы. Рассмотрим наиболее полезные из них: Стрелка вниз - позволяет прокручивать строку вперед по введенным командам Стрелка вверх – Позволяет прокручивать строку назад по введенным командам Tab - завершает оставшуюся часть частично введенной команды или ключевого слова Ctrl-A - переход к началу строки Ctrl-E - перемещение в конец строки Ctrl-R – повторное отображение строки Ctrl-Z - Выход из режима конфигурации и возврат к User EXEC Ctrl-C - выход из режима конфигурации или прерывание текущей команды Ctrl-Shift-6 - Позволяет пользователю прерывать процесс IOS, такой как ping или traceroute Рассмотрим их подробнее. Tab Клавиша Tab используется для завершения оставшейся части сокращенной команды и параметра, если аббревиатура содержит достаточно букв, чтобы отличаться от любых других доступных в данный момент команд или параметров. Когда для ввода уникальной команды или ключевого слова было введено достаточно символов, нужно нажать Tab, и CLI отобразит остальную часть команды или ключевого слова. Ctrl-R Повторное отображение строки обновит только что напечатанную строку. Например, IOS может отобразить сообщение в CLI во время набора команды пользователем. Ctrl-R можно использовать для обновления строки и избегать повторного ее ввода. Ctrl-Z Выход из режима конфигурации выйдет из любого режима конфигурации и вернется в привилегированный режим EXEC. Поскольку IOS имеет иерархическую структуру, вместо того, чтобы выходить из каждого подрежима отдельно, можно использовать Ctrl-Z, привилегированный режим EXEC. Стрелки вверх и вниз При помощи стрелок можно отображать историю введенных команд. Cisco IOS выполняет буферизацию нескольких прошлых команд и символов, чтобы записи могли быть снова отображены. Буфер полезен для повторного ввода команд без повторного набора. Ctrl-Shift-6 Эта последовательность прерывает любой выполняющийся процесс. Когда процесс IOS инициируется из CLI, например, ping или traceroute, команда работает до тех пор, пока не будет завершена или не будет прервана. Пока процесс выполняется, CLI не отвечает. Чтобы прервать вывод и взаимодействовать с CLI, нужно нажать Ctrl-Shift-6. Ctrl-C Прерывает ввод команды и выходит из режима конфигурации. Это может быть полезно после ввода команды, которая должна быть отменена. Сокращенные команды или ключевые слова Команды и ключевые слова могут быть сокращены до минимального количества символов, которые идентифицируют уникальный выбор. Например, команда configure может быть сокращена до conf, поскольку configure является единственной командой, которая начинается с conf. Аббревиатура con не будет работать, потому что более чем одна команда начинается с con. Ключевые слова также могут быть сокращены. Пример: Switch# show interfaces Switch# sh int
img
Каждое семейство операционных систем производит загрузку по-своему. Это связанно с различной архитектурой ядра операционной системы, разными инструкциями по работе с подключенными устройствами. В данной статье попробую разобрать загрузку популярной операционной системы на ядре Linux Ubuntu. Схематично процесс загрузки можно отобразить следующим образом. Загружаемся Итак, Нажимаем кнопку включения компьютера, и центральный процессор переходит на адрес BIOS. BIOS или UEFI, в более современных компьютерах, проводит систему проверок и выбирает носитель информации с которого будет производится загрузка операционной системы. На носителе находится MBR (Master Boot Record) или GPT (Guid Partition table) на новых компьютерах в которых находится загрузчик. А дальше уже в зависимости от настройки. Загрузчик может самостоятельно загружать операционную систему, а может передавать управление следующему загрузчику. Например, если Windows и Linux установлены на одном компьютере и находятся на разных разделах жесткого диска. В любом случае, если идет речь о Linux у нас есть первая стадия с небольшой частью кода, которая загружает у нас загрузчик. Загрузчик знает где лежит ядро операционной системы, загружает ядро, загружает initial run disk, там находятся необходимые файлы и модули для загрузки ядра. Далее уже ядро берет процесс управления на себя. Происходит инициализация устройств, конфигурирование процессов памяти и так далее. После всех этих процессов ядро запускает процесс init. Вернемся к вопросу загрузчиков, для каждой операционной системы разработан свой загрузчик, а иногда и несколько. NTLDR - Загрузчик операционной системы Windows, LILO - один из стандартных загрузчиков для Linux и BSD системы. GRUB - загрузчик операционной системы от проекта GNU. Нас интересуют последние два. Данные загрузчики работают в два этапа. На первом этапе у них крошечный код на MBR или GPT, который запускает исполнение кода второго этапа. Перейдем непосредственно к самой загрузке. Данное меню мы можем получить при загрузке если зажать клавишу Shift. Как видно на картинке в данном примере загрузчик GRUB версии 2.04. У нас есть несколько вариантов. Загрузка Ubuntu по умолчанию и вариант загрузки с расширенными опциями. В нашем случае расширенные опции не дают многого, а всего лишь позволяют начать загрузку в режиме восстановления recovery mode. Данная опция не является целью стати, и мы ее опустим. Вернемся к первому пункту загрузки. Выбираем, нажимаем "e" получаем следующую картину загрузки. На данной картинке можно увидеть, что корневой раздел монтируется по uuid, он будет корневым root и непосредственно сам id. ID раздела можно посмотреть после загрузки операционной системы командой blkid. Можно часть параметров отредактировать или большинство. Более подробно можно поискать в интернете. По нажатию F10 осуществляется продолжение загрузки операционной системы. После загрузки операционной системы, мы можем с помощью команды dmesg посмотреть, сообщения ядра, все что происходило с ядром. Нужно различать сообщения ядра и лог ядра. Который можно посмотреть cat /var/log/dmesg. Данный файл содержи информацию только о загрузке операционной системы. В данном файле содержится информация с самого начала загрузки операционной системы и до конца. Если событие происходит позднее, то в данном файле этой информации вы не найдете. Система инициализации ОС Есть такое понятие Init - это первый или родительский процесс, который запускает все последующие процессы. Это может быть проверка и монтирование файловых систем запуск служб и.т.д. Существует 3 варианта работы этого родительского процесса. Init в стиле SysV - родительский процесс инициализации системы на одном из заданных уровней запуска (runlevel); Т.е. есть несколько уровней загрузки (runlevel) обычно их 7 штук. Один из них - это обычный многопользовательский режим. Другие это выключение компьютера, перезагрузка, режим восстановления и т.д. Init в стиле systemd - родительский процесс инициализации системы в ускоренном режиме, за счёт параллельного запуска задач; Ускоренный режим достигается за счет использования процессора в частности Intel, который позволяет запускать процессы инициализации параллельно. К этому режиму есть еще куча софта библиотек, которые расширяют функционал. Init в стиле Upstart - родительский процесс инициализации системы на основе отслеживания событий; Данный режим используется на Ubuntu уже давным - давно, тут не только запускаются скрипты инициализации, но и запускаются скрипты отслеживания событий и реагирования на них. Т.е. это более гибкий процесс инициализации, например, если какая-то служба не запустилась или упала в процессе загрузки то, upstart умеет это отследить и запустить это повторно В операционной систему Ubuntu можно посмотреть дерево процессов использую команду pstree. В результате ее вывода мы можем увидеть, что родительским процессом являлся процесс systemd. Который запускал уже свои, какие-то дочерние процессы. Перейдем в корневую директорию boot. Здесь мы можем увидеть директорию загрузчика grub. Ядра линуксовые vmlinuz (ссылка на ядро) и до обновления старое ядро vmlinux.old (ссылка на старое ядро). Соответственно пара initrd* - файлы диска, эти файлы содержат диск, который грузится в оперативную память, данный диск содержит файлы необходимые самому ядру Linux для нормальной загрузки. Перейдя в директорию grub, мы можем найти конфигурационный файл grub.cfg и несколько вспомогательных, но не менее важных фалов. Соответственно мы можем внести изменения в данный файл на постоянной основе и соответственно данный код будет выполнятся при каждой загрузке операционной системы.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59