Estou criando e destruindo máquinas virtuais o tempo todo, a fim de testar vários serviços ou aplicativos, e por isso gostaria de usar o avahi para conectar-se a eles por seus nomes, para que eu não precise usar espaço valioso na minha cabeça para endereços IP dinâmicos que provavelmente serão eliminados amanhã de qualquer maneira. Isso nem sempre parece funcionar.
Atualmente, tenho duas máquinas virtuais CentOS 6.3, ambas executando o avahi-daemon, mas uma delas não pode ser acessada pelo nome.
A máquina com problemas:
error@underground ~ $ ssh nagios.local
ssh: Could not resolve hostname nagios.local: Name or service not known
A máquina de trabalho:
error@underground ~ $ ssh puppet.local
[email protected]'s password:
Ainda consigo ver na rede: (underground é a máquina host da qual estou trabalhando)
error@underground ~ $ avahi-browse -at
+ br0 IPv4 puppet SSH Remote Terminal local
+ br0 IPv4 nagios SSH Remote Terminal local
+ br0 IPv4 puppet [52:54:00:d0:31:c7] Workstation local
+ br0 IPv4 nagios [52:54:00:93:ec:af] Workstation local
+ br0 IPv4 underground [6c:62:6d:d1:df:ad] Workstation local
+ virbr0 IPv4 underground [52:54:00:8e:60:30] Workstation local
Com base no feedback, a saída de getent hosts
:
error@underground ~ $ getent hosts nagios.local
error@underground ~ $ getent hosts puppet.local
192.168.12.146 puppet.local
No nagios.local, a máquina virtual inacessível, o avahi-daemon (obviamente) está instalado e em execução, e eu tenho o orifício apropriado no firewall:
pkts bytes target prot opt in out source destination
74 15950 ACCEPT udp -- * * 0.0.0.0/0 224.0.0.251 state NEW udp dpt:5353
O syslog em nagios.local não me dá nenhuma pista do que pode estar acontecendo:
Jul 18 04:24:18 nagios avahi-daemon[1384]: Leaving mDNS multicast group on interface eth0.IPv4 with address 192.168.12.132.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Found user 'avahi' (UID 70) and group 'avahi' (GID 70).
Jul 18 04:24:18 nagios avahi-daemon[1476]: Successfully dropped root privileges.
Jul 18 04:24:18 nagios avahi-daemon[1476]: avahi-daemon 0.6.25 starting up.
Jul 18 04:24:18 nagios avahi-daemon[1476]: WARNING: No NSS support for mDNS detected, consider installing nss-mdns!
Jul 18 04:24:18 nagios avahi-daemon[1476]: Successfully called chroot().
Jul 18 04:24:18 nagios avahi-daemon[1476]: Successfully dropped remaining capabilities.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Loading service file /services/ssh.service.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Joining mDNS multicast group on interface eth0.IPv4 with address 192.168.12.132.
Jul 18 04:24:18 nagios avahi-daemon[1476]: New relevant interface eth0.IPv4 for mDNS.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Network interface enumeration completed.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Registering new address record for 2001:db8:1600:80bf:5054:ff:fe93:ecaf on eth0.*.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Registering new address record for 192.168.12.132 on eth0.IPv4.
Jul 18 04:24:18 nagios avahi-daemon[1476]: Registering HINFO record with values 'X86_64'/'LINUX'.
Jul 18 04:24:19 nagios avahi-daemon[1476]: Server startup complete. Host name is nagios.local. Local service cookie is 3129794608.
Jul 18 04:24:19 nagios avahi-daemon[1476]: Service "nagios" (/services/ssh.service) successfully established.
A principal diferença entre essas duas instalações é que o puppet.local foi instalado como uma instalação "Desktop", enquanto o nagios.local foi instalado como uma instalação "Minimal" e teve os vários pacotes relacionados ao avahi instalados posteriormente.
Não entendo por que não consigo resolver o nome dessa máquina. Que coisa completamente óbvia senti falta?
Atualização: Com base na recomendação do mgorven, verifiquei novamente o host e descobri que ele não tinha nss-mdns
instalado. Então eu instalei, e agora o problema está exatamente invertido! Como visto do host:
error@underground ~ $ getent hosts puppet.local
error@underground ~ $ getent hosts nagios.local
192.168.12.132 nagios.local