Иногда нужно понять очень простую вещь: какие устройства прямо сейчас находятся в вашей локальной сети.то может понадобиться для инвентаризации, поиска «потерявшегося» принтера, проверки гостевого Wi-Fi, диагностики странных конфликтов IP-адресов или просто чтобы убедиться, что в сети нет ничего лишнего.
Один из самых быстрых и практичных способов обнаружения устройств в одной подсети — ARP-сканирование. Оно опирается на базовый механизм Ethernet-сетей и часто работает там, где обычный ping не поможет.
Что такое ARP и почему через него удобно сканировать сеть
ARP — протокол, который помогает компьютеру сопоставить IP-адрес с MAC-адресом в пределах локального сегмента сети. Когда ваше устройство хочет отправить пакет на IP внутри локалки, ему нужно знать, на какой MAC-адрес отправлять данные. Для этого оно задаёт вопрос в сеть: «Кому принадлежит IP 192.168.1.50?». В ответ владелец этого IP присылает свой MAC, и дальше обмен идёт уже адресно.
Перед стартом: узнаём интерфейс и свою подсеть
Чтобы сканирование было корректным, нужно понять две вещи: через какой интерфейс вы в сети и какой у вас диапазон адресов.
1. Смотрим интерфейсы и адреса:
ip -br a
Вы увидите что-то вроде enp3s0 192.168.1.10/24 или wlan0 10.0.0.25/24. Суффикс /24 — это маска сети (CIDR), по ней понятно, что диапазон обычно x.x.x.0–x.x.x.255.
2. Смотрим маршрут по умолчанию, чтобы понять «главный» интерфейс и шлюз:
ip route
Строка вида default via 192.168.1.1 dev enp3s0 подскажет, где вы находитесь.
Способ 1. arp-scan: самый просто инструмент для ARP-сканирования
arp-scan — это почти эталон для задачи поиска устройств в локальной сети. Он отправляет ARP-запросы и собирает ответы.
Установка
Debian/Ubuntu:
sudo apt update && sudo apt install arp-scan
Fedora:
sudo dnf install arp-scan
Arch:
sudo pacman -S arp-scan
Сканирование всей подсети текущего интерфейса
Чаще всего достаточно одной команды:
sudo arp-scan --localnet
Вы получите список вида:
- IP-адрес
- MAC-адрес
- иногда — производитель (по OUI, первым байтам MAC)
Если интерфейсов несколько
Явно укажите нужный:
sudo arp-scan --interface=enp3s0 --localnet
Сканирование конкретного диапазона
Если вы точно знаете сеть, можно указать её явно:
sudo arp-scan 192.168.1.0/24
Что важно понимать по результатам
ARP-скан покажет устройства, которые реально присутствуют в L2-сегменте и отвечают на ARP. Если устройство спит, ушло в энергосбережение, находится за изолированной Wi-Fi-сетью или подключено к «гостевому» сегменту с клиентской изоляцией, его может не быть в выдаче — и это не ошибка команды, а свойство сети.
Способ 2. Встроенные средства Linux: ip neigh и ARP-кэш
Linux сам постоянно ведёт таблицу соседей (ARP/ND). Иногда достаточно просто посмотреть, кого система уже видела» в сети:
ip neigh
Вы увидите записи вида 192.168.1.1 dev enp3s0 lladdr aa:bb:cc:dd:ee:ff REACHABLE.
Плюс этого подхода — ничего не нужно устанавливать. Минус — таблица заполняется только для тех адресов, с которыми уже было взаимодействие.
Способ 3. Проверка с помощью nmap -sn
nmap чаще ассоциируется с порт-сканированием, но для задачи обнаружения хостов у него есть режим ping scan без портов:
sudo nmap -sn 192.168.1.0/24
При проводном соединении nmap обычно использует ARP для адресов в локальной подсети, поэтому результаты часто близки к arp-scan. При этом nmap может дополнительно применять ICMP и другие методы, что иногда помогает в смешанных сценариях.
Почему ARP-сканирование иногда «не видит» часть устройств
Когда результаты кажутся неполными, чаще всего причина не в Linux и не в утилитах. Вот типовые сценарии:
- Разные VLAN/подсети. ARP не проходит через маршрутизатор. Если устройство в другой подсети, вы его не увидите.
- Wi-Fi client isolation / гостевая сеть. Многие роутеры в гостевом режиме запрещают клиентам видеть друг друга. Тогда ARP-скан с одного клиента почти ничего не покажет.
- Сон и энергосбережение. Смартфоны, ноутбуки и IoT могут спать и не отвечать мгновенно.
- Фильтрация и особенности оборудования. Редко, но встречаются устройства, которые ведут себя нетипично или отвечают не всегда стабильно.
- Вы сканируете не тем интерфейсом. Особенно легко ошибиться на ноутбуках с Ethernet + Wi-Fi + VPN.
Важно: ARP-сканирование — это не взлом и не хакерство, но это всё равно активное воздействие на сеть. В домашней сети или в своей инфраструктуре это нормальный диагностический инструмент. В корпоративной среде лучше заранее убедиться, что вы действуете в рамках правил: некоторые системы мониторинга воспринимают массовые ARP-запросы как подозрительную активность.
Если вы сканируете сеть, которая вам не принадлежит и на которую у вас нет разрешения, это уже плохая идея и, в зависимости от юрисдикции и обстоятельств, может привести к неприятным последствиям. В нормальной рабочей практике ARP-скан применяют там, где вы администратор или владелец сети, либо действуете по согласованию.
Итог
ARP-сканирование — это один из самых приземлённых и полезных инструментов диагностики локальной сети. Оно не требует сложной инфраструктуры, работает быстро и в большинстве случаев показывает реальную картину того, что находится в вашем сегменте прямо сейчас. Если держать в голове ограничения (подсети, VLAN, изоляция Wi-Fi), результаты становятся понятными и предсказуемыми.
Если после сканирования вы поняли, что локальной инфраструктуре тесно, часть сервисов можно вынести на внешний сервер — так проще разграничить доступ, снизить нагрузку на домашнюю сеть и держать критичные компоненты в более предсказуемой среде. А если вам нужен VPS или dedicated для таких задач, в UFO.Hosting можно оформить заказ со скидкой: используйте промокод DZEN. Он помогает выгоднее запускать проекты на производительной платформе, которая рассчитана на стабильную работу и высокие нагрузки.