terça-feira, 21 de junho de 2011

Ping de Linux para Windows por nome

# ping maquina01
ping: unknown host maquina01

No Linux não vem habilitado por padrão para dar ping em uma máquina Windows pelo nome dela, somente pelo IP. É necessário uma pequena intervenção para isso.

Instale o winbind (Debian Like) ou o samba-common (RedHat Like).

apt-get install winbind -y

ou
yum install samba-common -y

Abra o arquivo /etc/nsswitch.conf e procure pela seguinte linha


hosts: files dns

ou 
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

Adicione a palavra wins no local indicado


hosts: files wins dns

ou
hosts: files wins mdns4_minimal [NOTFOUND=return] dns mdns4

OBS: Não é necessário adicionar mais nada além da palavra
wins. O meu estava igual ao primeiro exemplo e fui tentar deixar igual ao segundo (com o mdns4_minimal, etc). Resultado: não consegui baixar pacotes pelo yum. Então se o seu está funcionando, adicione apenas a palavra no local certo e pronto.

Salve o arquivo e tente dar ping em alguma máquina Windows pelo nome.

Alguns sites informam que é necessário iniciar o serviço winbind, porém aqui não foi necessário. Funcionou com ele desativado mesmo.


Agora é possível pingar uma máquina Windows pelo nome dela ao invés de somente por IP.

# ping maquina01

PING maquina01 (10.17.153.94) 56(84) bytes of data.
64 bytes from maquina01 (10.17.153.94): icmp_seq=1 ttl=128 time=1.74 ms
64 bytes from maquina01 (10.17.153.94): icmp_seq=2 ttl=128 time=1.52 ms
64 bytes from maquina01 (10.17.153.94): icmp_seq=3 ttl=128 time=1.67 ms