Eu tenho um servidor search example.com
em resolv.conf e funciona corretamente para pesquisas de DNS. Ou seja, se eu fizer ping host
e host1.example.com
estiver no DNS, ele é encontrado.
Mas se host1.example.com
estiver em /etc/hosts em vez de DNS, não foi encontrado. Presumo que a entrada em resolv.conf se aplica apenas ao DNS.
Existe uma maneira de criar um caminho de pesquisa de domínio que funcione para /etc/hosts entradas e, se não, por que não?
O método simples e geralmente usado é incluir ambos
host1
ehost1.example.com
para/etc/hosts
.No entanto, você pode atingir seu objetivo usando
dnsmasq
.dnsmasq
irá ler seu arquivo hosts (configurável, este é o padrão), você só precisa definir seu ns original como upstream em dnsmasq elocalhost
como ns inresolv.conf
e você pode manter sua opção de pesquisa. Você obterá o benefício adicional do serviço de nomes em cache local.Esta é a configuração mais básica (provavelmente do servidor), se você estiver usando o resolvconf como o ns manager, terá que configurá-lo.
Vale a pena ter em mente, se você fizer alterações em
/etc/hosts
você deve reiniciardnsmasq
.