积极答复者
询问关于DNS GlobalNames Zone能否支持类似aaa.bbb这种Cname?

问题
-
原来使用aaa.bbb这种形式的a记录,解决域名太长的问题。现在想统一,使用cname加入到globalnames zone。但是直接改成单标签DNS又担心某些应用无法解析。
想在globalnames zone下直接创建aaa.bbb这种cname,自己搭了个虚拟机测试,没成功,想询问下,是否支持这种格式的cname?
我在测试机器上创建了2个DNS cname,指向同一个web服务器IP,用nslookup解析没有问题
--------------------------------------------------------------
C:\Users\Administrator>nslookup
Default Server: localhost
Address: 127.0.0.1
> aaa.bbb
Server: localhost
Address: 127.0.0.1
Name: test1.test.org
Address: 192.168.60.200
Aliases: aaa.bbb.test.org
> aaa
Server: localhost
Address: 127.0.0.1
Name: test1.test.org
Address: 192.168.60.200
Aliases: aaa.test.org--------------------------------------------------------------
但是用浏览器访问aaa.bbb和ping aaa.bbb都有问题
--------------------------------------------------------------
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Administrator.TEST>ping aaa
Pinging test1.test.org [192.168.60.200] with 32 bytes of data:
Reply from 192.168.60.200: bytes=32 time<1ms TTL=128
Reply from 192.168.60.200: bytes=32 time<1ms TTL=128
Reply from 192.168.60.200: bytes=32 time<1ms TTL=128
Reply from 192.168.60.200: bytes=32 time<1ms TTL=128
Ping statistics for 192.168.60.200:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
C:\Users\Administrator.TEST>ping aaa.bbb
Ping request could not find host aaa.bbb. Please check the name and try again.
C:\Users\Administrator.TEST>
--------------------------------------------------------------
- 已编辑 但愿人长久 2013年5月8日 12:23
答案
-
经过进一步研究,貌似GlobalNames Zone这种解决方案是依赖于客户端的程序在请求单标域名时发出的DNS请求中会先append domain suffix这样一个行为的。
也就是说,你在ping aaa或nslookup aaa或IE去访问aaa这种单标域名时,实际发出的DNS请求中,问的是aaa.test.org,这个test.org是被自动添加的,这时,DNS服务器首先检查GlobalNames Zone中有没有aaa,发现有,就CNAME了;如果没发现,就继续走正规流程,查test.org这个zone下的aaa
在nslookup里,你可以通过set d2再执行aaa查询,看一下详细的query是不是带了test.org?这个应该就是关键!我相信你那边就是这样。
那么,对于非单标域名aaa.bbb,程序就不会有这种auto append suffix的行为,以至于无法得到解答(除非你的DNS真的有bbb zone,里面有aaa的记录)。
_____________________________________________________________________________________________
最后,换句话说,GlobalNames Zone能支持类似aaa.bbb这种Cname,GlobalNames Zone本质上也就是个普通的正向Zone。。。
但是你的客户端程序不会在企图访问aaa.bbb时发出aaa.bbb.test.org那样的DNS请求(nslookup除外)
全部回复
-
经过进一步研究,貌似GlobalNames Zone这种解决方案是依赖于客户端的程序在请求单标域名时发出的DNS请求中会先append domain suffix这样一个行为的。
也就是说,你在ping aaa或nslookup aaa或IE去访问aaa这种单标域名时,实际发出的DNS请求中,问的是aaa.test.org,这个test.org是被自动添加的,这时,DNS服务器首先检查GlobalNames Zone中有没有aaa,发现有,就CNAME了;如果没发现,就继续走正规流程,查test.org这个zone下的aaa
在nslookup里,你可以通过set d2再执行aaa查询,看一下详细的query是不是带了test.org?这个应该就是关键!我相信你那边就是这样。
那么,对于非单标域名aaa.bbb,程序就不会有这种auto append suffix的行为,以至于无法得到解答(除非你的DNS真的有bbb zone,里面有aaa的记录)。
_____________________________________________________________________________________________
最后,换句话说,GlobalNames Zone能支持类似aaa.bbb这种Cname,GlobalNames Zone本质上也就是个普通的正向Zone。。。
但是你的客户端程序不会在企图访问aaa.bbb时发出aaa.bbb.test.org那样的DNS请求(nslookup除外)