O Dnsmasq deve fazer exatamente o que você quer e lê seu arquivo local de hosts.
Eu tenho uma máquina virtual Ubuntu 14.04 Server na qual eu gostaria de resolver um nome simbólico para um endereço IP localmente (ou seja, a própria máquina deveria fornecer o mapeamento).
O mapeamento é o seguinte:
mon0 --> 127.0.0.1
Já tenho esta entrada em /etc/hosts :
# file /etc/hosts
[other entries]
127.0.1.1 mon0
para que eu possa ping mon0 corretamente.
O que não consigo fazer é host mon0 :
$ host mon0
Host mon0 not found: 3(NXDOMAIN)
De esta resposta Eu entendo que host está usando libresolv em vez de gethostbyname (é por isso ping works e host não).
Gostaria de tornar o host mon0 funcionando corretamente.
O que é uma solução simples para conseguir isso? Como tudo é conhecido, estático e local, espero que não seja necessário executar um servidor de nomes:)!
O Dnsmasq deve fazer exatamente o que você quer e lê seu arquivo local de hosts.