如果您有许多子域名,例如xxx.example.com
,xyz.example.com
等等,则可以通过服务器端脚本或其他方式通过在DNS中使用* .example.com的通配符A记录来解决这些问题。
如何确定是否为任何给定域名配置了通配符域?使用http://network-tools.com可以提供很多信息,但是并没有透露。如果我需要使用命令行工具:我使用Windows。我认为一个使用通配域DNS的示例就是blogspot.com。
如果您有许多子域名,例如xxx.example.com
,xyz.example.com
等等,则可以通过服务器端脚本或其他方式通过在DNS中使用* .example.com的通配符A记录来解决这些问题。
如何确定是否为任何给定域名配置了通配符域?使用http://network-tools.com可以提供很多信息,但是并没有透露。如果我需要使用命令行工具:我使用Windows。我认为一个使用通配域DNS的示例就是blogspot.com。
Answers:
你可以从字面上查询“* .example.com的”,并找出是否有是一个通配符,但它是不可能告诉这两个区域之间的区别:
xyz.example.com. IN A 1.2.3.4
*.example.com. IN A 1.2.3.4
和
*.example.com. IN A 1.2.3.4
也就是说,对于给定的查询,您无法确定通配符是否回答了您,仅存在通配符即可。
我还没有找到任何支持它的可通过Web访问的眼镜,因为他们似乎认为这是无效的输入,但是原始数据挖掘(甚至在Windows上为nslookup)就像一个魅力:
c:\Some\User> nslookup
> *.my-test-domain.com
Server: Wireless_Broadband_Router.home
Address: 192.168.1.1
Non-authoritative answer:
Name: *.my-test-domain-is-not-a-real-domain.com
Address: 1.2.3.4
或挖:
# dig +short '*.not-a-real-domain.com'
1.2.3.4
*.blogspot.com
返回具有相同名称的别名。使用shore.blogspot.com
将返回具有相同名称的别名。都收到的答案Name: blogspot.l.google.com
。当我使用时*.undermyhat.org
,没有给出别名,但是答案是Name: *.undermyhat.org
。我是否正确理解Blogspot使用通配符别名(CNAME)并且undermyhat使用通配符A记录?
为了回应BMDan的良好回答:
houdini@linode:~/ > dig '*.blogspot.com' +noall +answer
*.blogspot.com. 3352 IN CNAME blogspot.l.google.com.
blogspot.l.google.com. 52 IN A 72.14.204.191
houdini@linode:~/ > ^blogspot.com^undermyhat.org
dig '*.undermyhat.org' +noall +answer
*.undermyhat.org. 14400 IN A 83.222.226.157
dig
确实可以得到更多。嗯,CygWin?我将用Google替代Windows,同时使用我的Linux虚拟机。