Azure DNS - 公共互联网找不到域名

时间:2016-01-08 18:04:18

标签: azure dns

我编写了一个PowerShell脚本来为我的所有域名创建所有A / CNAME / MX记录等。

它针对我的Azure订阅运行而没有错误。

我可以进入Azure网站的配置部分,将这些域名映射到我的网站,并正确解析域名。

我已将注册商处的NamesServers设置为我正在返回的正确名称服务器

$zone = Get-AzureRmDnsZone –Name activistmanager.info –ResourceGroupName DNSRecords
Get-AzureRmDnsRecordSet –Name “@” –RecordType NS –Zone $zone

我可以看到域名服务器具有正确的NameServers

但它不起作用

甚至使用NSLOOKUP(将服务器切换到Azure DNS服务器之后)

我跑

ls x.com

然后返回

Can't list the domain x.com:Non Existent domain
The DNS server refused to transfer the zone X.com to your computer
If This is incorrect, check the zone transfer security settings for X.com on the DNS

这些区域我们整天都在解决,因为我将它们逐个转移到Azure,但在某些时候它们停止了工作。我错过了什么?

#---------------------------------------------------------------------------------------------
#freedomnstuff.org
#New-AzureRmDnsZone -Name freedomnstuff.org -ResourceGroupName DNSRecords
# A
$rs = New-AzureRmDnsRecordSet -Name "*" -RecordType A -ZoneName "freedomnstuff.org" -ResourceGroupName "DNSRecords" -Ttl 60 -Overwrite -Force          
Add-AzureRmDnsRecordConfig -RecordSet $rs -Ipv4Address 168.62.48.183
Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite

# CNAME

$rs = New-AzureRmDnsRecordSet -Name "awverify" -RecordType "CNAME" -ZoneName "freedomnstuff.org" -ResourceGroupName "DNSRecords" -Ttl 60 -Overwrite -Force
Add-AzureRmDnsRecordConfig -RecordSet $rs -Cname "awverify.freedomnstuff.azurewebsites.net"
Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite

$rs = New-AzureRmDnsRecordSet -Name "awverify.www" -RecordType "CNAME" -ZoneName "freedomnstuff.org" -ResourceGroupName "DNSRecords" -Ttl 60 -Overwrite -Force
Add-AzureRmDnsRecordConfig -RecordSet $rs -Cname "awverify.freedomnstuff.azurewebsites.net"
Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite

$rs = New-AzureRmDnsRecordSet -Name "www" -RecordType "CNAME" -ZoneName "freedomnstuff.org" -ResourceGroupName "DNSRecords" -Ttl 60 -Overwrite -Force
Add-AzureRmDnsRecordConfig -RecordSet $rs -Cname "freedomnstuff.org"
Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite

1 个答案:

答案 0 :(得分:1)

好的,我刚刚发现了你的问题!

您不能使用通配符作为顶点记录。

通配符用于*.example.com的域记录(注意*和域之间的点)这将匹配something.example.com

" @" prefix指的是域本身。这样就匹配example.com

当您创建CNAME并将其指向example.com时,下一个查找是example.com的A记录,并且通配符域不匹配。 (你需要使用外卡* .com才能进行匹配!)

添加它,它应该按预期工作...

$rs = New-AzureRmDnsRecordSet -Name "@" `
         -RecordType "A" `
         -ZoneName "freedomnstuff.org" `
         -ResourceGroupName "DNSRecords" `
         -Ttl 60 -Overwrite -Force

Add-AzureRmDnsRecordConfig -RecordSet $rs `
         -Ipv4Address 168.62.48.183

Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite