Formas de pagamento Abuse

Pesquisa ARP da rede local Linux

08.06.2024, 15:00

Muitas vezes é necessário saber quais os dispositivos que estão ligados à sua rede. É o caso se quiser ligar a um dos seus PCs e não tiver uma ideia clara do seu endereço, ou se quiser apenas certificar-se de que a sua rede é segura ou não, ou se quiser encontrar todos os dispositivos ocultos. Pode encontrar todos os dispositivos ligados, incluindo os ocultos, utilizando a pesquisa ARP.

O que é o ARP

O ARP (Protocolo de Resolução de Endereços) é um protocolo utilizado em redes informáticas para a comunicação entre nós da rede. É utilizado para mapear os endereços IP dos dispositivos de rede para os seus endereços MAC físicos. Quando um nó de uma rede pretende enviar dados para outro nó, utiliza o ARP para determinar o endereço MAC do destinatário com base no seu endereço IP.

No Linux, a tabela ARP é armazenada na RAM e contém correspondências entre os endereços IP e os endereços MAC de outros dispositivos na rede. Pode ver o conteúdo da tabela ARP em Linux utilizando o comando arp -a. O Linux fornece ferramentas para executar operações ARP, como adicionar entradas ARP estáticas ou limpar a cache ARP. O ARP é um elemento importante na operação de redes TCP/IP e desempenha um papel crucial na comunicação entre dispositivos numa rede local.

Verificação com ARP

Todas as redes de computadores têm um endereço IP - toda a gente sabe isso. Já alguma vez se perguntou a que computador é atribuído um endereço específico? Sabe-se que existem diferentes redes - com fios, sem fios, ppp. Em cada rede, o endereço de hardware da máquina de computação tem um formato diferente, que depende das caraterísticas de conceção da rede local.

Vamos explicar, tudo é de facto muito simples. Para converter o endereço físico em IP é fornecido o ARP, ou seja, é um protocolo de resolução de endereços. Quando um computador entra na rede, faz um pedido aos outros PCs e coloca a questão - "Quem tem o endereço IP XXX.XXX.X.X.X". A sua resposta não é ignorada, mas tem um aspeto um pouco diferente - "Eu tenho, o meu endereço é xx:xx:xx:xx:xx:xx:xx:xx". Ou seja, um endereço físico é enviado em resposta. Este endereço é introduzido numa tabela especial.

Deve dizer-se que o formato das mensagens ARP é extremamente simples. A mensagem esconde ou um pedido com um endereço IP ou uma resposta. O tamanho da mensagem depende do protocolo - IPv4 ou IPv6 - e do tipo de equipamento de rede. O cabeçalho da mensagem especifica os tipos e as dimensões destas mensagens. O cabeçalho termina com um código de mensagem. Para um pedido, o código é 1, e para uma resposta, o código é 2. O corpo da mensagem contém os quatro endereços, endereços de hardware e de rede, pertencentes ao emissor e ao recetor.

Instalar o utilitário

O utilitário ARP Scan, também chamado de MAC Scanner, é uma ferramenta útil e funcional para analisar uma rede local Linux usando ARP. O programa mostra os endereços Pv4 dos dispositivos de rede. A peculiaridade do ARP é que não envolve encaminhamento. Este tipo de análise é adequado apenas para redes locais. O programa detecta dispositivos activos, os computadores não se podem esconder do ARP. Se for necessário detetar um computador fora da rede local, é utilizado o rastreio por ping.

O Network Scanner está disponível para os seguintes sistemas operativos:

  1. Debian;
  2. Ubuntu;
  3. Fedora;
  4. RedHat;
  5. Gentoo;
  6. ArchLinux.

Para instalar, vamos executar:

$ sudo apt install arp-scan

Verificação

Com a ajuda do programa, será possível encontrar todos os computadores activos tanto em redes ethernet com fios como em redes Wifi sem fios. As ligações PPP e SLIP não são fornecidas, uma vez que não existe ARP nas mesmas. Deve trabalhar com o utilitário com direitos de superutilizador.

No início, descobrimos a interface de rede utilizando o programa ip:

$ ip addr list

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

Vemos aqui enp24s0. A forma mais fácil de o fazer com o ARP, analisando e saindo de todos os computadores ligados à rede, é executar o programa definindo os parâmetros:

$ sudo arp-scan --interface=enp24s0 --localnet

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

Vemos o parâmetro --interface, que especifica a interface de scanning, e --localnet, que indica a aplicação de todos os endereços IP possíveis para a rede atual.

Se omitirmos o primeiro parâmetro, o programa procurará todos os nós para a interface com o número mais baixo no sistema. No nosso caso é enp24s0.

Em vez do parâmetro --localnet, pode especificar a máscara de rede:

$ sudo arp-scan --interface=enp24s0 10.0.1.0/24

O ARP também é adequado se a interface não tiver o seu próprio endereço IP. Neste caso, o endereço de saída é 0.0.0.0.0.0. Mas nem todos os sistemas responderão a este pedido.

Porque é que o ARP não funciona

Existem várias razões pelas quais o ARP pode não funcionar corretamente numa rede. Alguns dos problemas mais comuns incluem:

  1. Conflito de endereços IP: Se dois dispositivos na rede estiverem a utilizar o mesmo endereço IP, isso pode causar um conflito de ARP.
  2. Configuração de rede incorrecta: Definições incorrectas de endereçamento IP, sub-redes ou gateway podem fazer com que o ARP falhe.
  3. Problemas de hardware de rede: Comutadores, routers ou placas de rede com defeito podem causar o mau funcionamento do ARP.
  4. As definições de segurança ou de filtragem nos dispositivos de rede podem bloquear os pacotes ARP.
  5. Os atacantes podem utilizar ataques como ARP poisoning ou ARP flooding, que também podem causar problemas de ARP na rede.

Para diagnosticar e resolver problemas de ARP, recomenda-se que verifique as definições de hardware da rede, analise a configuração do endereçamento IP e utilize ferramentas para monitorizar e analisar o tráfego da rede.