Como acessar máquinas na rede local pelo nome (Hostname) usando Avahi e mDNS

Publicado por Xerxes em 19/02/2026

[ Hits: 89 ]

 


Como acessar máquinas na rede local pelo nome (Hostname) usando Avahi e mDNS



Esta dica mostra como usar o Avahi (mDNS) para resolver nomes de máquinas na sua LAN, permitindo que você acesse seus computadores usando apenas nome-da-maquina.local (ou sem o .local).

O Problema

Em redes domésticas, geralmente não temos um servidor DNS local para traduzir o nome do computador (hostname) para o seu endereço IP. O resultado é que você consegue conectar usando ssh usuario@192.168.1.50, mas falha ao tentar ssh usuario@meu-pc.

Buscando ajuda com a Gemini, vi que a solução para isso é o protocolo mDNS (Multicast DNS), implementado no Linux pelo Avahi.

Passo 1: Garantir que o Avahi está rodando

A maioria das distribuições modernas já traz o avahi-daemon instalado. Certifique-se de que ele está ativo nas duas máquinas que vão se comunicar:

sudo systemctl enable --now avahi-daemon

Passo 2: Instalar o nss-mdns

Mesmo com o Avahi rodando, o sistema operacional pode não saber que deve usá-lo para procurar nomes. Para criar essa ponte, você precisa do plugin nss-mdns.

Instale o pacote na sua distribuição.
  • No Gentoo: sudo emerge -av sys-auth/nss-mdns
  • No Debian/Ubuntu/Mint: sudo apt install libnss-mdns
  • No Arch Linux: sudo pacman -S nss-mdns
  • No Fedora: sudo dnf install nss-mdns

Passo 3: Configurar o nsswitch.conf

Agora precisamos dizer ao sistema para usar o plugin que acabamos de instalar quando for procurar por hosts.

1. Abra o arquivo de configuração de nomes:

sudo nano /etc/nsswitch.conf

2. Procure a linha que começa com hosts:. Ela geralmente se parece com hosts: files dns.

3. Altere essa linha para incluir o mDNS, adicionando mdns4_minimal [NOTFOUND=return] logo após files.

A linha deve ficar exatamente assim (ou bem parecida):

hosts: files mdns4_minimal [NOTFOUND=return] dns

(Nota: O número "4" força a busca via IPv4, o que resolve problemas de lentidão ou falha em redes que não usam IPv6).

Passo 4: Reiniciar o serviço e testar

Reinicie o serviço do Avahi para aplicar todas as mudanças:

sudo systemctl restart avahi-daemon

Pronto! Agora, de um computador para o outro, basta usar o nome da máquina, pode até adicionar o sufixo .local ao nome da máquina. Mas aqui não foi necessário.

Experimente:

ping nome-do-outro-pc.local (ou sem .local)

ssh usuario@nome-do-outro-pc.local (ou sem .local)

Outras dicas deste autor

Quiz para escolher distro

Como Baixar Torrent em Redes que Bloqueiam Torrent

Beeps irritantes no Debian 8 [Resolvido]

[Resolvido] GZDoom sem som no Ubuntu/POP OS

Teclas de função no Xfce para comandar o volume

Leitura recomendada

Laptop sem wi-fi no roteador SAGEMCOM da Vivo Fibra [Resolvido]

Monitorando o consumo de containers Docker

Como fazer a conversão binária e aplicar as restrições no Linux

Como escanear portas de um servidor através da ferramenta Nmap e como alterar a porta do SSH.

Instalação do Packet Tracer 8 no openSUSE Tumbleweed

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts