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

Publicado por Xerxes em 19/02/2026

[ Hits: 85 ]

 


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

Pequena pós-instalação Fedora 39

Instalação do Dspace no Debian

Acessar Banco do Brasil no Fedora (Instalação e configuração do Java Plugin)

CPU-X: Uma Alternativa ao CPU-Z para Linux

Como instalar Gnome completo no Fedora 17 Xfce Spin

Leitura recomendada

Acessando desktop do Debian 8 (Jessie) remotamente através do TightVNC

Acertando o relógio do sistema via http e DNS

Systemd - Failed to start Squid caching proxy

Acesso remoto com IP dinâmico, usando curl, crontab e FreeDNS

Evitando login simultâneo FreeRADIUS MySQL PPPoE

  

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