Eu estava usando o Ubuntu 10.04.3 ou 11.04. Em qualquer uma dessas versões, os nomes de host como ec2-123-45-6-7.compute-1.amazonaws.com resolveriam para um privado na faixa 10.0.0.0/8. Após a atualização para 12.04, eles agora são resolvidos para endereços públicos. 184.1.2.3. Parece que é porque o Ubuntu agora usa o resolvconf. Parece também que estou executando o nome.
# more /run/resolvconf/interface/eth0.dhclient
domain ec2.internal
nameserver 172.16.0.23
# more /run/resolvconf/interface/lo.named
nameserver 127.0.0.1
/etc/resolv.conf é um link simbólico para /run/resolvconf/resolv.conf
more /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1
search ec2.internal
Se eu editar o arquivo resolv.conf para apontar para 172.16.0.23 em vez de 127.0.0.1, ele funcionará corretamente, mas após a reinicialização ele será alterado novamente.
Além disso, aqui está o conteúdo do /etc/resolvconf/resolv.conf.d
/etc/resolvconf/resolv.conf.d# more base
nameserver 172.16.0.23
domain ec2.internal
search ec2.internal
/etc/resolvconf/resolv.conf.d# more head
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
/etc/resolvconf/resolv.conf.d# more original
nameserver 172.16.0.23
domain ec2.internal
search ec2.internal
# more interface-order
# interface-order(5)
lo.inet*
lo.dnsmasq
lo.pdnsd
lo.!(pdns|pdns-recursor)
lo
tun*
tap*
hso*
em+([0-9])?(_+([0-9]))*
p+([0-9])p+([0-9])?(_+([0-9]))*
eth*
ath*
wlan*
ppp*
*
Os arquivos de configuração parecem estar configurados corretamente, mas ele continua voltando para 127.0.0.1. Eu acho que quero apontar para 127.0.0.1 para que ele possa usar o serviço local nomeado, o que parece ser uma coisa muito estranha para o Ubuntu instalar e usar por padrão.
O que estou fazendo de errado? Existe uma maneira 'preferida' de fazer isso, em vez de mexer com o resolvconf, devo obter o serviço nomeado local para resolver corretamente?