Networking

dnsmasq 將不存在的子域指向本地 IP

  • July 19, 2016

有一個特定的遠端子域mymachine.home.com,其 IP 一直在更改,我需要更新 DNSMasq 以使其正確解析。

但我測試xxxxxx.home.com了不存在的 ping,它似乎都想指向我的 NginX 反向代理。(我的很多條目都指向那裡。)

如何阻止 DNSMasq 將不存在的子域解析為本地 IP?(它總是相同的IP)

或者

如何告訴 DNSMasq 始終為特定條目使用外部 DNS?

這是我的安裝配置。

#DNS_Config
#Dont use external file for custom dns
no-hosts
#Use this file for DNS nameservers (contains googles DNS)
resolv-file=/etc/resolv.dnsmasq.conf

##CUSTOM_DNS
#PING home.com = 192.168.1.210
address=/home.com/192.168.1.210
##DHCP##

##DHCP_Config
#Listen only on eth0
interface=eth0
#DHCP Range 192.168.1.2-127 (12hr lease time)
dhcp-range=192.168.1.2,192.168.1.127,12h
#RESERVE DNSMasq SERVER IP
dhcp-host=00:0c:29:c2:56:bf,192.168.1.149
#Change DEFAULT GATEWAY (Default is same IP as DNSMasq Server)
dhcp-option=option:router,192.168.1.1


##STATIC_DHCP
#STATIC IP to 2 MAC Address that WILL NOT be used simultaneously [IE: Laptop with WiFi + LAN]
dhcp-host=00:00:00:00:00:00,00:00:00:00:00:00,192.168.1.210
#Assign STATIC IP by MAC
dhcp-host=00:00:00:00:00:00,192.168.1.211

您為不存在的域獲得虛假 IP 地址的最常見原因是您的 ISP 將否定答案轉換為其廣告伺服器的地址,以便在您輸入錯誤的網站地址時為您提供更多廣告。這絕對是一種陰暗的做法,但不幸的是,一些 ISP 會這樣做。

您通常可以通過使用不同的上游 DNS 伺服器來解決這個問題,例如OpenDNS ( server=208.67.222.222and server=208.67.220.220) 或 Google ( server=8.8.8.8and server=8.8.4.4)。如果您需要 ISP 的伺服器來提供他們自己的客戶服務,您只能在特定域 ( server=/myisp.com/203.0.113.1) 中使用它們。

話雖這麼說,在您的情況下,問題在於您的配置沒有按照您的意願執行。

如何阻止 DNSMasq 將不存在的子域解析為本地 IP。

通過不聲明域存在。Dnsmasq 不會用 IP 地址代替不存在的域。

如何告訴 DNSMasq 始終將外部 DNS 用於特定條目。

通過不聲明該主機名的值或包含該主機名的萬用字元。

您的配置中的問題是該行

address=/home.com/192.168.1.210

這是一個萬用字元:它聲明這是該域下所有主機名192.168.1.210的地址。home.com你不想要這個萬用字元,所以刪除它。

相反,通過在. home.com_ 刪除這一行——你想聲明特定的主機,所以你需要它!或者,如果您不想使用,請保留此行並添加一行指向用 . 聲明的不同文件。或者,如果您想將其全部保留在內部,請將該行替換為home.com``/etc/hosts``no-hosts``/etc/hosts``addn-hosts=/path/to/hosts-file``dnsmasq.conf``host-record=home.com,192.168.1.210

如果你想有一個帶有異常的萬用字元(返回 192.168.1.210 為xxx.home.com除 之外的所有mymachine.home.com,或者總是查詢上游伺服器並僅用 192.168.1.210 代替否定答案),我不認為 dnsmasq 可以做到這一點。

引用自:https://unix.stackexchange.com/questions/295772