我们正在使用 Dnsmasq,我们有几个运行良好的条目。我们正在寻找的是为特定 IP 地址返回不同的配置文件。
即:每当 ip1.2.3.4
连接时,它都会使用此表:
address=/widgits.com/2.2.2.2
address=/x.widgits.com/2.2.2.22
每当 ip2.3.4.5
连接时,它都会使用这张表:
address=/widgits.com/3.3.3.3
address=/x.widgits.com/3.3.3.33
除了修改 dnsmasq 之外,还有其他选择吗?
更新:只是想补充一下,我们有超过 10,000 个 IP 地址(在 asme 接口上),将被分成两组,并且我们每天最多有 300 个更改需要实时完成。
答案1
您正在描述 BIND 中名为视图的功能。
view 子句允许 BIND 根据访问它的主机提供不同的功能
在此获取更多信息:http://www.zytrax.com/books/dns/ch7/view.html
更多信息可能在这里:http://en.wikipedia.org/wiki/Comparison_of_DNS_server_software
答案2
您最好的选择似乎是-y
(或--localise-queries
)选项。从文档:
返回来自 /etc/hosts 的 DNS 查询的答案,这些答案取决于接收查询的接口。如果 /etc/hosts 中的名称有多个与之关联的地址,并且这些地址中至少有一个与查询发送到的接口位于同一子网,则仅返回该子网上的地址。这允许服务器在 /etc/hosts 中拥有与其每个接口相对应的多个地址,并且主机将根据它们所连接的网络获取正确的地址。目前此功能仅限于 IPv4。