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

Publicado por Xerxes em 19/02/2026

[ Hits: 479 ]

 


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

Instalando Debian Sid (unstable)

Instalando o GNOME no Zenwalk

Ícone de mostrar área de trabalho no Plank

Realizar overclock no Miyoo Mini (plus ou normal)

Java Plugin no Fedora 17 (Acessar Banco do Brasil)

Leitura recomendada

Criação de usuários, alteração de senhas, exclusão de contas e gerenciamento de grupos no Linux e no Samba

Registrando um nick no IRC

Zabbix - Monitorar servidor Vmware ESXi

Erro de conexão na Internet cabeada do Manjaro [Resolvido]

Módulo de segurança do Banco do Brasil (Linux Mint)

  

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