请原谅(甚至更好,纠正)我在这里滥用的术语,我对此有点小菜。
在我的公司内部networking上,在DNS服务器(服务器2k3)上,如果我为内部机器创build一个ANamelogging,请说:
AndrewsPc 192.168.0.1
这工作正常,并可以从任何联网机器访问没有问题。
但是,如果没有完全限定域名,子域名将无法正常工作。 例如:
对于内部networking服务器,我设置了一个这样的AName:
CruiseControl 192.168.0.1
我想要将其上的网站configuration为:
MySite.CruiseControl 192.168.0.1
但是,访问这些网站的唯一方法是通过:
MySite.CruiseControl.MyDomainName
在那里,因为我可以通过CruiseControl访问CruiseControl,即它不需要CruiseControl.MyDomainName
我敢肯定,我已经在其他networking上以完全相同的方式设置了dnslogging,并且没有问题(即不需要在最后添加域)。
这是什么原因导致我怎么做到这一点,所以我可以访问子域而不需要完整的域path?
首先,我将假定你在你的内部networking使用的主域名下添加了你的子域名。
MyDomain |--CruiseControl
确保您的客户端都具有在其“适配器的高级TCP / IP设置”对话框中启用的追加主连接和连接特定的DNS后缀 。
还要确保您通过DHCP推送DNS域名选项。 它应该与您的主域名一起设置。
我已经在我们的networking中testing了你的场景,并且它可以很好地解决像MySite.CruiseControl这样的地址,而不需要将TLD MyDomain添加到查询中。
如果你运行ipconfig / all ,它可能会在顶部附近显示这样的内容:
DNS后缀search列表:example.com
如果你只是想parsing名称,而不必键入域,我会看起来像这样(即列出你所有的域名):
DNS后缀search列表:example.com
subdomain.example.com
现在,当你的电脑试图parsing一个像mysite这样的“short”名字时,首先会尝试mysite.example.com (因为这是search列表中的第一个域名),如果解决不了,就尝试mysite。 subdomain.example.com 。 当然,你可以任何你想要的方式订购域名。
如果您有Windows 2003域,那么您可能需要通过组策略configurationDNSsearch列表,以便您不必在每台计算机上手动configuration它。
每个IP地址只能有一个Alogging – 而使用CNAME (别名)logging。
相同IP地址的多个Alogging可能会导致问题。
如果您想将CruiseControl视为域名后缀,即您想要创buildsite1.cruisecontrol和site2.cruisecontrol,那么您可以在DNS服务器中定义一个名为“cruisecontrol”的ZONE,并在其中创buildlogging。
您还需要通过DHCP获取CruiseControl后缀,只需使用site1或site2即可。 是的,在Win2k3中一个子域名是DNS视图上的一个文件夹。
我知道这是一个古老的问题,但我想提供一个具有相同问题的其他人的实际解决scheme。
我刚刚经历了这个问题。 我决定只是张贴截图,因为他们将是最快的解释。 基本上,当DNS查询中有一个点时,它不被视为非限定的dns,因此连接特定的后缀不适用。
假设我的连接特定的后缀是“ss”,我想在“pos”和“dev.pos”上创build一个web服务器。 因此,ping到“pos”将自动变为“pos.ss”,而ping到“dev.pos”将保持为“dev.pos”,而不会在查询dns之前转换为“dev.pos.ss”服务器。 以下是我为了最好地说明正确布局所做的截图:
这个截图显示你应该有一个名为“ss”的主要区域。 您应该有指向其各自主要区域的CNAME。 所以“pos”应该指向“pos”主区的Alogging。 
此屏幕截图显示,您可以将您的子域名作为CNAME指向主区域中的Alogging(本例中为“pos”)。 
所以现在你有不合格的dns请求自动引用特定于连接的dns主区域“ss”,其中你有CNAME指向它们各自主要区域中的Alogging。 像“dev.pos”这样的FQDN请求会自动回到主要区域“pos”,并发现它的关联CNAMElogging“dev”。