Команды Linux для работы в сети
Обновлено: 21.11.2024
Linux — это ядро операционной системы. Он был разработан Линусом Торвальдсом полностью с нуля. Однако это клон UNIX.
- Убунту Linux
- Red Hat Enterprise Linux
- Linux Mint
- Дебиан
- Федора
Непревзойденная безопасность и стабильность ядра Linux в сочетании с открытым исходным кодом делают его одним из наиболее широко используемых программ.
Если вы хотите обогатить свою карьеру и стать профессионалом в области сетей Linux, посетите Mindmajix — глобальную платформу онлайн-обучения: «Обучение работе с сетями Linux». Этот курс поможет вам достичь совершенства в этой области. .
Linux используется как при разработке программного обеспечения, так и на серверах. Большинство устройств и встроенных систем в мире используют тот или иной дистрибутив Linux.
Около 90 % интернет-серверов по всему миру являются серверами Linux. И около 80% смартфонов в мире работают на ядре Linux.
Все системы в мире теперь связаны через сеть. Взаимодействие между системами необходимо для обмена информацией.
Под сетевым взаимодействием на компьютерах понимается сетевое взаимодействие как внутри сети, так и в Интернете. Сеть может быть небольшой и простой, как домашняя сеть, или сложной, как сеть для космической станции.
Сеть включает настройку сети и устранение неполадок. В этом модуле мы узнаем о сетевых командах Linux и устранении неполадок в сети.
Сетевые команды Linux
Сетевые команды Linux широко используются для проверки, анализа, обслуживания и устранения неполадок в сетях, подключенных к системе.
Сначала дайте нам знать список основных сетевых команд, используемых в Linux, а затем подробное объяснение каждой из них.
Подробнее о сетевых командах Linux
1. есликонфиг
Linux ifconfig означает конфигуратор интерфейса. Это одна из самых основных команд, используемых при проверке сети.
ifconfig используется для инициализации интерфейса, настройки его IP-адреса, а также его включения или отключения. Он также используется для отображения маршрута и сетевого интерфейса.
- IP-адрес
- MAC-адрес
- MTU (максимальная единица передачи)
- Чтобы получить все подробности с помощью ifconfig
Синтаксис:
Вывод:
На этом рисунке показаны IP-адреса трех сетей: Ethernet, локальной сети и WLAN.
С помощью этой команды можно получить сведения об определенном интерфейсе. Это показано ниже.
Команды:
- Чтобы назначить IP-адрес и шлюз интерфейсу
Эту команду также можно использовать для назначения IP-адреса и шлюза интерфейсу. Однако эти данные будут сброшены после перезагрузки системы.
Синтаксис:
ifconfig можно использовать для включения или отключения интерфейса.
Чтобы включить интерфейс
Синтаксис:
Синтаксис:
По умолчанию MTU имеет размер 1500. Однако это может быть установлено пользователем извне с помощью ifconfig.
Синтаксис:
XXXX можно заменить размером по вашему выбору.
Это последняя и обновленная версия команды ifconfig.
Синтаксис:
Эта команда предоставляет сведения обо всех сетях, таких как ifconfig.
Эту команду также можно использовать для получения сведений об определенном интерфейсе.
Синтаксис:
3.трассировка
Linux traceroute — одна из самых полезных команд в сети. Он используется для устранения неполадок в сети. Он обнаруживает задержку и определяет путь к вашей цели. Это в основном помогает следующими способами:
- Он предоставляет имена и идентифицирует каждое устройство на пути.
- Он следует по маршруту к месту назначения
- Он определяет источник задержки в сети и сообщает об этом.
Если в вашей системе не установлена служба traceroute, вы можете установить ее с помощью следующей команды:
Пример:
Команда:
Выход предоставляет следующую информацию:
- Указанное имя хоста
- Размер пакетов
- Максимальное требуемое количество прыжков.
- IP-адрес.
- Чтобы избежать обратного просмотра DNS, добавьте -n в синтаксис команды.
Команда:
Вывод указывает на задержки в сети. Звездочки, показанные в выходных данных, указывают на потенциальную проблему при доступе к этому хосту. Они указывают на потерю пакетов во время связи с сетью.
Как правило, команда traceroute отправляет пакеты UDP. Он также может отправлять пакеты TCP или ICMP.
Команда:
Чтобы отправить вариант TCP, используйте это,
Команда:
4.трассировка
Linux tracepath аналогичен команде traceroute.Он используется для обнаружения сетевых задержек. Однако для этого не требуются привилегии root.
Он установлен в Ubuntu по умолчанию.
Он отслеживает маршрут до указанного пункта назначения и идентифицирует каждый прыжок в нем. Если ваша сеть слабая, он распознает точку, где сеть слабая.
Синтаксис:
Пример:
Вывод:
5.пинг
Linux ping — одна из наиболее часто используемых команд для устранения неполадок в сети. По сути, он проверяет сетевое подключение между двумя узлами.
ping расшифровывается как Packet INInternet Groper.
Команда ping отправляет эхо-запрос ICMP для проверки сетевого подключения.
Он продолжает выполняться до тех пор, пока не будет прерван.
Используйте клавиши Ctrl+C, чтобы прервать выполнение.
Синтаксис:
Пример:
Команда:
Вы также можете использовать IP-адрес для прямой проверки связи.
Вы можете ограничить количество пакетов, включив "-c" в команду ping.
Синтаксис:
Вы можете указать число c и ограничить количество ответных пакетов этим значением.
Функции:
Эта команда используется для измерения среднего отклика. Если на команду ping нет ответа, вы можете предположить одну из следующих проблем с сетью:
- Произошла физическая проблема, вызвавшая потерю сети.
- Возможно, адрес назначения неисправен или неверен.
- Запрос проверки связи заблокирован из-за цели.
- Возможна проблема с таблицей маршрутизации.
Примечание. На скорость ответа команды ping будет влиять подключение в вашей системе, а также местоположение сервера, который вы пингуете. Поэтому ожидайте задержки ответа, если соединение в вашей точке слабое.
КомандаLinux netstat относится к сетевой статистике.
Он предоставляет статистические данные о различных интерфейсах, включая открытые сокеты, таблицы маршрутизации и информацию о соединениях.
Синтаксис:
Вывод:
Наблюдайте за выводом, отображающим все открытые сокеты.
Варианты команды netstat
Ниже приведены несколько вариантов используемой команды netstat.
1) Для отображения программ
Синтаксис:
Отображает программы, связанные с открытым сокетом.
2) Чтобы получить информацию о портах
Синтаксис:
Это дает подробную статистику по всем портам.
3) Чтобы получить информацию о таблице маршрутизации
Синтаксис:
Это дает информацию, связанную с таблицей маршрутизации.
Команда Linux ss заменяет команду netstat. Считается более быстрой и информативной командой, чем netstat.
Возможен более быстрый отклик ss, поскольку он извлекает всю информацию из пользовательского пространства ядра.
Синтаксис:
Эта команда предоставляет информацию обо всех подключениях к сокетам TCP, UDP и UNIX.
Вы можете использовать -t, -u, -x в команде соответственно для отображения сокетов TCP/UDP или UNIX. Вы можете комбинировать каждый из них с "a", чтобы показать подключенные и прослушиваемые сокеты.
Синтаксис:
Если вы хотите видеть только прослушиваемые сокеты TCP/UDP или UNIX, объедините это с "l"
Синтаксис:
- Чтобы получить список всех установленных сокетов TCP для IPV4,
Команда:
Команда:
- Чтобы получить список всех подключенных портов для определенного IP-адреса:
Команда:
Команда dig в Linux означает сбор информации о домене. Эта команда используется при поиске DNS для запроса сервера имен DNS. Он также используется для устранения неполадок, связанных с DNS.
Он в основном используется для проверки сопоставлений DNS, записей MX, адресов хостов и всех других записей DNS для лучшего понимания топографии DNS.
Эта команда является импровизированной версией команды nslookup.
Синтаксис:
Пример:
Вывод:
Командаdig по умолчанию выводит записи A. Если вы хотите конкретно искать тип MX или NS, используйте синтаксис ниже.
Команда:
- Чтобы получить все типы записей одновременно, используйте ключевое слово ANY ass ниже:
Команда:
Команда dig выполняет запрос на серверах, перечисленных в /etc/resolv.conf.
9.nslookup
Linux nslookup также является командой, используемой для запросов, связанных с DNS. Это старая версия dig.
Синтаксис:
Пример:
Вывод:
Как видно из приведенного выше вывода, он отображает информацию о записи, относящуюся к
10.маршрут
Команда маршрутизации Linux отображает таблицу маршрутизации, существующую для вашей системы, и управляет ею.
Маршрутизатор в основном используется для поиска наилучшего способа отправки пакетов к месту назначения.
Синтаксис:
Вывод:
Вышеприведенный вывод отображает все существующие записи таблицы маршрутизации для системы. В нем говорится, что если адрес назначения находится в пределах сетевого диапазона от 10.0.0.0 до 10.0.0.255, то шлюзом является *, что 0.0.0.0.Это специальный адрес, указывающий на несуществующий пункт назначения.
Пакеты, лежащие за пределами этого сетевого диапазона, будут перенаправлены на шлюз по умолчанию, который затем маршрутизируется.
Вы можете использовать -n в параметре синтаксиса, чтобы отобразить выходную неполную числовую форму.
Синтаксис:
Пакеты, не входящие в этот диапазон, перенаправляются на указанный шлюз. Вы можете указать адрес шлюза с помощью следующей команды.
Синтаксис:
Ядро хранит всю информацию о кэше маршрутизации в таблице для более быстрой маршрутизации. Чтобы просмотреть информацию о кэше маршрутизации, используйте следующую команду:
Синтаксис:
11.хост
Команда хостаLinux отображает имя домена для данного IP-адреса и IP-адрес для данного имени хоста. Он также используется для поиска DNS для запроса, связанного с DNS.
Пример:
Вы можете комбинировать команду host с -t и получать такие записи ресурсов DNS, как SOA, NS, A, PTR, CNAME, MX, SRV.
Синтаксис:
12.arp
Команда Linux arp расшифровывается как протокол разрешения адресов. Он используется для просмотра и добавления содержимого в таблицу ARP ядра.
Синтаксис:
Все системы поддерживают таблицу IP-адресов и соответствующих им MAC-адресов. Эта таблица называется таблицей поиска ARP. Когда пункт назначения запрашивается для подключения через IP-адрес, ваш маршрутизатор проверяет наличие MAC-адреса в этой таблице. Если он кэширован, таблица использоваться не будет.
По умолчанию arp отображает имена хостов. Вы можете получить IP-адреса, используя:
Команда:
Вы также можете удалить записи из таблицы arp, как показано ниже.
Команда:
13.iwconfig
iwconfig в Linux используется для настройки беспроводного сетевого интерфейса. Он используется для установки и просмотра основных параметров Wi-Fi, таких как SSID и шифрование. Чтобы узнать больше об этой команде, обратитесь к справочной странице.
Синтаксис:
Вывод:
14.имя хоста
Имя хоста Linux — это простая команда, используемая для просмотра и установки имени хоста системы.
Синтаксис:
Вывод:
Используйте приведенный ниже синтаксис, чтобы задать имя хоста.
Синтаксис:
Имя хоста, установленное с помощью этой команды, не является постоянным. При перезагрузке системы оно будет сброшено на имя в файле имени хоста.
Чтобы установить постоянное имя хоста, вы должны переписать имя хоста в файле имени хоста, присутствующем на сервере. После установки необходимо перезагрузить коробку.
В Ubuntu используется файл /etc/hostname.
В RHEL используется файл /etc/sysconfig/network.
15.curl и wget
Команды Linux curl и wget используются для загрузки файлов из Интернета через интерфейс командной строки. Команда curl должна использоваться с опцией "O" для извлечения файла, а команда wget используется напрямую.
Ниже приведены синтаксис и пример двух команд.
а) Скручивание
Синтаксис:
Пример:
б) wget
Синтаксис:
Пример:
Вывод:
16 м
Команда Linux mtr представляет собой комбинацию команды ping и команды traceroute. Он постоянно отображает информацию об отправленных пакетах с указанием времени пинга для каждого прыжка. Он также используется для просмотра проблем с сетью.
Синтаксис:
Пример:
Вывод:
Вы можете использовать mtr с параметром –report. Он отправляет 10 пакетов на каждый прыжок, который встречается на пути.
Синтаксис:
17.кто есть
Команда whois в Linux используется для получения всей информации, связанной с веб-сайтом. Вы можете получить всю информацию о веб-сайте, включая регистрацию и информацию о владельце.
Синтаксис:
Пример:
Вывод:
18.ifplugstatus
Команда Linux ifplugstatus используется для проверки того, подключен ли кабель к сетевому интерфейсу. Эта команда недоступна напрямую в Ubuntu. Вы можете установить это с помощью команды ниже:
Команда:
Синтаксис:
Вывод:
В приведенном выше выводе "обнаружено биение канала" означает, что кабель подключен.
19.iftop
Команда Linux iftop используется для мониторинга трафика.
Используйте следующую команду для загрузки iftop в вашу систему.
Команда:
Это даст zip-файл. Чтобы извлечь его, используйте следующую команду:
Команда:
Вы можете скомпилировать это, используя,
Команды:
Теперь запустите инструмент от имени пользователя root,
Вывод:
Вы можете просмотреть порты, используя параметр -P в такой команде,
Команда:
Вы можете использовать команду -B, чтобы получить данные в байтах, а не в битах (что отображается по умолчанию).
Команда:
20.tcpdump
Команда Linux tcpdump является наиболее часто используемой командой сетевого анализа среди других сетевых команд Linux. Он фиксирует трафик, проходящий через сетевой интерфейс, и отображает его.
Такой доступ к пакету будет иметь решающее значение при устранении неполадок в сети.
Синтаксис:
Вывод:
Вы также можете указать протокол (TCP, UDP, ICMP и другие) в такой команде,
Команда:
Чтобы указать порт, используйте команду
Команда:
Команда tcpdump продолжает выполняться и отправлять пакеты, пока не будет отменена. Таким образом, вы можете указать количество событий, которые необходимо захватить, чтобы управлять непрерывным выполнением.
Команда:
Вы также можете указать IP-адрес, с которого выполняется захват, используя тег src или dst.
Команда:
Вы можете сохранить захваченный сетевой трафик в файл и использовать его позже. Это можно сделать с помощью команды ниже,
а) Сохранить в файл
Команда:
b) Чтение из файла
Команда:
Это самые важные сетевые команды в Linux, которые часто используются для анализа сети и устранения неполадок.
Есть несколько команд, которые всегда должны быть в вашем наборе инструментов системного администратора. Ознакомьтесь с этими 7 основными сетевыми командами.
Эта статья является первой в серии, посвященной рекомендациям по использованию краудсорсинга. Я спросил группу наших основных участников, какие у них любимые команды Linux, и ответы были ошеломляющими. Мы получили 46 отдельных команд, и многие из них были отмечены несколькими отправками.
Эта серия представляет собой полный список, разбитый по категориям. Я назвал эти первые семь команд "сетевыми командами, которые должен знать каждый".
Примечание редактора: Evans Amoany предоставил информацию о командах и примеры. Один из наших Sudoers и талантливый администратор *nix. Спасибо Эвансу за тяжелую работу.
В облаке
Команда ip — это одна из основных команд, которая понадобится каждому администратору в повседневной работе, от настройки новых систем и назначения IP-адресов до устранения неполадок в существующих системах. Команда ip может отображать адресную информацию, управлять маршрутизацией, а также отображать различные сетевые устройства, интерфейсы и туннели.
Синтаксис следующий:
IP-адрес
ОБЪЕКТ — самая важная часть синопсиса, и поддерживаются следующие элементы (некоторые опущены для краткости):
address — адрес протокола (IPv4 или IPv6) на устройстве.
- туннель — туннель по IP-адресу
- route — запись в таблице маршрутизации
- rule — правило в базе данных политик маршрутизации
- vrf — управление виртуальными устройствами маршрутизации и переадресации
- xfrm — управление политиками IPSec
Вот несколько распространенных вариантов использования команды ip.
Чтобы отобразить IP-адреса, назначенные интерфейсу на вашем сервере:
Чтобы назначить IP интерфейсу, например, enps03:
Чтобы удалить IP-адрес на интерфейсе:
Изменить статус интерфейса, подключив интерфейс eth0 к сети:
Изменить состояние интерфейса, переведя интерфейс eth0 в автономный режим:
Изменить статус интерфейса, изменив MTU eth0:
Изменить статус интерфейса, включив неразборчивый режим для eth0:
Добавить маршрут по умолчанию (для всех адресов) через локальный шлюз 192.168.1.254, доступный на устройстве eth0:
Добавить маршрут к 192.168.1.0/24 через шлюз 192.168.1.254:
Добавить маршрут к 192.168.1.0/24, доступный на устройстве eth0:
Удалить маршрут для 192.168.1.0/24 через шлюз 192.168.1.254:
Показать маршрут, выбранный для IP 10.10.1.4:
ifconfig
Команда ifconfig была и остается одним из основных инструментов многих системных администраторов для настройки сетей и устранения неполадок. С тех пор она была заменена командой ip, описанной выше. Однако, если вам нужна дополнительная информация об этом, ознакомьтесь с нашей ранее опубликованной статьей здесь.
MTR (трассировка Мэтта) – это программа с интерфейсом командной строки, которая служит средством сетевой диагностики и устранения неполадок. Эта команда сочетает в себе функции команд ping и traceroute. Как и traceroute, команда mtr покажет маршрут от компьютера до указанного хоста. mtr предоставляет множество статистических данных о каждом переходе, таких как время отклика и процент. С помощью команды mtr вы получите больше информации о маршруте и сможете увидеть проблемные устройства по пути. Если вы видите внезапное увеличение времени отклика или потерю пакетов, то, очевидно, где-то есть плохой канал.
Синтаксис команды следующий:
имя/IP хоста mtr
Давайте рассмотрим некоторые распространенные варианты использования.
Базовая команда mtr показывает статистику, включая каждый прыжок (имена хостов) со временем и процентом потерь:
Показать числовые IP-адреса (если вы используете -g , вы получите IP-адреса (числа) вместо имен хостов):
Показывать также числовые IP-адреса и имена хостов:
Установите количество пингов, которые вы хотите отправить:
Получить отчет о результате команды mtr:
Принудительно использовать TCP вместо ICMP:
Принудительно использовать UDP вместо ICMP:
Установите максимальное количество прыжков:
Определите размер пакета:
Печать в файл CSV:
Печать в XML:
tcpdump
Команда tcpdump предназначена для захвата и отображения пакетов.
Вы можете установить tcpdump с помощью следующей команды:
Перед началом любого захвата вам необходимо знать, какие интерфейсы может использовать tcpdump. В этом случае вам нужно будет использовать sudo или иметь root-доступ.
Если вы хотите перехватить трафик на eth0, вы можете инициировать это с помощью примера tcpdump -i eth0:
Захват входящего и исходящего трафика с одного хоста
Вы можете отфильтровать трафик, исходящий от определенного хоста. Например, чтобы найти трафик, исходящий и исходящий из 8.8.8.8, используйте команду:
Для трафика, поступающего с 8.8.8.8, используйте:
Для исходящего трафика, идущего на 8.8.8.8, используйте:
Захват входящего и исходящего сетевого трафика
Вы также можете перехватывать входящий и исходящий трафик определенной сети с помощью следующей команды:
Вы также можете фильтровать по источнику или месту назначения.
На основе источника (откуда идет трафик):
В зависимости от пункта назначения (в который направляется трафик):
Захват входящего и исходящего трафика
Захват трафика только через порт 53 DNS:
Для определенного хоста
Чтобы захватить все порты, кроме портов 80 и 25,
сетевая статистика
Инструмент netstat для печати сетевых подключений, таблиц маршрутизации, статистики интерфейсов, маскирующих подключений и членства в многоадресной рассылке. Эта утилита является частью пакета net-tool, как и ifconfig. В новом пакете iproute2 инструмент ss используется для достижения тех же целей.
Если netstat не найден в вашей системе, установите его с помощью этой команды:
В основном netstat используется без каких-либо параметров:
Для расширенного использования расширьте команду netstat параметрами:
Или перечислите параметры один за другим:
Чтобы вывести список всех портов и подключений независимо от их состояния или протокола, используйте:
Выведите список всех TCP-портов, выполнив:
Список всех портов UDP с помощью:
Чтобы вернуть список прослушиваемых портов для всех протоколов, используйте:
Вывести список всех прослушиваемых TCP-портов с помощью:
Вернуть только прослушиваемые порты UDP, выполнив:
Чтобы получить список прослушиваемых портов UNIX, используйте:
Отображать статистику для всех портов независимо от протокола с помощью:
Отображать статистику только для TCP-портов с помощью:
Чтобы просмотреть соединения TCP с указанным PID/именем программы, используйте:
Чтобы найти процесс, использующий определенный номер порта, выполните:
nslookup
Используйте утилиту nslookup для интерактивного запроса серверов имен в Интернете. Используйте его для выполнения DNS-запросов и получения доменных имен или IP-адресов или любых других определенных DNS-записей.
Рассмотрите следующие распространенные примеры.
Чтобы найти запись A домена:
Чтобы проверить записи NS домена:
Чтобы найти записи MX, отвечающие за обмен электронной почтой:
Чтобы найти все доступные записи DNS домена:
Проверка записей DNS A для просмотра IP-адресов домена является обычной практикой, но иногда вам необходимо проверить, связан ли IP-адрес с конкретным доменом. Для этого вам потребуется обратный поиск DNS.
Ping — это инструмент, который проверяет подключение на уровне IP к другому компьютеру TCP/IP, отправляя эхо-запросы протокола управляющих сообщений Интернета (ICMP). Отображается получение соответствующих сообщений Echo Reply, а также время приема-передачи. Ping — это основная команда TCP/IP, используемая для устранения неполадок подключения, доступности и разрешения имен.
Простые команды ping принимают только один параметр: имя хоста или IP-адрес хоста, который вы хотите проверить. Простой пример проверки связи выглядит так, как показано ниже:
Вам нужно остановить команду ping, нажав CTRL+C. В противном случае он будет пинговаться, пока вы его не остановите. После каждой команды ping будет отображаться сводный отчет со следующей информацией:
- Мин.: минимальное время, необходимое для получения ответа от хоста, который был пропингован с вашей стороны.
- Среднее: среднее время, затрачиваемое на получение ответа от хоста, который был пропингован с вашей стороны.
- Макс.: максимальное время, необходимое для получения ответа от хоста, который был пропингован с вашей стороны.
Кроме того, вы увидите TTL, что означает время жизни. Ping использует числовое значение TTL, чтобы попытаться связаться с данным хост-компьютером по пути маршрута. Это также известно как предел прыжков.
Обычно, когда вы запускаете простую команду ping без передачи каких-либо дополнительных параметров, Linux будет пинговать этот хост бесконечное количество времени. Если вы хотите пропинговать хост десять раз, используйте следующую команду:
Используйте параметр -q, чтобы просмотреть только сводную статистику проверки связи:
В системах с несколькими интерфейсами можно указать интерфейс, который будет использоваться командой ping. Если в системе есть и eth0, и eth1, и я хочу пропинговать с помощью eth0:
Или используйте адрес интерфейса, предполагая, что в качестве IP-адреса используется интерфейс 10.233.201.45:
Вы также можете пропинговать и указать версию IP как v4 или v6:
Во время проверки связи с хостом результаты проверки связи будут отличаться от результатов, включая следующие три примера.
Дополнительные ресурсы по Linux
Хост назначения недоступен
Возможно, наилучшей причиной является отсутствие маршрута от локальной хост-системы до нужного конечного хоста или удаленный маршрутизатор сообщает, что у него нет маршрута к целевому хосту.
Время ожидания запроса истекло
Этот результат означает, что сообщения эхо-ответа не были получены в течение времени по умолчанию, равного одной секунде, или времени, которое вы установили во время проверки связи с этим хостом. Это может быть связано со многими различными причинами; наиболее распространенными являются перегрузка сети, сбой запроса ARP, фильтрация пакетов/брандмауэр и т. д.
Неизвестный хост/запрос Ping не может найти хост
Возможно, вы неправильно написали имя хоста или хост вообще не существует в сети.
У вас должно быть 0% потери пакетов для каждого результата проверки связи с хорошей задержкой или меньшим временем отклика. В зависимости от того, какую среду передачи (UTP, оптоволоконный кабель, Wi-Fi) вы используете, задержка будет различаться.
С надеждой
Вам следует добавить эти команды и примеры в свои подпрограммы при настройке и устранении неполадок в собственных сетях. Если вы нашли этот тип статьи полезным, обязательно свяжитесь с нами и дайте нам знать. Кроме того, следите за второй частью нашего списка команд сообщества. Следующая — это 16 основных команд Linux, без которых вам не обойтись.
Компьютеры объединены в сеть для обмена информацией или ресурсами друг с другом. Два или более компьютеров соединены через сетевую среду, называемую компьютерной сетью. Для формирования компьютерной сети используется ряд сетевых устройств или носителей.
Компьютер, на котором установлена операционная система Linux, также может быть частью сети, независимо от того, является ли она небольшой или большой сетью, благодаря своей многозадачности и многопользовательскому характеру. Поддержание работоспособности системы и сети является задачей системного/сетевого администратора.
В этой статье мы рассмотрим часто используемые команды настройки сети и устранения неполадок в Linux.
1. Команда ifconfig
Команда ifconfig (конфигуратор интерфейса) используется для инициализации интерфейса, назначения IP-адреса интерфейсу и включения или отключения интерфейса по требованию.
С помощью этой команды вы можете просмотреть IP-адрес и аппаратный/MAC-адрес, назначенный интерфейсу, а также размер MTU (максимальная единица передачи).
Команда ifconfig с интерфейсом (eth0) показывает только конкретные сведения об интерфейсе, такие как IP-адрес, MAC-адрес и т. д. С параметром -a отобразятся все доступные сведения об интерфейсе, если он также отключен.
Установка IP-адреса и шлюза в Linux
Назначение IP-адреса и шлюза интерфейсу на лету. Параметр будет удален в случае перезагрузки системы.
Включить или отключить определенный интерфейс
Чтобы включить или отключить определенный интерфейс, мы используем пример команды следующим образом.
Включить eth0
Отключить eth0
Настройка размера MTU
По умолчанию размер MTU равен 1500. Мы можем установить требуемый размер MTU с помощью приведенной ниже команды. Замените XXXX на размер.
Перевести интерфейс в неразборчивый режим
Сетевой интерфейс получал только пакеты, принадлежащие этому конкретному сетевому адаптеру. Если вы переведете интерфейс в неразборчивый режим, он будет получать все пакеты. Это очень полезно для захвата пакетов и их последующего анализа. Для этого вам может потребоваться доступ суперпользователя.
Обновление: команда ifconfig заменена командой IP в большинстве современных дистрибутивов Linux.
2. Команда проверки связи
Команда Ping (Packet INInternet Groper) — лучший способ проверить подключение между двумя узлами. Будь то локальная сеть (LAN) или глобальная сеть (WAN).
Ping использует протокол ICMP (Internet Control Message Protocol) для связи с другими устройствами. Вы можете пропинговать имя хоста или IP-адрес, используя приведенные ниже команды.
В Linux команда ping продолжает выполняться, пока вы ее не прервете. Ping с опцией -c завершает работу после N запросов (успех или ответ об ошибке).
3. Команда трассировки
traceroute — это утилита для устранения неполадок в сети, которая показывает количество прыжков, необходимых для достижения пункта назначения, а также определяет путь прохождения пакетов. Ниже мы отслеживаем маршрут до IP-адреса глобального DNS-сервера и можем достичь пункта назначения, также показывает путь, по которому движется этот пакет.
4. Команда Netstat
Команда Netstat (статистика сети) отображает информацию о соединении, информацию о таблице маршрутизации и т. д. Чтобы отобразить информацию о таблице маршрутизации, используйте параметр -r .
Для получения дополнительных примеров команды Netstat, пожалуйста, прочитайте нашу предыдущую статью о 20 примерах команд Netstat в Linux.
Обновление: в большинстве современных дистрибутивов Linux команда netstat заменена командой ss (статистика сокетов).
5. Команда копать
Dig (сборщик информации о домене) запрашивает информацию, связанную с DNS, такую как запись A, CNAME, запись MX и т. д. Эта команда в основном используется для устранения неполадок, связанных с запросами, связанными с DNS.
Для получения дополнительных примеров команды Dig прочитайте статью о 10 командах Linux Dig для запроса DNS.
6. Команда Nslookup
Чтобы узнать больше о команде Nslookup, прочитайте статью о 8 примерах команды Nslookup в Linux.
7. Команда маршрута
Команда route также показывает и управляет таблицей IP-маршрутизации. Чтобы просмотреть таблицу маршрутизации по умолчанию в Linux, введите следующую команду.
Добавление, удаление маршрутов и шлюза по умолчанию с помощью следующих команд.
Добавить маршрут в Linux
Удалить маршрут в Linux
Добавить шлюз по умолчанию в Linux
8. Команда хоста
команда хоста, чтобы найти имя для IP или IP для имени в IPv4 или IPv6, а также запросить записи DNS.
Использование параметра -t для поиска записей ресурсов DNS, таких как CNAME, NS, MX, SOA и т. д.
9. Арп-команда
ARP (протокол разрешения адресов) полезен для просмотра/добавления содержимого таблиц ARP ядра. Чтобы просмотреть таблицу по умолчанию, используйте команду as.
10. Команда Ethtool
ethtool заменяет mii-tool. Это для просмотра, настройки скорости и дуплекса вашей сетевой карты (NIC). Вы можете установить дуплекс на постоянной основе в /etc/sysconfig/network-scripts/ifcfg-eth0 с помощью переменной ETHTOOL_OPTS.
11. Команда Iwconfig
Команда iwconfig в Linux используется для настройки беспроводного сетевого интерфейса. Вы можете просмотреть и настроить основные параметры Wi-Fi, такие как канал SSID и шифрование. Вы можете обратиться к справочной странице iwconfig, чтобы узнать больше.
12. Команда имени хоста
Имя хоста используется для идентификации в сети. Выполните команду hostname, чтобы увидеть имя хоста вашего ящика. Вы можете установить постоянное имя хоста в /etc/sysconfig/network. Необходимо перезагрузить коробку после установки правильного имени хоста.
13. Инструменты Nmcli и Nmtui
Инструменты Nmcli и Nmtui используются для настройки параметров сети, а также для управления сетевыми устройствами, создания, изменения, активации/деактивации и удаления сетевых подключений в системах Linux.
Эта статья может быть полезна для повседневного использования сетевыми администраторами Linux в Linux/Unix-подобных операционных системах. Пожалуйста, поделитесь в нашем поле для комментариев, если мы что-то пропустили.
Если вам понравилась эта статья, подпишитесь на уведомления по электронной почте о руководствах по Linux. Если у вас есть вопросы или сомнения? обратитесь за помощью в разделе комментариев.
Если вы цените то, что мы делаем здесь, в TecMint, вам следует подумать о следующем:
TecMint – это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! для поиска или просмотра тысяч опубликованных статей, доступных всем БЕСПЛАТНО.
Если вам нравится то, что вы читаете, купите нам кофе (или 2) в знак признательности.
Обычные задачи системного администратора включают настройку, обслуживание, устранение неполадок и управление серверами и сетями в центрах обработки данных. В Linux есть множество инструментов и утилит, предназначенных для административных целей.
В этой статье мы рассмотрим некоторые из наиболее часто используемых инструментов и утилит командной строки для управления сетью в Linux в различных категориях. Мы объясним некоторые распространенные примеры использования, которые значительно упростят управление сетью в Linux.
На этой странице
Этот список также полезен штатным сетевым инженерам Linux.
Инструменты настройки сети, устранения неполадок и отладки
1. Команда ifconfig
ifconfig – это инструмент интерфейса командной строки для настройки сетевого интерфейса, который также используется для инициализации интерфейсов во время загрузки системы. Когда сервер запущен и работает, его можно использовать для назначения IP-адреса интерфейсу и включения или отключения интерфейса по запросу.
Он также используется для просмотра IP-адреса, аппаратного/MAC-адреса, а также размера MTU (максимальной единицы передачи) активных в данный момент интерфейсов. Таким образом, ifconfig полезен для отладки или настройки системы.
Вот пример отображения состояния всех активных сетевых интерфейсов.
Чтобы вывести список всех доступных в данный момент интерфейсов, независимо от того, работают они или нет, используйте флаг -a.
Чтобы назначить IP-адрес интерфейсу, используйте следующую команду.
Чтобы активировать сетевой интерфейс, введите.
Чтобы деактивировать или закрыть сетевой интерфейс, введите.
Примечание. Хотя ifconfig — отличный инструмент, сейчас он устарел (устарел), его заменяет команда ip, описание которой приведено ниже.
2. IP-команда
ip command — еще одна полезная утилита командной строки для отображения и управления маршрутизацией, сетевыми устройствами и интерфейсами. Это замена ifconfig и многих других сетевых команд. (Прочитайте нашу статью «В чем разница между командами ifconfig и ip», чтобы узнать больше об этом.)
Следующая команда покажет IP-адрес и другую информацию о сетевом интерфейсе.
Чтобы временно назначить IP-адрес определенному сетевому интерфейсу (eth0), введите.
Чтобы удалить назначенный IP-адрес из сетевого интерфейса (eth0), введите.
Чтобы отобразить текущую таблицу соседей в ядре, введите.
3. команды ifup, ifdown и ifquery
команда ifup активирует сетевой интерфейс, делая его доступным для передачи и получения данных.
команда ifdown отключает сетевой интерфейс, оставляя его в состоянии, когда он не может передавать или получать данные.
команда ifquery используется для анализа конфигурации сетевого интерфейса, что позволяет вам получать ответы на вопросы о текущей конфигурации.
4. Команда Ethtool
ethtool — это утилита командной строки для запроса и изменения параметров контроллера сетевого интерфейса и драйверов устройств. В приведенном ниже примере показано использование ethtool и команды для просмотра параметров сетевого интерфейса.
5. Команда проверки связи
ping (Packet INInternet Groper) — это утилита, обычно используемая для проверки подключения между двумя системами в сети (локальная сеть (LAN) или глобальная сеть (WAN)). Он использует ICMP (Internet Control Message Protocol) для связи с узлами в сети.
Чтобы проверить подключение к другому узлу, просто укажите, например, его IP-адрес или имя хоста.
Вы также можете указать команде ping завершить работу после определенного количества пакетов ECHO_REQUEST, используя флаг -c, как показано ниже.
6. Команда трассировки
Traceroute — это утилита командной строки для отслеживания полного пути от вашей локальной системы к другой сетевой системе. Он печатает количество прыжков (IP-адреса маршрутизатора) на том пути, по которому вы идете, чтобы добраться до конечного сервера. Это простая в использовании утилита для устранения сетевых неполадок после команды ping.
В этом примере мы отслеживаем маршрут пакетов из локальной системы на один из серверов Google с IP-адресом 216.58.204.46.
7. Инструмент диагностики сети MTR
MTR — это современный инструмент сетевой диагностики из командной строки, который объединяет функции ping и traceroute в одном диагностическом инструменте. Его вывод обновляется в режиме реального времени по умолчанию до тех пор, пока вы не выйдете из программы, нажав q .
Самый простой способ запустить mtr — указать имя хоста или IP-адрес в качестве аргумента, как показано ниже.
Пример вывода
Вы можете ограничить количество ping-запросов до определенного значения и выйти из mtr после этих ping-запросов, используя флаг -c, как показано ниже.
8. Команда маршрута
Route — это утилита командной строки для отображения или управления таблицей IP-маршрутизации в системе Linux. В основном он используется для настройки статических маршрутов к определенным хостам или сетям через интерфейс.
Вы можете просмотреть таблицу IP-маршрутизации ядра, введя текст.
Существует множество команд, которые можно использовать для настройки маршрутизации. Вот несколько полезных:
Добавить шлюз по умолчанию в таблицу маршрутизации.
Добавить сетевой маршрут в таблицу маршрутизации.
Удалить запись определенного маршрута из таблицы маршрутизации.
9. Команда Nmcli
Nmcli — это простой в использовании инструмент командной строки с поддержкой скриптов, позволяющий сообщать о состоянии сети, управлять сетевыми подключениями и контролировать NetworkManager.
Чтобы просмотреть все ваши сетевые устройства, введите.
Чтобы проверить сетевые подключения в вашей системе, введите.
Чтобы видеть только активные соединения, добавьте флаг -a.
Инструменты сетевого сканирования и анализа производительности
10. Команда Netstat
netstat — это инструмент командной строки, который отображает полезную информацию, такую как сетевые подключения, таблицы маршрутизации, статистику интерфейса и многое другое, касающееся сетевой подсистемы Linux. Это полезно для устранения неполадок в сети и анализа производительности.
Кроме того, это также основной инструмент отладки сетевых служб, используемый для проверки того, какие программы прослушивают какие порты. Например, следующая команда покажет все TCP-порты в режиме прослушивания и какие программы их прослушивают.
Чтобы просмотреть таблицу маршрутизации ядра, используйте флаг -r (что эквивалентно запуску команды route выше).
Примечание. Хотя Netstat – отличный инструмент, он устарел (устарел), его заменяет команда ss, описание которой приведено ниже.
11. команда СС
ss (статистика сокетов) — мощная утилита командной строки для исследования сокетов. Он выводит статистику сокетов и отображает информацию, аналогичную netstat.Кроме того, он показывает больше информации о TCP и состоянии по сравнению с другими подобными утилитами.
В следующем примере показано, как составить список всех TCP-портов (сокетов), открытых на сервере.
Чтобы отобразить все активные соединения TCP вместе с их таймерами, выполните следующую команду.
12. NC-команда
NC (NetCat), также известная как «Сетевой швейцарский армейский нож», представляет собой мощную утилиту, используемую практически для любых задач, связанных с сокетами TCP, UDP или UNIX. Он используется для открытия соединений TCP, прослушивания произвольных портов TCP и UDP, сканирования портов и многого другого.
Вы также можете использовать его в качестве простого прокси-сервера TCP, для тестирования сетевого демона, проверки доступности удаленных портов и многого другого. Кроме того, вы можете использовать nc вместе с командой pv для передачи файлов между двумя компьютерами.
В следующем примере показано, как сканировать список портов.
Вы также можете указать диапазон портов, как показано.
В следующем примере показано, как использовать nc для открытия TCP-подключения к порту 5000 на сервере server2.tecmint.lan, используя порт 3000 в качестве исходного порта с тайм-аутом 10 секунд.
13. Команда Nmap
Nmap (Network Mapper) — мощный и чрезвычайно универсальный инструмент для системных/сетевых администраторов Linux. Он используется для сбора информации об одном узле или для исследования всей сети. Nmap также используется для проверки безопасности, аудита сети, поиска открытых портов на удаленных хостах и многого другого.
Вы можете сканировать хост, например, используя его имя хоста или IP-адрес.
В качестве альтернативы используйте IP-адрес, как показано.
Прочитайте наши следующие полезные статьи о команде nmap.
Утилиты поиска DNS
14. Команда хоста
Команда host — это простая утилита для выполнения поиска DNS, она переводит имена хостов в IP-адреса и наоборот.
15. команда копать
dig (информация о домене) — еще одна простая утилита поиска DNS, которая используется для запроса информации, связанной с DNS, такой как запись A, CNAME, запись MX и т. д., например:
16. Команда NSLookup
Nslookup также является популярной утилитой командной строки для запросов к DNS-серверам как в интерактивном, так и в неинтерактивном режиме. Он используется для запроса записей ресурсов DNS (RR). Вы можете узнать запись «A» (IP-адрес) домена, как показано на рисунке.
Вы также можете выполнить обратный поиск домена, как показано.
Анализаторы сетевых пакетов Linux
17. Команда tcpdump
Tcpdump — это очень мощный и широко используемый сетевой анализатор командной строки. Он используется для захвата и анализа пакетов TCP/IP, переданных или полученных по сети на определенном интерфейсе.
Чтобы перехватывать пакеты с заданного интерфейса, укажите его с помощью параметра -i.
Чтобы захватить определенное количество пакетов, используйте параметр -c для ввода нужного числа.
Вы также можете захватывать и сохранять пакеты в файл для последующего анализа. Используйте флаг -w, чтобы указать выходной файл.
18. Утилита Wireshark
Wireshark — популярный, мощный, универсальный и простой в использовании инструмент для захвата и анализа пакетов в сети с коммутацией пакетов в режиме реального времени.
Вы также можете сохранить полученные данные в файл для последующего просмотра. Он используется системными администраторами и сетевыми инженерами для мониторинга и проверки пакетов в целях безопасности и устранения неполадок.
19. Инструмент Bmon
bmon — это мощная утилита для мониторинга и отладки сети на основе командной строки для Unix-подобных систем. Она собирает статистику, связанную с сетью, и распечатывает ее в удобном для человека формате. Это надежный и эффективный инструмент для мониторинга пропускной способности и оценки скорости в режиме реального времени.
Инструменты управления брандмауэром Linux
20. Брандмауэр Iptables
iptables — это инструмент командной строки для настройки, обслуживания и проверки таблиц фильтрации IP-пакетов и набора правил NAT. Он используется для настройки и управления брандмауэром Linux (Netfilter). Это позволяет вам перечислить существующие правила фильтрации пакетов; добавлять, удалять или изменять правила фильтрации пакетов; список счетчиков правил фильтрации пакетов.
Вы можете узнать, как использовать Iptables для различных целей, из наших простых, но подробных руководств.
21. Брандмауэрd
Firewalld — это мощный динамический демон для управления брандмауэром Linux (Netfilter), как и iptables. Он использует «сетевые зоны» вместо INPUT, OUTPUT и FORWARD CHAINS в iptables. В текущих дистрибутивах Linux, таких как RHEL/CentOS 7 и Fedora 21+, iptables активно заменяется firewalld.
Чтобы начать работу с firewalld, обратитесь к следующим руководствам:
Важно: Iptables по-прежнему поддерживается и может быть установлен с помощью диспетчера пакетов YUM. Однако вы не можете одновременно использовать Firewalld и iptables на одном сервере — вы должны выбрать один из них.
22. UFW (простой брандмауэр)
UFW — это хорошо известный инструмент настройки брандмауэра по умолчанию в дистрибутивах Debian и Ubuntu Linux. Он используется для включения/отключения системного брандмауэра, добавления/удаления/изменения/сброса правил фильтрации пакетов и многого другого.
Чтобы проверить состояние брандмауэра UFW, введите.
Если брандмауэр UFW неактивен, вы можете активировать или включить его с помощью следующей команды.
Чтобы отключить брандмауэр UFW, используйте следующую команду.
Если вы хотите найти дополнительную информацию о конкретной программе, вы можете обратиться к ее справочным страницам, как показано.
На этом пока все! В этом подробном руководстве мы рассмотрели некоторые из наиболее часто используемых инструментов и утилит командной строки для управления сетью в Linux, в разных категориях, для системных администраторов, и в равной степени полезных для сетевых администраторов/инженеров, работающих полный рабочий день.
Вы можете поделиться своими мыслями об этом руководстве, заполнив форму комментариев ниже. Если мы пропустили какие-либо часто используемые и важные сетевые инструменты/утилиты Linux или какую-либо полезную связанную информацию, также сообщите нам об этом.
Если вам понравилась эта статья, подпишитесь на уведомления по электронной почте о руководствах по Linux. Если у вас есть вопросы или сомнения? обратитесь за помощью в разделе комментариев.
Если вы цените то, что мы делаем здесь, в TecMint, вам следует подумать о следующем:
TecMint – это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! для поиска или просмотра тысяч опубликованных статей, доступных всем БЕСПЛАТНО.
Если вам нравится то, что вы читаете, купите нам кофе (или 2) в знак признательности.
Читайте также: