- ARP сканирование локальной сети Linux
- Как выполнить ARP сканирование локальной сети?
- Утилита ARP Scan
- Установка ARP Scan
- Сканирование сети
- ARP спуфинг и ARP прокси
- Выводы
- Список сетевых интерфейсов Linux
- Список сетевых интерфейсов Linux
- 1. Файловая система
- 2. Утилита ifconfig
- 3. Утилита ip
- 4. Утилита nmcli
- 5. Утилита netstat
- 6. Файл /proc/net/dev
- Выводы
- Как найти все устройства, подключенные к локальной сети
- Поиск устройств в сети с помощью командной строки Linux
- Установите nmap
- Узнайте диапазон адресов сети
- Просканируйте устройства, подключенные к сети
ARP сканирование локальной сети Linux
Иногда возникает необходимость узнать какие устройства подключены к локальной сети Linux. Это может понадобиться если вы хотите подключиться к одному из компьютеров и не помните его адрес или хотите убедиться в безопасности вашей сети и найти все скрытые устройства.
Самый надежный способ обнаружить все подключенные к сети Linux устройства, в том числе и скрытые — это ARP сканирование локальной сети. В этой статье мы рассмотрим как его выполнить и какие утилиты для этого нужны.
Как выполнить ARP сканирование локальной сети?
Как вы знаете, у всех компьютеров в сети есть IP адреса. Никогда не задавались вопросом, как сеть определяет, какому компьютеру принадлежит тот или иной адрес? Ведь сети бывают разные, проводные, беспроводные, ppp и т д. И в каждой из этих сетей аппаратный адрес компьютера имеет свой формат, зависящий от конструктивных особенностей сети, а IP адреса одни и те же.
Все очень просто. Для преобразования физических адресов, в ip адреса используется протокол ARP (Address Resolution Protocol), так и расшифровывается — протокол разрешения адресов. Когда компьютеру нужно обратиться к другому компьютеру в локальной сети, он отправляет специальный запрос в котором буквально спрашивает «У кого IP адрес 192.168.1.4», компьютер с таким ip адресом отправляет ответ «У меня, я 11:22:33:44:55», в ответе он передает свой физический адрес в этой сети. Дальше этот адрес заносится в специальную таблицу. но это уже тонкости реализации и они выходят за рамки нашей статьи. Сегодня мы поговорим как самому выполнить ARP сканирование локальной сети linux и найти все подключенные устройства.
Формат сообщений ARP — простой. Сообщение содержит либо запрос с IP адресом, либо ответ. Размер сообщения зависит от используемого сетевого протокола IPv4 или IPv6, типа оборудования сети и т д. Типы и размеры адресов определяются в заголовке сообщения. Заголовок завершается кодом сообщения. Код 1 для запроса и 2 для ответа.
Тело сообщения состоит из четырех адресов, аппаратные и сетевые адреса отправителя и получателя.
Если в вашей сети есть устройства, которые не отвечают на любые запросы, такие как Ping, HTTP, HTTPS и т д, то их можно найти послав ARP запрос. Это могут быть различные фаерволы и маршрутизаторы, в том числе маршрутизаторы компании Cisco, такое поведение заложено их протоколом. В таком случае ARP сканирование сети Linux будет единственным способом найти такое устройство.
Утилита ARP Scan
ARP Scan или еще называемый MAC Scanner — это очень быстрый инструмент для сканирования локальной сети Linux с помощью ARP. Утилита показывает все IPv4 адреса устройств в вашей сети. Поскольку ARP не использует маршрутизацию, то такой вид сканирования работает только в локальной сети.
ARP Scan находит все активные устройства, даже если у них включен брандмауэр. Компьютеры не могут скрыться от ARP также как они скрываются от ping. Но ARP сканирование не подходит для поиска компьютеров за пределами локальной сети, в таких ситуациях используйте ping сканирование.
Установка ARP Scan
Этот arp сканер сети доступен для следующих операционных систем:
- Debian, поставляется по умолчанию;
- Ubuntu, можно установить с репозитория Universe;
- Fedora, официальные репозитории начиная с версии 6;
- RedHat — доступна начиная с версии 5;
- Gentoo, официальные репозитории;
- ArchLinux — официальные репозитории Pacman.
Для установки в Ubuntu выполните:
Сканирование сети
ARP Scan позволяет находить активные компьютеры как в проводных сетях ethernet, так и в беспроводных Wifi сетях. Также есть возможность работать с Token Ring и FDDI. Не поддерживаются последовательные соединения PPP и SLIP, поскольку в них не используется ARP. Программу нужно запускать с правами суперпользователя.
Но сначала надо узнать сетевой интерфейс, который используется для подключения к сети. Для этого можно воспользоваться программой ip:
В данном случае, это enp24s0. Самый простой способ выполнить ARP сканирование и обнаружить все подключенные к локальной сети компьютеры — запустить программу со следующими параметрами:
sudo arp-scan —interface=enp24s0 —localnet
Здесь параметр —interface, задает интерфейс для сканирования, а —localnet, говорит, что нужно использовать все возможные IP адреса для текущей сети.
Первый параметр можно опустить, тогда программа будет искать все узлы для интерфейса с меньшим номером в системе. В нашем примере имя интерфейса — enp24s0.
Вместо параметра —localnet, можно указать маску сети:
sudo arp-scan —interface=enp24s0 10.0.1.0/24
ARP сканирование можно использовать, даже если у вашего интерфейса нет IP адреса. Тогда в качестве исходящего адреса будет использован 0.0.0.0. Правда, на такие запросы могут ответить не все системы. Тогда ARP сканер сети не так эффективен.
ARP спуфинг и ARP прокси
Поскольку в ARP нет поддержки аутентификации, ARP ответ на запрос может отправить любая машина, даже не та которой он был адресован. Иногда такое поведение используется в архитектуре сети — ARP прокси или маршрутизатор предает свой IP адрес вместо адреса запрашиваемой машины. Но также может использоваться для перехвата данных, отправляемых компьютером. Хакер может использовать ARP чтобы выполнить атаку «Человек посередине» или «Отказ в обслуживании» на других пользователей сети. Для защиты от таких атак существует специальное программное обеспечение.
Выводы
ARP Scan это простой, но очень мощный инструмент, с помощью которого можно выполнять сканирование ip адресов в локальной сети linux. Те, кто знаком с Cisco маршрутизаторами и коммутаторами, знают что найти такие устройства можно только с помощью ARP. Это полезный инструмент, возможно, когда-то вам он пригодится.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Список сетевых интерфейсов Linux
В операционной системе Linux не только жесткие и SSD диски представлены файлами в специальной файловой системе, но и сетевые интерфейсы. Существует несколько способов посмотреть список сетевых интерфейсов Linux, но самый простой из них — это просто посмотреть содержимое папки в файловой системе.
В этой небольшой статье мы рассмотрим все основные способы выполнить эту задачу в терминале или графическом интерфейсе.
Список сетевых интерфейсов Linux
Сетевые интерфейсы проводного интернета Ethernet обычно имеют имя, начинающиеся с символов enp, например, enp3s0. Такое именование используется только если ваш дистрибутив использует systemd, иначе будет применена старая система именования, при которой имена начинаются с символов eth, например eth0. Беспроводные сетевые интерфейсы, обычно называются wlp или wlx при использовании systemd, например, wlp3s0. Без использования systemd имя беспроводного интерфейса будет начинаться с wlan, например wlan0. Все остальные интерфейсы обычно виртуальные. Один из самых основных виртуальных интерфейсов — lo. Это локальный интерфейс, который позволяет программам обращаться к этому компьютеру. А теперь рассмотрим несколько способов посмотреть их список.
1. Файловая система
Все файлы устройств сетевых интерфейсов находятся в папке /sys/class/net. Поэтому вы можете посмотреть её содержимое:
2. Утилита ifconfig
Утилита ifconfig выводит не только список сетевых интерфейсов, но и информацию о них, такую как состояние, IP адрес, MAC адрес и другие параметры. Для отображения всех интерфейсов достаточно выполнить программу без параметров:
3. Утилита ip
Программа ifconfig устарела и ей на смену пришла утилита ip. Она объединяет в себе функции нескольких программ, например ifconfig, route, brctl и других. Посмотреть список устройств с помощью ip можно выполнив команду:
Здесь информации намного меньше, показывается только состояние устройства, MTU и ещё несколько параметров. Можно вывести информацию в более компактном виде, использовав опцию -br:
В таком случае все данные отображаются в одну строчку, выводится состояние, MAC адрес и ещё несколько опций.
4. Утилита nmcli
Посмотреть всю нужную информацию можно и с помощью консольной утилиты управлением брандмауэром — nmcli:
Здесь выводится подключение NetworkManager, связанное с конкретным устройством, а также его состояние.
5. Утилита netstat
Программа netstat тоже умеет показывать сетевые интерфейсы и статистику по переданным данным если ей передать опцию -i:
6. Файл /proc/net/dev
В файле /proc/net/dev тоже содержится список всех сетевых интерфейсов, а также статистика их использования:
Выводы
Теперь вы знаете как посмотреть сетевые интерфейсы в Linux, как видите, это очень просто сделать. Если у вас остались вопросы, спрашивайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Как найти все устройства, подключенные к локальной сети
Беспроводные сети всегда были желанной целью для начинающих «хакеров». Кроме того, беспроводные сети обычно более уязвимы к атакам, чем обычные проводные.
Я не предлагаю никого взламывать, а прошу задуматься, не подключился ли к вашей сети такой «новичок»? И дело даже не в том, что сосед может пользоваться оплаченным вами доступом в интернет, а в том, что вы можете понести ответственность за его действия.
Для того, чтобы избежать такой ситуации, нужно знать, как найти все устройства, подключенные к вашей беспроводной сети. Кроме того, это будет полезно не только с точки зрения безопасности. Например, знание ip-адреса других машин в сети позволит передать файлы на эту машину, даже не вставая со стула.
Ближе к делу, ниже приводится краткая инструкция, как найти все устройства, подключенные к сети.
Поиск устройств в сети с помощью командной строки Linux
Установите nmap
nmap — одна из самых популярных утилит для сканирования сети в Linux. Для того, чтобы установить nmap в Ubuntu (или других дистрибутивах Linux на базе Debian), выполните следующую команду:
Эта утилита должна быть доступна в официальных репозиториях всех остальных дистрибутивов.
Узнайте диапазон адресов сети
Теперь нам нужно узнать диапазон IP-адресов в сети. Это можно сделать с помощью команды ifconfig . В результатах нужно найти фрагмент, начинающийся с wl, если вы подключены к сети по Wi-fi или e, если используете кабельное соединение Ethernet.
user@user-notebook:~$ ifconfig wlp3s0: flags=4163 mtu 1500 inet 192.168.1.69 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::2847:8e90:ef28:3d12 prefixlen 64 scopeid 0x20 ether 3c:95:09:1a:fe:c3 txqueuelen 1000 (Ethernet) RX packets 10871731 bytes 15494573470 (15.4 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 5460677 bytes 596624992 (596.6 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Нужная нам информация находится во второй строке. Как видно, мой локальный IP-адрес 192.168.1.69, а маска подсети 255.255.255.0, что означает, что в локальной сети адреса будут отличаться от 192.168.1.0 до 192.168.1.255.
Просканируйте устройства, подключенные к сети
Для получения более точной информации лучше выполнять сканирование от имени администартора. Используйте команду nmap следующим образом:
irina@irina-X541UA:~$ sudo nmap -sn 192.168.1.0/24 [sudo] пароль для irina: Starting Nmap 7.60 ( https://nmap.org ) at 2018-11-21 22:32 MSK Nmap scan report for router.asus.com (192.168.1.1) Host is up (0.0020s latency). MAC Address: 18:31:BF:3E:AE:50 (Unknown) Nmap scan report for GoUbuntu-desktop (192.168.1.96) Host is up (0.089s latency). MAC Address: C0:25:E9:2A:06:47 (Tp-link Technologies) Nmap scan report for Redmi5Plus-Redmi (192.168.1.172) Host is up (0.19s latency). MAC Address: 20:47:DA:D9:B8:60 (Unknown) Nmap scan report for Redmi5A-Redmi (192.168.1.250) Host is up (0.13s latency). MAC Address: D8:63:75:B1:C6:57 (Unknown) Nmap scan report for Acer-X541UA (192.168.1.69) Host is up. Nmap done: 256 IP addresses (5 hosts up) scanned in 23.81 seconds
Как видно, в сети работает 5 устройств, одно — роутер, два компьютера и два телефона. Регулярно проверяйте вашу беспроводную сеть, это может обезопасить вас от многих проблем!