Linux поиск сетевых устройств

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 будет единственным способом найти такое устройство.

Читайте также:  Running linux on vmware

Утилита 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 чтобы выполнить атаку «Человек посередине» или «Отказ в обслуживании» на других пользователей сети. Для защиты от таких атак существует специальное программное обеспечение.

Читайте также:  Вызов терминала astra linux

Выводы

ARP Scan это простой, но очень мощный инструмент, с помощью которого можно выполнять сканирование ip адресов в локальной сети linux. Те, кто знаком с Cisco маршрутизаторами и коммутаторами, знают что найти такие устройства можно только с помощью ARP. Это полезный инструмент, возможно, когда-то вам он пригодится.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

How to Find What Devices are Connected to Network in Linux

Wireless networks have always been a desirable target for wannabe hackers. Wireless networks are also more vulnerable to hacking than the wired ones.

Forget hacking, do you ever wonder that someone might be leeching off your hard paid wifi network? Maybe a neighbor who once connected to your network and now uses it as his/her own?

It would be nice to check what devices are on your network. This way you can also see if there are some unwanted devices on your network.

So you might end up thinking, “how do I find what devices are connected to my network”?

I’ll show you how to do that in this quick tutorial. Not only it’s a good idea from security point of view, it is also a good little exercise if you have interest in networking.

We will use both, command line and GUI, way for finding out what devices are connected to your local network in Linux. The process is very simple and easy to use even for beginners.

Before you see any of that, let me tell you that your router should also be able to show all the connected devices. Check your gateway ip address and then type it in a browser. This is usually the browser interface for your router. Enter the username and password and you can see all the details and devices connected to the router.

If you don’t remember the router password or you don’t want to go that way, here’s what else you could do.

A. Using Linux command to find devices on the network

Step 1: Install nmap

nmap is one of the most popular network scanning tool in Linux. Use the following command to install nmap in Ubuntu based Linux distributions:

You can easily install it in other Linux distributions as well. It should be in the official software repository.

Step 2: Get IP range of the network

Now we need to know the IP address range of the network. Use the ifconfig command to find the IP address in Linux. Look for wlan0 if you are using wifi or eth0 if you are using Ethernet.

Читайте также:  Linux разбить жесткие диски

[email protected]:~$ ifconfig
wlan0 Link encap:Ethernet HWaddr 70:f1:a1:c2:f2:e9
inet addr:192.168.1.91 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::73f1:a1ef:fec2:f2e8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2135051 errors:0 dropped:0 overruns:0 frame:0
TX packets:2013773 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1434994913 (1.4 GB) TX bytes:636207445 (636.2 MB)

The important things are highlighted in bold. As you see my IP is 192.168.1.91 and the subnet mask is 255.255.255.0 which means that the ip address range on my network varies from 192.168.1.0 to 192.168.1.255.

You may also use ip a command to know your IP address in Ubuntu and other Linux distributions.

At the same time, I’ll recommend you to read about basic Linux networking commands for more information.

Step 3: Scan to find devices connected to your network

It is advisable to use root privileges while scanning the network for more accurate information. Use the nmap command in the following way:

[email protected]:~$ sudo nmap -sn 192.168.1.0/24
Starting Nmap 5.21 ( http://nmap.org ) at 2012-09-01 21:59 CEST

Nmap scan report for neufbox (192.168.1.1)
Host is up (0.012s latency).
MAC Address: E0:A1:D5:72:5A:5C (Unknown)
Nmap scan report for takshak-bambi (192.168.1.91)
Host is up.
Nmap scan report for android-95b23f67te05e1c8 (192.168.1.93)
Host is up (0.36s latency).

As you can see that there are three devices connected to my network. The router itself, my laptop and my Galaxy S2.

If you are wondering about why I used 24 in the above command, you should know a little about CIDR notation. It basically means that the scanning will be from 192.168.1.0 to 192.168.1.255.

B. Using GUI tool to find devices connected to network

When I first wrote this article, there was no GUI tool for this task. Then I came across a new network monitoring tool being developed for elementary OS. I suggested including a periodic device scan feature in this tool and the developer readily agreed.

So, now we have a GUI tool that does this task. It’s called Nutty (last updated in 2019). Just install this app and run it. It will periodically scan for new devices on the network and will notify you if there is a new device.

Monitor network devices with Nutty

This application is only available for elementary OS, Ubuntu and hopefully, other Ubuntu based Linux distributions. You can find installation instructions on this detailed article on Nutty.

Oh, you can also log in to your router and see the devices connected to your devices. I let you figure the best way to find devices connected to your network.

Источник

Оцените статью
Adblock
detector