有可能configurationDNSMasq,使其只返回一个固定的IP地址,而不是其子域的请求。 也就是说,我希望它在parsingexample.com时返回一个固定IP,而不是a.example.com , b.example.com等。
host-record=example.com,1.2.3.4
dnsmasq手册页说:
–hostlogging= <名称> [,<名称> ….] [<IPv4的地址>],[<IPv6的地址>]
将A,AAAA和PTRlogging添加到DNS。 这会将一个或多个名称添加到具有关联IPv4(A)和IPv6(AAAA)logging的DNS。 名称可能出现在多个主机logging中 ,因此被分配多个地址。 只有第一个地址创build一个将地址链接到名字的PTRlogging。 这与读取主机文件的规则相同。 主机logging选项被认为是在主机文件之前被读取的,所以如果在主机文件中出现,那么出现的名称也会抑制PTRlogging的创build。 与主机文件不同,即使展开主机有效,名称也不会展开。 短名和长名可能出现在相同的主机logging中 ,例如。 –hostlogging=笔记本电脑,laptop.thekelleys.org,192.168.0.1,1234 :: 100
只需在运行DNSMasq的服务器上的hosts文件中添加该特定域的条目即可
从dnsmasq的手册页 (for –server,但也适用于–address):
更具体的域名优先于不太具体的域名,因此:–server = / google.com / 1.2.3.4 –server = / http://www.google.com / 2.3.4.5将* .google.com的查询发送到1.2。 3.4,除了www.google.com,这将去2.3.4.5
所以我能看到的唯一解决scheme就是为每个必要的子域添加单独的logging。 显然不是理想的,但这是最好的dnsmasq可以在这个时候提供(我可以find)。
你的configuration文件如何? 如果您的input以点开始,dnsmasq将只parsing子域名.
例如: address=/.subdomain.pc01.domain.com/192.168.1.2
如果你这样做:
address=/subdomain.pc01.domain.com/192.168.1.2
它也将parsingasd.subdomain.pc01.domain.com :
$ host asd.subdomain.pc01.domain.com asd.subdomain.pc01.domain.com has address 192.168.1.2