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

Publicado por Xerxes em 19/02/2026

[ Hits: 86 ]

 


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

Tema GTK em aplicativos KDE no LXDE

Como usar seu Iphone como controle sem fio para jogar no Linux

Características gerais do Zenwalk

Jogue Bejeweled 3 no Ubuntu 12.04

Slackware + i3-gaps + alienbob

Leitura recomendada

Adicionar/Excluir Usuários no Roteador Technicolor (TD5136v2) via SSH

Como fixar IP estátco no Debian 8 com o serviço Connman

Como quebrar senha usando john the ripper

Instalação do Cisco Packet Tracer 7.3 no Ubuntu 18.04, Ubuntu 20.04 ou Mint 19.x

Como Instalar o Debian Remotamente via SSH [Vídeo]

  

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