目前,我在将子域(如lan.example.com )委托给专用网络中的名称服务器时遇到了一些问题。
我的专用网络被分割成子网。
192.168.0.1/24 <--- 192.168.0.1
Physical LAN 172.20.20.1 ---> 172.20.20.1/24
OpenWRT Router VPN我有一些服务运行在物理局域网中,客户端应该使用静态DNS名称访问它们,不管客户端是连接到物理LAN还是VPN。OpenWRT路由器还充当物理局域网中所有客户端的DNS解析器,并可以解析本地主机名,例如server.lan.example.com。
example.com的公共可访问名称服务器有NS记录
lan.example.com IN NS lan-router.example.com
lan-router.example.com IN A 192.168.0.1理论上,所有对*.lan.example.com的DNS请求都应该委托给我的OpenWRT框,但是连接到OpenWRT的客户端使用他们家庭网络的名称服务器。这些服务器试图递归地响应DNS请求,但自然无法到达192.168.0.1。
请求dig +trace A server.lan.example.com @8.8.8.8可以正常工作,但是没有+trace的相同请求就不行了。
您知道如何在不将192.168.0.1设置为所有VPN客户端的名称服务器的情况下修复此问题吗?这将为这些客户端的正常互联网访问增加很大的延迟。
发布于 2015-02-03 00:21:43
问题是,您希望DNS响应不同,这取决于问的是谁。这被称为分裂视图或分裂水平的配置。不幸的是,DNSMasq对此并没有很好的支持。我强烈建议您卸载dnsmasq并安装bind。在bind中,您可以配置视图并将ACL设置为可以看到它们的人。实际上,你可以给172个网络172个响应.192个网络的响应。
更多信息可以找到这里来配置bind中的拆分视图。
https://serverfault.com/questions/664484
复制相似问题