Arp scan linux команды

Обновлено: 07.07.2024

Сейчас я покажу, как можно не заходя на роутер просканировать сеть и определить какие устройства доступны в сети.

Текущая система на которой запускается данная утилита:

Ubuntu 10.10 \n \l

Проверим имеется ли данный пакет в репозитариях Ubuntu 10.10 :

$ aptitude search arp-scan

Информация о пакете:

$ aptitude show arp-scan

Состояние: не установлен

Версия: 1.6-2

Размер в распакованном виде: 553k

Зависимости: libc6 (>= 2.5-5), libpcap0.8 (>= 0.9.3-1)

Описание: arp scanning and fingerprinting tool

arp-scan is a command-line tool that uses the ARP protocol to discover and fingerprint IP hosts on the local

network. It is available for Linux and BSD under the GPL licence

Установим паке в систему:

sudo apt-get install arp-scan

Просканируем сеть используя один из сетевых адаптеров в системе:

You need to be root, or arp-scan must be SUID root, to open a link-layer socket.

link_open: Operation not permitted — утилиту следует запускать воспользовавшись sudo.

[sudo] password for keiz:

Interface: eth0, datalink type: EN10MB (Ethernet)

192.168.1.1 00:13:49:c9:a4:24 ZyXEL Communications Corporation

192.168.1.34 00:25:22:83:33:25 (Unknown)

192.168.1.35 9c:b7:0d:85:f5:28 (Unknown)

4 packets received by filter, 0 packets dropped by kernel

Ending arp-scan 1.6: 256 hosts scanned in 1.394 seconds (183.64 hosts/sec). 3 responded

Данный вывод указанных соответствий опирается на текстовые файлы:

List of IEEE OUI (Organizationally Unique Identifier) to vendor mappings.

List of IEEE IAB (Individual Address Block) to vendor mappings.

List of other Ethernet MAC to vendor mappings.

Используйте прокси ((заблокировано роскомнадзором, используйте vpn или proxy)) при использовании Telegram клиента:

Поблагодари автора и новые статьи

будут появляться чаще :)

Карта МКБ: 4432-7300-2472-8059

Большое спасибо тем кто благодарит автора за практические заметки небольшими пожертвованиями. С уважением, Олло Александр aka ekzorchik.

Список инструментов для тестирования на проникновение и их описание

Описание arp-scan

Это ARP сканнер.

arp-scan — это инструмент командной строки для обнаружения и снятия отпечатков. Он создает и отправляет ARP запросы указанным IP адресам и отображает полученные ответы.

arp-scan позволяет вам:

  • Отправлять ARP-пакеты на любое количество хостов-получателей, используя настраиваемую пропускную способность или скорость передачи.

Это полезно для обнаружения устройств, когда вам может потребоваться сканировать большие адресные пространства.

  • Гибким способом конструировать исходящий ARP пакет.

arp-scan предоставляет управление всеми полями пакета ARP и полями в заголовке Ethernet кадра.

  • Декодировать и отображать любые возвращённые пакеты.

arp-scan будет декодировать и отображать любые принятые ARP-пакеты и искать поставщика, используя MAC-адрес.

  • Снимать отпечатки IP хостов, используя инструмент arp-fingerprint.

Автор: Roy Hills

Справка по arp-scan

Руководство по arp-scan

ИМЯ

arp-scan - Сканер ARP.

СИНОПСИС

Целевые хосты должны быть указаны в строке команды, кроме когда указана опция --file (в этом случае цели считываются из указанного файла) или если используется опция --localnet (в этом случае цели генерируются на основе IP адреса сетевого интерфейса и маски сети).

Для запуска arp-scan вам нужно будет быть root, или arp-scan должен быть запущен с SUID битом (с sudo), поскольку функции, которые использует эта программа для чтения и записи пакетов, требуют привилегий root.

Целевые хосты могут быть указаны как IP-адреса или имена хостов. Вы также можете указать цель как IPnetwork/биты (например, 192.168.1.0/24) — это укажет все хосты в данной сети (включая сетевые и широковещательные адреса); начальныйIP-конечныйIP (например, 192.168.1.3-192.168.1.27) — это укажет на все хосты в инклюзивном диапазоне; или IPnetwork:NetMask (например, 192.168.1.0:255.255.255.0) — это укажет на все хосты в данной сети по маске.

ОПИСАНИЕ

arp-scan отправляет ARP пакеты к хостам в локальной сети и показывает полученные ответы. Сетевой интерфейс, который вы хотите использовать, можно указать опцией --interface. Если опция отсутствует, arp-scan будет искать самый низкий номер в списке системных интерфейсов (за исключением loopback). По умолчанию ARP пакеты отправляются на широковещательный Ethernet адрес ff:ff:ff:ff:ff:ff, но это можно изменить опцией --destaddr.

Целевые хосты для сканирования можно указать тремя способами: указав цели в строке команды; указав опцией --file файл, содержащий цели; или указав опцию --localnet, которая приведёт к тому, что будут просканированы все возможные в сети хосты (данные формируются исходя из адреса сетевого интерфейса и маски сети). Для хостов, указанных в строке команды или опцией --file вы можете использовать IP адреса или имена хостов. Вы также можете использовать сетевые спецификации IPnetwork/биты, начальныйIP-конечныйIP или IPnetwork:NetMask.

Список целевых хостов храниться в памяти. Каждый хост в этом списке использует 28 байт памяти, следовательно сканирование сетей класса B (65,536 хостов) требует примерно 1.75MB памяти, а сканирование класса A (16,777,216 хостов) требует примерно 448MB.

arp-scan поддерживает Ethernet и беспроводные сети 802.11. Он также может поддерживать token ring и FDDI, но они не тестировались. Программа не поддерживает serial links, такие как PPP или SLIP, поскольку они не поддерживают ARP.

ARP протокол — это протокол второго уровня (канальный уровень), который используется для определения адреса третьего уровня (сетевой уровень) по заданному адресу второго уровня, говоря другими словами для определения MAC-адреса, имея IP-адрес другого компьютера. ARP был создан для работы с адресными форматами второго уровня и третьего уровня, но чаще всего используется дял сопоставления IP адреса аппаратному Ethernet адресу, и именно это поддерживает arp-scan. ARP работает только в локальных сетях и не является маршрутизируемым. Хотя ARP протокол использует IP адреса, он не является основанным на IP протоколе и arp-scan может использоваться на интерфейсе, который не настроен для IP.

ARP только используется IPv4 хостами, IPv6 вместо него использует NDP (протокол обнаружения соседей), который является другим протоколом и не поддерживается программой arp-scan.

Один ARP пакет отправляется для каждого целевого хоста с адресом целевого протокола (поле ar$tpa), установленного на IP адрес этого хоста. Если хост не отвечает, тогда ARP пакет будет отправлен повторно ещё один раз. Максимальное количество попыток можно изменить опцией --retry. Уменьшение количества попыток уменьшит время сканирование за счёт возможного риска пропустить некоторые результаты из-за потери пакетов.

Время, затраченное на выполнение сканирования в один проход (т. е. --retry=1) рассчитывается:

Где n — это количество хостов в списке, i — это временной интервал между пакетами (указывается опцией --interval или расчитывается из --bandwidth), t — это значение времени ожидания (указывается с --timeout) и o — это время на загрузку целей из списка и чтение файлов сопоставления MAC/вендора. Для небольших списков хостов, значение таймаута будет превалирующим, но для больших списков пакетный интервал это самое важное значение.

С 65,536 хостами дефолтная полоса пропускания 256,000 бит/секунду (что приведёт к пакетному интервалу в 2 мс), дефолтное время ожидания равно 500 мс, при единичном проходе (--retry=1) и предположительном дополнительном расходе времени в 1 секунду, сканирование должно занять 65536*0.002 + 0.5 + 1 = 132.57 секунд, т. е. примерно 2 минуты 13 секунд.

Любая часть исходящего ARP пакета может быть модифицирована через использование различных --arpXXX опций. Использование некоторых из этих опций может сделать исходящие ARP пакеты не совместимыми с RFC. Различные операционные системы обрабатывают различные нестандартные ARP пакеты по-разному и это можно использовать для снятия отпечатков этих систем. Смотрите arp-fingerprint(1) для информации о скрипте, который использует эти опции для снятия отпечатков целевой операционной системы.

Ниже приведена сводная таблица этих опций и изменений исходящего ARP пакета. В этой таблице колонка Поле приводит имя поля ARP пакета из RFC 826, Биты определяет количество битов в этом поле, Опции показывают опцию arp-scan для изменения этого поля и Примечания дают стандартное значение и другие заметки.

Опции исходящих ARP пакетов
Поле Биты Опция Примечания
ar$hrd 16 --arphrd По умолчанию это 1 (ARPHRD_ETHER)
ar$pro 16 --arppro По умолчанию это 0x0800
ar$hln 8 --arphln По умолчанию это 6 (ETH_ALEN)
ar$pln 8 --arppln По умолчанию это 4 (IPv4)
ar$op 16 --arpop По умолчанию это 1 (ARPOP_REQUEST)
ar$sha 48 --arpsha По умолчанию это аппаратный адрес интерфейса
ar$spa 32 -arpspa По умолчанию это IP адрес интерфейса
ar$tha 48 --arptha По умолчанию это ноль (00:00:00:00:00:00)
ar$tpa 32 Нет Устанавливается на IP адрес целевого хоста

Самой часто используемой опцией исходящего ARP пакета является --arpspa, которая устанавливает IP адрес источника в ARP пакете. Эта опция позволяет исходящему ARP пакету использовать IP адрес источника отличный от адреса интерфейса. С этой опцией возможно использовать arp-scan на интерфейсе без настроенного IP адреса, что может быть полезно если вы хотите быть уверенным, что тестирующий хост не взаимодействует с тестируемой сетью.

Предупреждение: установка ar$spa на IP адрес конечного пункта может нарушать работу некоторых операционных систем, поскольку они предполагают наличие коллизии IP адресов, если они получают ARP запрос для их собственного адреса.

Можно изменить значение заголовка Ethernet фрейма, который предшествует ARP пакету в исходящих пакетах. Таблица ниже суммирует данные по опциям, которые изменяют значения в заголовке Ethernet фрейма.

Опции исходящих Ethernet фреймов
Поле Биты Опция Примечания
Адрес назначения 48 --destaddr По умолчанию это ff:ff:ff:ff:ff:ff
Адрес источника 48 --srcaddr По умолчанию это адрес интерфейса
Тип протокола 16 --prototype По умолчанию это 0x0806

Самой часто используемой опцией Ethernet фрейма является --destaddr, которая устанавливает Ethernet адрес пункта назначения для ARP пакета, --prototype используется нечасто, поскольку она может привести к тому, что пакет будет интерпретирован как другой Ethernet протокол.

Любые ARP ответы, которые получены, отображаются в следующем формате:

Где IP адрес — это IP адрес ответившей цели, Аппаратный адрес — это её аппаратный Ethernet адрес (также известный как MAC-адрес), а Производитель — это подробности о производителе, полученные на основе аппаратного адреса. Поля вывода разделены единичным символом табуляции.

Ответы отображаются в порядке их получения, который может отличаться от порядка отправки запросов, поскольку некоторые хосты могут отвечать быстрее других.

Почти все хосты, которые поддерживают IP, ответят arp-scan если они получили ARP пакет с адресом целевого протокола (ar$tpa) установленного на их IP адрес. Сюда относятся файерволы и другие хосты с IP фильтрацией, которые отбрасывают весь IP трафик от тестирующей системы. По этой причине arp-scan полезный инструмент для быстрого определения всех активных IP хостов на заданном сегменте Ethernet сети.

ОПЦИИ

Описание опций в man странице полностью повторяет содержимое справки. Для знакомства с опциями смотрите выше раздел Справка.

ФАЙЛЫ

Спиоск IEEE OUI (Уникальный идентификатор организации) для сопоставления производителя.

List of IEEE IAB (Индивидуальный блок адресов IAB) для сопоставления производителя.

Список других Ethernet MAC для сопоставления производителя.

get-oui — обновление файла OUI с веб-сайта IEEE для arp-scan

get-oui получает файл Ethernet OUI с веб-сайта IEEE и сохраняет его в формате, используемом arp-scan.

Каждый крупный поставщик оборудования Ethernet регистрирует OUI для своего оборудования, а более крупным поставщикам потребуется зарегистрировать более одного. Например, у 3Com всего 37 записей OUI.

Этот скрипт можно использовать для обновления OUI-файла arp-scan из последних данных на веб-сайте IEEE. Большинство используемых адресов Ethernet относятся к регистрации OUI, поэтому это самый важный из файлов, которые arp-scan использует для декодирования аппаратных адресов Ethernet. Поэтому вам следует время от времени запускать get-oui, чтобы поддерживать OUI-файл arp-scan в актуальном состоянии.

Файл ieee-oui.txt, созданный этим скриптом, используется arp-scan для определения производителя карты Ethernet по его аппаратному адресу.

Каталог, в котором arp-scan будет искать файл ieee-oui.txt, зависит от параметров, использованных при его создании. Если он был построен с использованием параметров по умолчанию, он будет искать в /usr/local/share/arp-scan.

Чтобы выполнить обновление файла OUI запустите следующую команду:

Примеры запуска arp-scan

Просканировать локальную сеть, используя информацию от главного сетевого интерфейса:

Просканировать локальную сеть 192.168.0.0/24 используя интерфейс eth0:

Просканировать подсеть, на указанном интерфейсе и используя пользовательский MAC адрес источника:

Установка arp-scan

Программа предустановлена в Kali Linux.

Установка в BlackArch

Программа предустановлена в BlackArch.

Информация об установке в другие операционные системы будет добавлена позже.

При работе с АТС, иногда возникает необходимость узнать информацию о подключении устройств, чаще всего это необходимо для обнаружения подключения шлюзов, телефонных аппаратов, не зная их адресов или убедиться в подключении, еще таким образом можно проверить безопасность, т.е. можно зафиксировать подключение скрытых или неизвестных устройств. Самый надежный и простой способ обнаружения всех подключенных устройств, […]

ARP сканирование

При работе с АТС, иногда возникает необходимость узнать информацию о подключении устройств, чаще всего это необходимо для обнаружения подключения шлюзов, телефонных аппаратов, не зная их адресов или убедиться в подключении, еще таким образом можно проверить безопасность, т.е. можно зафиксировать подключение скрытых или неизвестных устройств.

Самый надежный и простой способ обнаружения всех подключенных устройств, даже которые скрыты – это ARP сканирование.

ARP-scan – это инструмент командной строки для обнаружения подключенных устройств. Создает и отправляет запросы указанным IP адресам и отображает полученный ответ.

ARP-scan подходит только для сканирования локальной сети, если есть необходимость сканировать за пределами сети, можно воспользоваться ping сканированием.

Возможности ARP сканирования

  1. Отправление ARP пакетов на любое количество хостов, используя пропускную способность или скорость передачи: удобно для обнаружения устройств при сканировании больших адресных пространств.
  2. Многофункциональный способ конструирования исходящих ARP пакетов: управление всеми полями пакета ARP и полями в заголовке Ethernet кадра.
  3. Декодирование и отображение любых возвращенных пакетов: декодирование и отображение любых принятых ARP пакетов, поиск источника, используя MAC-адрес.
  4. Снятие «отпечатков» IP хостов, используя инструмент arp-fingerprint.

Каким образом осуществляется сканирование.

Для преобразования физических адресов в ip адреса используется протокол ARP (Address Resolution Protocol), протокол разрешения адресов.

Сканер локальной сети доступен для следующих операционных систем:

Для установки в CentOS необходимо выполнить:

Для вывода справки по команде необходимо ввести:

Примечание: там, где опция принимает значение, это значение указано буквой в

треугольных скобках. Буква показывает, какой тип данных ожидается:

<s> Строка символов, например.

<i> Целое число, которое может быть в десятеричной или шестнадцатеричной

форме если перед ним стоит 0x, например,

--arppro=2048 или --arpro=0x0800.

<m> Ethernet MAC-адрес, который может быть записал либо в формате

01:23:45:67:89:ab, или как 01-23-45-67-89-ab. Алфавитные шестнадцатеричные

символы могут быть как заглавными, так и прописными. Напр.,

<a> IPv4 адрес, например,

<h> Бинарные данные, указанные как шестнадцатеричная строка, которая не

должна включать начальные 0x. Алфавитные hex символы могут быть как

заглавные, так и прописные. Например

--padding=aaaaaaaaaaaa

Установить общее число попыток для каждого хоста на <i>, по умолчанию=2.

Установить начальный на каждый хост таймаут в <i> мс, по умолчанию=500.

Установить минимальный пакетный интервал на <x>.

Установить желаемую полосу пропускания на <x>, по умолчанию=256000.

Установить коэффициент отсрочки таймаута на <f>, по умолчанию=1.50.

Таймаут для каждого хоста умножается на этот коэффициент после каждого таймаута. Поэтому если количество попыток равно 3, начальный таймаут хоста 500ms, а коэффициент отсрочки 1.5, тогда первый таймаут будет 500ms, второй 750ms, а третий 1125ms.

Использование более чем один раз усиливает эффект:

Показать версию программы и выйти.

Рандомизировать список хостов.

Эта опция перемешивает порядок хостов в списке хостов, поэтому ARP пакеты отправляются хостам в случайном порядке. Используется алгоритм перетасовки Кнута.

Только IP адреса, без имён хостов.

С этой опцией все хосты должны быть указаны как IP адреса. Имена хостов не разрешены. Не будет выполняться DNS преобразования.

Установить длину snap в pcap на <i>. По умолчанию=64.

Это определяет длину фрейма захвата. Эта длина включает data-link заголовок. Значения по умолчанию обычно достаточно.

Использовать сетевой интерфейс <s>.

Если эта опция не указана, arp-scan будет искать самый нижний номер в списке системных интерфейсов, среди только настроенных (за исключением loopback). Указанный интерфейс должен поддерживать ARP.

Если указана эта опция, тогда будет отображаться только минимальная информация. С этой опцией не используются файлы OUI.

--ignoredups или -g

Не показывать повторяющиеся пакеты.

Использовать IEEE Ethernet OUI файл <s> для определения производителя.

Если эта опция не указана, именем файлом по умолчанию является ieee-oui.txt в текущей директории. Если он не найден, тогда используется файл

Использовать IEEE Ethernet IAB файл <s> для определения производителя.

Если эта опция не указана, именем файлом по умолчанию является ieee-iab.txt в текущей директории. Если он не найден, тогда используется файл

Использовать пользовательский Ethernet MAC файл <s> для определения производителя.

Если эта опция не указана, именем файлом по умолчанию является mac-vendor.txt в текущей директории. Если он не найден, тогда используется файл

Установить Ethernet MAC-адрес источника на <m>.

Отправлять пакеты на Ethernet MAC адрес <m>

Использовать <m> как адрес источника ARP Ethernet

Использовать <m> в качестве целевого ARP Ethernet адреса

Установить тип Ethernet протокола на <i>, по умолчанию=0x0806.

Это устанавливает 16-битное поле типа протокола в заголовке Ethernet фрейма. Установка на не-дефолтное значение приведёт к тому, что пакет будет проигнорирован целью, или отправлен
в неправильный стек протокола.

Использовать <i> для типа ARP железа, по умолчанию=1.

Это устанавливает 16-битное ar$hrd поле в ARP пакете. Нормальным значением является 1 (ARPHRD_ETHER). Большинство, но не все операционные системы также ответят на 6 (ARPHRD_IEEE802). Некоторые системы отвечают на любое значение.

Использовать <i> для типа ARP протокола, по умолчанию=0x0800.

Это устанавливает 16-битное поле ar$pro в ARP пакете. Большинство операционных систем отвечают только на 0x0800 (IPv4) но некоторые также ответят на другие значения.

Установить длину аппаратного адреса на <i>, по умолчанию=6.

Установить длину протокола адреса на <i>, по умолчанию=4.

Использовать <i> для ARP операций, по умолчанию=1.

Это устанвливает 16-битное поле ar$op в пакете ARP. Большинство операционных систем ответят только на значение 1 (ARPOP_REQUEST). Хотя некоторые системы ответят также и на другие значения.

Использовать <a> как IP адрес источника.

Указывает отступ после пакета данных.

Устанавливает отступ данных на шестнадцатеричное значение
h>. Эти данные добавляются к концу ARP пакета, после данных. Большинство, если не все, операционные системы проигнорируют любой отступ. По умолчанию отступ отсутствует, хотя Ethernet драйвер на отправляющей системе может накладывать пакет на минимальную длину Ethernet фрейма.

Использовать RFC 1042 LLC фрейминг с SNAP.

Эта опция приводит к тому, что исходящие ARP пакеты используют IEEE 802.2 фрейминг со SNAP заголовком как описано в RFC 1042. По умолчанию используется Ethernet-II фрейминг. arp-scan будет декодировать и отображать полученные ARP пакеты либо в Ethernet-II или в IEEE 802.2 форматах независимо от этой опции.

Использовать 802.1Q тэггинг с VLAN id <i>.

Эта опция приводит к тому, что исходящие ARP пакеты 802.1Q VLAN используют тэггинг с VLAN ID of <i>, который должен быть в диапазоне от 0 до 4095 включительно. arp-scan всегда будет декодировать и отображать полученные ARP пакеты в 802.1Q формате независимо от этой опции.

Записывать полученные пакеты в pcap файл <s>.

Спиоск IEEE OUI (Уникальный идентификатор организации) для сопоставления производителя.

List of IEEE IAB (Индивидуальный блок адресов IAB) для сопоставления производителя.

Список других Ethernet MAC для сопоставления производителя.

Сканирование локальной сети

ARP Scan находит активные устройства, как в проводных сетях Ethernet, так и в беспроводных Wifi сетях, возможна работа в Token Ring (протокол передачи данных в локальной вычислительной сети с топологией кольца и «маркерным доступом». ) и FDDI (Волоконно-оптический распределенный интерфейс передачи данных).

Не поддерживаются последовательные соединения PPP и SLIP, в них не используется ARP.

Ниже приведена команда для простого способа сканирования:

пример ответа сканирования сети

пример ответа сканирования сети

Ответ дает информацию:

Сканирование было осуществлено на 256 портах, 23 устройства подключено, по каждому указан локальный ip, MAC адрес, название устройства (если распознано).

Для того, чтобы посмотреть, какие есть интерфейсы в Вашей системе, необходимо выполнить:

вывод интерфейсов

вывод интерфейсов

Так же вместо параметра –localnet можно указать маску сети:

пример ответа сканирования сети по маске

пример ответа сканирования сети по маске

В повседневные задачи системных администраторов входит работа с сетями и с подключённым к ним оборудованием. Нередко роль рабочего места администратора играет компьютер, на котором установлен какой-нибудь дистрибутив Linux. Утилиты и команды Linux, о которых пойдёт речь в материале, перевод которого мы публикуем сегодня, включают в себя список инструментов различной сложности — от простых, до продвинутых, которые предназначены для решения широкого спектра задач по управлению сетями и по диагностике сетевых неполадок.


Утилита ping , как можно судить по её названию, используется для проверки связи между узлами сети, между компьютером, на котором её запускают, и другой системой. Эта утилита использует протокол ICMP, отправляя эхо-запросы, на которые отвечает удалённая система, получающая их. Использование ping , кроме того — это хороший способ проверки связности сети, проводимой в качестве первого шага диагностики сети при наличии неполадок. Команду ping можно использовать с адресами IPv4 и IPv6. Тут можно почитать подробности об IP-адресах и о работе с ними.

▍Примеры

Ping, кроме того, можно использовать для выяснения IP-адресов сайтов на основе их имён. Вот как это выглядит.



Использование ping для выяснения IP-адреса сайта по его имени

Traceroute

Traceroute — это приятная утилита, которая позволяет исследовать маршруты передачи данных между компьютерами. В то время как команда ping направлена на то, чтобы выяснить, можно ли установить связь между двумя узлами сети, traceroute даёт сведения об IP-адресах маршрутизаторов, через которые проходят данные от вашей системы до конечной, например — до веб-сайта или сервера. Команда traceroute обычно применяется на втором шаге диагностики сети, после команды ping .

▍Пример

Telnet

Утилита telnet позволяет связаться с удалённым компьютером по протоколу Telnet и взаимодействовать с ним, используя соответствующие команды.

▍Пример

Для организации сеанса Telnet-связи с другим компьютером используется следующая команда:

Netstat

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

▍Примеры

Для того чтобы получить список всех портов, находящихся в режиме прослушивания, воспользуйтесь такой командой:


Следующая команда выводит сведения обо всех портах. Для того чтобы ограничиться только TCP-портами, нужно воспользоваться ключом -at , для того, чтобы получить данные об UDP-портах, используйте ключ -au .


Для просмотра таблиц маршрутизации воспользуйтесь такой командой:


Вот как выглядит результат выполнения этой команды.



Сведения о таблице маршрутизации

Вот вариант этой команды, выводящий статистику по протоколам:




Статистика по протоколам

Следующий вариант вызова netstat позволяет узнать сведения об отправленных и полученных пакетах (transmission/receive, TX/RX) по каждому интерфейсу:



Данные об отправленных и полученных пакетах

Nmcli

Утилита nmcli отлично подходит для управления сетевыми соединениями, для выполнения настроек и для решения других подобных задач. С её помощью можно управлять программой NetworkManager и модифицировать сетевые параметры различных устройств.

▍Примеры

Вот как с помощью nmcli вывести список сетевых интерфейсов:


Так можно вывести информацию по конкретному интерфейсу:


Следующий вариант вызова команды позволяет проверить подключение устройства к сети:




Примеры использования nmcli

Эта команда позволяет отключить заданный интерфейс:


А эта позволяет включить интерфейс:


Вот пример команды, которая добавляет VLAN-интерфейс с заданным VLAN-номером, IP-адресом и шлюзом к указанному интерфейсу:

Маршрутизация

Существует множество команд, которые можно использовать для проверки правил маршрутизации и их настройки. Рассмотрим самые полезные из них.

▍Примеры

Следующая команда показывает все текущие маршруты, настроенные для соответствующих интерфейсов:




Маршруты, настроенные для интерфейсов

Эта команда позволяет добавить в таблицу маршрутизации шлюз, используемый по умолчанию:


Следующая команда добавляет в таблицу маршрутизации новый сетевой маршрут. Существует и множество других её параметров, позволяющих выполнять такие операции, как добавление маршрута и шлюза, используемых по умолчанию, и так далее.


С помощью такой команды можно удалить запись о заданном маршруте из таблицы маршрутизации:


Вот примеры использования команды route .



Использование команды route

Вот команда, которая применяется для вывода текущей таблицы соседей. Кроме того, её можно использовать для добавления, изменения или удаления сведений о соседях:


Взглянем на примеры её использования.



Данные, полученные с помощью команды ip neighbor

Вот сведения о команде ip neigh



Сведения о команде ip neigh

Команда arp (ARP — это сокращение от Address Resolution Protocol, протокол определения адреса) похожа на ip neighbor . Утилита arp выводит данные о соответствии IP-адресов MAC -адресам. Вот как её использовать:


Вот пример её вызова.



Вызов команды arp

Tcpdump и Wireshark

Linux даёт в распоряжение администратора множество инструментов для захвата и анализа пакетов. Среди них, например, tcpdump , wireshark , tshark , и другие. Они используются для захвата сетевого трафика в передаваемых системой пакетах или в пакетах, получаемых ей. Это делает их весьма ценным инструментом администратора, помогающим в деле выяснения причин различных сетевых неполадок. Тем, кто предпочитает командную строку всем остальным способам общения с компьютерами, понравится tcpdump . Тем же, кто любит графические интерфейсы, можно порекомендовать wireshark — отличный инструмент для захвата и анализа пакетов. Утилита tcpdump — это встроенное в Linux средство для захвата сетевого трафика. Его можно использовать для захвата и вывода трафика с фильтрацией по портам, протоколам, и по другим признакам.

▍Примеры

Такая команда показывает, в режиме реального времени, пакеты с заданного интерфейса:


Пакеты можно сохранять в файл, воспользовавшись флагом -w и задав имя файла:


Вот пример использования tcpdump .



Использование tcpdump

Следующий вариант команды используется для захвата пакетов, приходящих с заданного IP системы-источника:


Так можно захватить пакеты, идущие на заданный адрес системы-приёмника:


Вот пример использования tcpdump для захвата пакетов для заданного номера порта, например, это может быть порт 53, 80, 8080, и так далее:


Здесь показано, как с помощью tcpdump захватывать пакеты заданного протокола, вроде TCP, UDP или других:

Iptables

Утилита iptables похожа на файрвол, она поддерживает фильтрацию пакетов, что позволяет управлять трафиком, пропуская или блокируя его. Диапазон возможностей этой утилиты огромен. Рассмотрим несколько наиболее распространённых вариантов её использования.

▍Примеры

Следующая команда позволяет вывести все существующие правила iptables :


Эта команда удаляет все существующие правила:


Следующие команды разрешают прохождение трафика с заданного номера порта к заданному интерфейсу:


Следующие команды разрешают loopback-доступ к системе:

Nslookup

Инструмент nslookup используется для получения сведений о назначении IP-адресов сетевым ресурсам. Его можно использовать и для получения сведений с DNS-серверов, например таких, как все DNS-записи для некоего веб-сайта (ниже мы рассмотрим соответствующий пример). На nslookup похожа утилита dig (Domain Information Groper).

▍Примеры

Следующая команда выводит IP-адреса вашего DNS-сервера в поле Server, и, ниже, выдаёт IP-адрес искомого сайта:


Такая команда показывает все доступные записи для заданного веб-сайта или домена:

Поиск неполадок

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

▍Примеры

  • ss — утилита для вывода статистической информации о сокетах.
  • nmap <ip-address> — имя этой команды является сокращением от Network Mapper. Она сканирует сетевые порты, обнаруживает хосты, выясняет MAC-адреса и выполняет множество других задач.
  • ip addr/ifconfig -a — эта команда предоставляет сведения об IP-адресах и другие данные по всем интерфейсам системы.
  • ssh -vvv user@<ip/domain> — такая команда позволяет подключиться по SSH к другому компьютеру, используя заданный IP-адрес или доменное имя компьютера и имя пользователя. Флаг -vvv позволяет получать подробные сведения о происходящем.
  • ethtool -S <interface> — данная команда позволяет вывести статистические сведения по заданному интерфейсу.
  • ifup <interface> — эта команда включает указанный интерфейс.
  • ifdown <interface> — эта команда отключает указанный интерфейс.
  • systemctl restart network — с помощью этой команды можно перезагрузить системную сетевую подсистему.
  • /etc/sysconfig/network-scripts/<interface-name> — это — файл настройки интерфейсов, используемый для указания IP-адреса, сети, шлюза и других параметров для заданного интерфейса. Здесь можно задать использование интерфейсом DHCP-режима.
  • /etc/hosts — данный файл содержит сведения о соответствии хостов или доменов IP-адресам, настроенные администратором.
  • /etc/resolv.conf — в этом файле хранятся настройки DNS.
  • /etc/ntp.conf — этот файл хранит настройки NTP.

Итоги

В этой небольшой шпаргалке мы рассказали о сетевых инструментах Linux, предназначенных для системных администраторов. Надеемся, вам эти инструменты пригодятся.

Читайте также: