![具有子域的内部/外部 DNS](https://linux22.com/image/639794/%E5%85%B7%E6%9C%89%E5%AD%90%E5%9F%9F%E7%9A%84%E5%86%85%E9%83%A8%2F%E5%A4%96%E9%83%A8%20DNS.png)
我有一个内部 DNS 服务器(OS X 服务器的一部分),它充当特定(物理)站点的主 DNS 服务器。当它自己无法解析主机名时,它会将请求转发到 Google 的 DNS 服务器。除了几个问题外,一切都运行良好,我认为这些问题可能与此有关,但无法查明原因。
我已经设置了许多内部网站点,人们可以通过以下方式访问:
intranet.我的域名.com
selfservice.mydomainname.com
这些指向大楼内托管这些网站的各种服务器。无论是内部还是外部(无需 VPN),我都可以轻松访问这些网站。
问题在于,当我想test.mydomainname.com
在外部服务器上托管时,由于主要区域是内部区域,因此无法解析mydomainname.com
。如果该区域不在列表中,我该如何让它查找该区域的 Google DNS(或外部 DNS)?我尝试了所有我能想到的方法(添加主机的名称服务器等),但似乎都没有完全奏效。
另外,通过 VPN 连接时我无法访问内联网站点,从我所收集的信息来看 - 我相信这可能与 DNS 问题有关,但我只是想提供尽可能多的信息。
编辑
该域名mydomainname.com
托管在外部,并指向网站的公共 IP。从那里我们可以将请求转发到相关的内部服务器。从外部看,一切正常,但从内部看,任何子域名都是mydomainname.com
本地提供服务,我希望它由 Google 的 DNS / 外部提供服务。
DNS 配置
根据请求,这是当前的 DNS 配置(OS X 服务器的 DNS 选项卡)。我模糊了地址,.private
因为它并不真正相关,但它是服务器的名称。彩色圆点只是将所有内容链接在一起。屏幕截图:
为了澄清这一点,我想要的是:
intranet.mydomain.com -> 192.168.0.12
selfservice.mydomain.com -> 192.168.0.13
*.mydomain.com -> forward to external DNS
mydomain.com -> forward to external DNS
目前,的任何子域名都mydomain.com
无法转发(我认为这是因为主要区域是mydomain.com
NS,intranet.mydomain.com
但只要在正确的方向上稍加点头就可以了)。
答案1
我找到了一个解决方法,但远非完美。理想情况下,我希望添加“*.mydomain.com”作为到外部 DNS(我的注册商)的捕获全部转发,并仅将相关的 DNS 指向内部服务器。不幸的是,OS X 服务器目前不允许使用通配符条目,因此我不得不手动添加所有内容,在适当的位置指出出/入。