O motivo mais comum pelo qual você obtém um endereço IP falso para um domínio inexistente é que seu ISP converte respostas negativas no endereço de seus servidores de anúncios, para exibir mais anúncios quando você digita erros no endereço de um site. Esta é definitivamente uma prática obscura, mas infelizmente alguns ISPs fazem isso.
Você pode geralmente contrabalançar isso usando diferentes servidores DNS upstream, como OpenDNS ( server=208.67.222.222
e server=208.67.220.220
) ou Google ( server=8.8.8.8
e server=8.8.4.4
). Se você precisar dos servidores do seu provedor para seus próprios serviços ao cliente, poderá usá-los somente em um domínio específico ( server=/myisp.com/203.0.113.1
).
Dito isto, no seu caso, o problema é que sua configuração não faz o que você quer fazer.
How can I stop DNSMasq from resolving non-existent subdomains to a local IP.
Por não declarar o domínio como existente. O Dnsmasq não substitui um endereço IP por domínios inexistentes.
How can I tell DNSMasq to always use external DNS for a specific entry.
Por não declarar um valor para esse nome de host ou um caractere curinga que inclua esse nome de host.
O problema na sua configuração é a linha
address=/home.com/192.168.1.210
Este é um curinga: declara que 192.168.1.210
é o endereço de home.com
e todos os nomes de host nesse domínio. Você não quer este curinga, então remova-o.
Em vez disso, declare home.com
e qualquer domínio individual de home.com
como nomes de host , não como curingas, listando-os em /etc/hosts
. Remova a linha no-hosts
- você quer declarar hosts específicos, então você precisa disso! Ou, se você preferir não usar /etc/hosts
, mantenha esta linha e adicione uma linha apontando para um arquivo diferente declarado com addn-hosts=/path/to/hosts-file
. Ou, se você quiser manter tudo dentro de dnsmasq.conf
, substitua essa linha por host-record=home.com,192.168.1.210
Se você deseja ter um caractere curinga com exceções (retorne 192.168.1.210 para todo xxx.home.com
, exceto mymachine.home.com
, ou sempre consulte os servidores upstream e substitua 192.168.1.210 somente por respostas negativas), não acho O dnsmasq pode fazer isso.