您可以使用server=
指令来做到这一点,例如
server=/ajax.googleapis.com/8.8.8.8
会类似地向Google公共DNS服务器查询ajax.googleapis.com域。
server=/amazonaws.com/209.244.0.3
会向Level3的公共DNS服务器查询amazonaws.com域。
您可以将多个域组合在一起
server=/co.uk/com/8.8.4.4
将.co.uk和.com域发送到8.8.4.4的DNS服务器
您也可以有多个server=
指令
-S,-server = [/ [<域>] / [域/]] [<ipaddr> [#<端口>] [@ <源> [#<端口>]]]]
直接指定上游服务器的IP地址。设置此标志不会抑制对/etc/resolv.conf的读取,请使用-R做到这一点。如果给出一个或多个可选域,则该服务器仅用于那些域,并且仅使用指定的服务器查询它们。这是供私人名称服务器使用的:如果您的网络上有一个名称服务器,其名称格式为xxx.internal.thekelleys.org.uk,地址为192.168.1.1,则给出标志-S /internal.thekelleys.org.uk/ 192.168.1.1会将对内部计算机的所有查询发送到该名称服务器,其他所有内容将发送到/etc/resolv.conf中的服务器。一个空的域规范,//的特殊含义是“仅非限定名称”,即名称中没有任何点。可以使用#字符将非标准端口指定为IP地址的一部分。
还允许使用-S标志,该标志提供域但不提供IP地址;这告诉dnsmasq一个域是本地域,它可以回答来自/ etc / hosts或DHCP的查询,但永远不要将该域上的查询转发给任何上游服务器。本地是服务器的同义词,在这种情况下,服务器可以使配置文件更清晰。
@字符后的可选第二个IP地址告诉dnsmasq如何设置查询到此名称服务器的源地址。它应该是运行dnsmasq的计算机的地址,否则将记录该服务器行,然后将其忽略。对于指定了源地址的任何服务器,都将忽略query-port标志,但是可以直接将端口指定为源地址的一部分。
server
行:无论他想解决的地址是什么(127.0.0.1),他都可以用address
行添加它们;其他情况,DNSMasq将查询server
。可以肯定,这就是我的设置方式。