MacOSX Associar um nome a um endereço IP

Dezembro 2016



Problemática


[EDIT] : isto não é válido até o MacOSX 10.4, PAS para MacOSX 10.5 (Leopard)

MacOSX é um sistema BSD, a primeira coisa a qual se pensa, é "Fácil, eu vou modificar meu arquivo /etc/hosts!"

É um bom reflexo, mas infelizmente, por padrão no os X, este arquivo não é jamais considerado.

A resolução de nome se efetua via o gerenciador NetINFO. Existe diversos métodos para fazer com que o arquivo /etc/hosts seja considerado depois ou antes do gerenciador NetINFO, mas considerando que NetINFO funcione bem, melhor utilizá-lo, mesmo porque isto simplificará a resolução de problemas quando todas as informações estão no mesmo lugar!

Método


Eis o método em modo comando que não é tão complicado assim e que tem o mérito de poder ser efetuada sem ter, necessariamente, um acesso físico a máquina (via SSH).

Todo se passa a partir de um terminal bash (/Aplicações/Utilitários/Terminal)

É preciso recuperar a configuração atual:
$ mkdir -p ~/hosts  
$ cd ~/hosts  
$ nidump hosts / > hosts.conf.ori
Copiar o arquivo para conservar a configuração original (.ori)
$ cp hosts.conf.ori hosts.conf


Ali, fazer as modificações desejadas no arquivo hosts.conf .
É fortemente aconselhado adicionar uma linha e não modificar as linhas existentes a não ser que você saiba o que está fazendo!
Depois da modificação, é preciso recarregar o arquivo no NetINFO (enquanto usuário root, então via sudo)
$ sudo niload hosts . < hosts.conf


Se tudo se passar bem, sem erros (senão é preciso corrigir o erro no arquivo hosts.conf, ou refazer a manipulação com o arquivo.ori), relançar o serviço de busca de nome:
$  sudo killall -HUP lookupd


Agora você só tem que testar !

Um pequeno exemplo


Associar www.ccm.net à www.commentcamarche.net (194.169.240.130)
$ ping www.ccm.net  
ping: cannot resolve www.ccm.net: Unknown host  
$ mkdir -p ~/hosts  
$ cd ~/hosts  
$ nidump hosts / > hosts.conf.ori  
$ cp hosts.conf.ori hosts.conf      
$ cat hosts.conf  
::1     localhost  
255.255.255.255 broadcasthost  
127.0.0.1       java.localhost  
127.0.0.1       php.localhost  
127.0.0.1       mysql.localhost  
$ echo "194.169.240.130 www.ccm.net" >> hosts.conf  
$ cat hosts.conf  
::1     localhost  
255.255.255.255 broadcasthost  
127.0.0.1       java.localhost  
127.0.0.1       php.localhost  
127.0.0.1       mysql.localhost  
194.169.240.130 www.ccm.net  
$ sudo niload hosts . < hosts.conf  
$ sudo killall -HUP lookupd  
$ ping -c4 www.ccm.net  
PING www.ccm.net (194.169.240.130): 56 data bytes  
64 bytes from 194.169.240.130: icmp_seq=0 ttl=56 time=29.936 ms  
64 bytes from 194.169.240.130: icmp_seq=1 ttl=56 time=30.622 ms  
64 bytes from 194.169.240.130: icmp_seq=2 ttl=56 time=30.053 ms  
64 bytes from 194.169.240.130: icmp_seq=3 ttl=56 time=30.566 ms  

--- www.ccm.net ping statistics ---  
4 packets transmitted, 4 packets received, 0% packet loss  
round-trip min/avg/max/stddev = 29.936/30.294/30.622/0.303 ms


pronto, para suprimir esta definição, não basta buscar via niload o arquivo hosts.conf.ori. Com efeito, niload funciona em adição

Eis como utilizar o comando niutil para suprimir a entrada www.ccm.net
$ sudo niutil -destroy . /machines/www.ccm.net


Não se esqueça de carregar lookupd depois de cada modificação! (sudo killall -HUP lookupd)

Tradução feita por Ana spadari

Veja também

Artigo original publicado por . Tradução feita por ninha25. Última modificação: 6 de outubro de 2011 às 10:42 por ninha25.
Este documento, intitulado ' MacOSX Associar um nome a um endereço IP', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.