但我们在Azure上创建了一台虚拟机以后,默认情况下该虚拟机具备一个公网IP地址,并且可以自己配置该虚拟机在Azure上的DNS名称

54.为Azure上的虚拟机配置反向DNS解析

那么在配置Azure上的DNS名称后,是可以正常正向解析的

54.为Azure上的虚拟机配置反向DNS解析

但是否可以进行反向解析(PTR)呢?默认是不可以的

54.为Azure上的虚拟机配置反向DNS解析

但是否可以实现反向解析呢?答案是可以的,具体怎么操作呢?

备注:Azure应用服务暂不支持反向解析;Azure仅允许创建反向DNS记录为指定的域名必须同于或可解析为同一Azure订阅中的公网IP地址或云服务的DNS名称或IP地址

例如上面这个环境,这台虚拟机的对外公网IP地址是23.101.9.126,Azure的DNS名称为web01.eastasia.cloudapp.azure.com,那么反向FQDN可以指定为:

  • 对外的地址DNS名称是web01.eastasia.cloudapp.azure.com

  • 同一订阅中的另一个对外DNS名称,如web02.eastasia.cloudapp.azure.com

  • 虚拟DNS名称(如app1.contoso.com),需要提前配置指向web01.eastasia.cloudapp.azure.com或同一订阅的另一个对外公网地址的CNAME(别名)

  • 虚拟DNS名称(如app1.contoso.com),需要提前配置指向IP地址23.101.9.126或同一订阅的另一个对外公网IP地址A记录。

目前仅支持IPv4的公网地址资源配置反向DNS解析,IPv6不支持。配置只能通过命名的方式,图形化无法完成。

在这里我将采用Powershell的方式完成配置。

首先需要登陆到Azure订阅帐户

国内版:Login-AzureRmAccount -EnvironmentName AzureChinaCloud

国际版:Login-AzureRmAccount

54.为Azure上的虚拟机配置反向DNS解析

接下来将反向的DNS解析添加到现有的对外地址

$pip = Get-AzureRmPublicIpAddress -Name "web01-ip" -ResourceGroupName "asia-rg"

$pip.DnsSettings.ReverseFqdn = "web01.eastasia.cloudapp.azure.com."

Set-AzureRmPublicIpAddress -PublicIpAddress $pip

54.为Azure上的虚拟机配置反向DNS解析

54.为Azure上的虚拟机配置反向DNS解析

执行完成以后再次验证PTR,可以看到反向解析成功了

54.为Azure上的虚拟机配置反向DNS解析

查看现有公共地址的反向DNS

54.为Azure上的虚拟机配置反向DNS解析

如果想从现有公网地址中删除反向DNS解析,可以执行:

$pip = Get-AzureRmPublicIpAddress -Name "web01-ip" -ResourceGroupName "asia-rg"

$pip.DnsSettings.ReverseFqdn = ""

Set-AzureRmPublicIpAddress -PublicIpAddress $pip

54.为Azure上的虚拟机配置反向DNS解析

OK,给虚拟机配置反向解析就介绍到这个了,更多详细的参数可以参考https://docs.microsoft.com/zh-cn/azure/dns/dns-reverse-dns-for-azure-services