Azure でホストされているサービスの逆引き DNS を構成する
Note
Azure を操作するには、Azure Az PowerShell モジュールを使用することをお勧めします。 作業を始めるには、「Azure PowerShell をインストールする」を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。
この記事では、Azure でホストされているサービスの逆引き DNS 参照を構成する方法について説明します。
Azure のサービスは、Azure によって割り当てられて、Microsoft によって所有されている IP アドレスを使います。 対応する Microsoft 所有の逆引き DNS 参照ゾーンに、これらの逆引き DNS レコード (PTR レコード) を作成する必要があります。
このシナリオは、Azure DNS で割り当てられた IP アドレス範囲の逆引き DNS 参照ゾーンをホストする機能とは異なります。 この場合、逆引き参照ゾーンによって表される IP 範囲を、通常は ISP が、組織に割り当てる必要があります。
この記事を読む前に、Azure DNS の逆引き DNS について理解しておいてください。
Azure DNS では、仮想マシン、仮想マシン スケール セット、Service Fabric クラスターなどのコンピューティング リソースにパブリック IP アドレスがあります。 逆引き DNS 参照は、パブリック IP アドレスの "ReverseFqdn" プロパティを使って構成します。
現在、Azure App Service と Application Gateway については逆引き DNS はサポートされていません。
逆引き DNS レコードの検証
サード パーティが DNS ドメインに対する Azure サービス マッピングの逆引き DNS レコードを作成することが可能であってはなりません。 そのため、Azure で逆引き DNS レコードを作成できるのは、前方 DNS 参照が同じパブリック IP アドレスに解決される場合か、サブスクリプション内で定義されている名前に解決される場合のみです。 次の例を参照してください。 この制限は、クラウド サービスにも適用されます。
検証は、逆引き DNS レコードが設定または変更されるときにのみ行なわれます。 定期的な再検証は行われません。
たとえば、パブリック IP アドレス リソースに DNS 名 contosoapp1.northus.cloudapp.azure.com
と IP アドレス 23.96.52.53
が含まれているとします。 パブリック IP アドレスの逆引き FQDN は、次のように指定できます:
- パブリック IP アドレスの DNS 名:
contosoapp1.northus.cloudapp.azure.com
。 - 同じサブスクリプション内の異なる PublicIpAddress の DNS 名 (例:
contosoapp2.westus.cloudapp.azure.com
)。 - バニティ DNS 名 (例:
app1.contoso.com
)。 この名前がcontosoapp1.northus.cloudapp.azure.com
を指す CNAME として "最初に" 構成されている場合に限ります。 名前は、同じサブスクリプション内の別のパブリック IP アドレスを指すこともできます。 - バニティ DNS 名 (例:
app1.contoso.com
)。 この名前が IP アドレス 23.96.52.53 を指す A レコードとして "最初に" 構成されている場合に限ります。 名前は、同じサブスクリプション内の他の IP アドレスを指すこともできます。
同じ制約が、Cloud Services の逆引き DNS にも適用されます。
パブリック IP アドレス リソースの逆引き DNS
このセクションでは、Resource Manager デプロイ モデルのパブリック IP アドレス リソースに対する逆引き DNS を構成する方法の詳細な手順について説明します。 Azure PowerShell、Azure クラシック CLI、Azure CLI のいずれかを使用して、このタスクを実行できます。 パブリック IP アドレス リソースの逆引き DNS の構成は、Azure portal では現在サポートされていません。
Azure では、現在、パブリック IPv4 アドレス リソースの逆引き DNS のみサポートされています。
重要
新規または更新された PTR レコードは、検証に合格する必要があります。 パブリック IP アドレスの PTR が現在存在しない場合は、次の例に示すように、 DomainNameLabel (Azure PowerShell)、-d パラメータ (Azure クラシック CLI)、または --dns-name パラメータ (Azure CLI) を使用してホスト名を指定する必要があります。
既存の名前を持つパブリック IP アドレスの逆引き DNS を構成する
パブリック IP アドレスにサブスクリプションまたは前方 DNS 参照を使用して 定義された名前が既にある場合は、次の手順を使用します。 既存のパブリック IP アドレスで PTR を更新または追加した後、表示して正しい PTR が構成されていることを確認します。
Azure PowerShell
既存の PTR を持つ パブリック IP アドレスの逆引き DNS を更新するには:
$pip = Get-AzPublicIpAddress -Name "PublicIp" -ResourceGroupName "MyResourceGroup"
$pip.DnsSettings.ReverseFqdn = "contosoapp1.westus.cloudapp.azure.com."
Set-AzPublicIpAddress -PublicIpAddress $pip
まだ PTR を持っていないパブリック IP アドレスに逆引き DNS を追加する場合は、DomainNameLabel を指定する必要があります:
$pip = Get-AzPublicIpAddress -Name "PublicIp" -ResourceGroupName "MyResourceGroup"
$pip.DnsSettings = New-Object -TypeName "Microsoft.Azure.Commands.Network.Models.PSPublicIpAddressDnsSettings"
$pip.DnsSettings.DomainNameLabel = "contosoapp1"
$pip.DnsSettings.ReverseFqdn = "contosoapp1.westus.cloudapp.azure.com."
Set-AzPublicIpAddress -PublicIpAddress $pip
Azure クラシック CLI
既存の PTR を持つ パブリック IP アドレスの逆引き DNS を更新するには:
azure network public-ip set -n PublicIp -g MyResourceGroup -f contosoapp1.westus.cloudapp.azure.com.
まだ PTR を持っていないパブリック IP アドレスに逆引き DNS を追加するには、DNS 名 (-d) を指定する必要があります:
azure network public-ip set -n PublicIp -g MyResourceGroup -d contosoapp1 -f contosoapp1.westus.cloudapp.azure.com.
Azure CLI
既存の PTR を持つ パブリック IP アドレスの逆引き DNS を更新するには:
az network public-ip update --resource-group MyResourceGroup --name PublicIp --reverse-fqdn contosoapp1.westus.cloudapp.azure.com.
まだ PTR を持っていないパブリック IP アドレスに逆引き DNS を追加するには、DNS 名 (--dns-name) を指定する必要があります:
az network public-ip update --resource-group MyResourceGroup --name PublicIp --reverse-fqdn contosoapp1.westus.cloudapp.azure.com --dns-name contosoapp1
逆引き DNS でのパブリック IP アドレスの作成
Note
パブリック IP アドレスがご利用のサブスクリプション内に既に存在する場合は、「既存の名前を持つパブリック IP アドレスの逆引き DNS を構成する」をご参照ください
既に指定されている逆引き DNS プロパティで新しい PublicIpAddress を作成するには:
Azure PowerShell
New-AzPublicIpAddress -Name "PublicIp" -ResourceGroupName "MyResourceGroup" -Location "WestUS" -AllocationMethod Dynamic -DomainNameLabel "contosoapp2" -ReverseFqdn "contosoapp2.westus.cloudapp.azure.com."
Azure クラシック CLI
azure network public-ip create -n PublicIp -g MyResourceGroup -l westus -d contosoapp3 -f contosoapp3.westus.cloudapp.azure.com.
Azure CLI
az network public-ip create --name PublicIp --resource-group MyResourceGroup --location westcentralus --dns-name contosoapp1 --reverse-fqdn contosoapp1.westcentralus.cloudapp.azure.com
既存のパブリック IP アドレスの逆引き DNS の表示
既存の PublicIpAddress に構成されている逆引き DNS 値を表示するには:
Azure PowerShell
Get-AzPublicIpAddress -Name "PublicIp" -ResourceGroupName "MyResourceGroup"
Azure クラシック CLI
azure network public-ip show -n PublicIp -g MyResourceGroup
Azure CLI
az network public-ip show --name PublicIp --resource-group MyResourceGroup
既存のパブリック IP アドレスの逆引き DNS を削除する
既存の PublicIpAddress から逆引き DNS プロパティを削除するには:
Azure PowerShell
$pip = Get-AzPublicIpAddress -Name "PublicIp" -ResourceGroupName "MyResourceGroup"
$pip.DnsSettings.ReverseFqdn = ""
Set-AzPublicIpAddress -PublicIpAddress $pip
Azure クラシック CLI
azure network public-ip set -n PublicIp -g MyResourceGroup –f ""
Azure CLI
az network public-ip update --resource-group MyResourceGroup --name PublicIp --reverse-fqdn ""
Cloud Services の逆引き DNS を構成する
ここでは、Azure PowerShell を使って、クラシック デプロイ モデルで Cloud Services の逆引き DNS を構成する方法の詳細な手順についてを説明します。 Cloud Services に対する Azure portal、Azure クラシック CLI、および Azure CLI からの逆引き DNS の構成はサポートされていません。
既存の Cloud Services への逆引き DNS の追加
既存の Cloud Service に逆引き DNS レコードを追加するには:
Set-AzureService –ServiceName "contosoapp1" –Description "App1 with Reverse DNS" –ReverseDnsFqdn "contosoapp1.cloudapp.net."
逆引き DNS によるクラウド サービスの作成
既に指定されている逆引き DNS プロパティで新しい Cloud Service を作成するには:
New-AzureService –ServiceName "contosoapp1" –Location "West US" –Description "App1 with Reverse DNS" –ReverseDnsFqdn "contosoapp1.cloudapp.net."
既存の Cloud Services の逆引き DNS の表示
既存の Cloud Service の逆引き DNS プロパティを表示するには:
Get-AzureService "contosoapp1"
既存の Cloud Services からの逆引き DNS の削除
既存の Cloud Service から逆引き DNS プロパティを削除するには:
Set-AzureService –ServiceName "contosoapp1" –Description "App1 with Reverse DNS" –ReverseDnsFqdn ""
よく寄せられる質問
逆引き DNS レコードのコストはどのくらいですか?
無料です。 逆引き DNS レコードまたはクエリに追加コストはかかりません。
逆引き DNS レコードはインターネットから解決しますか?
はい。 Azure サービスに逆引き DNS プロパティを設定すると、Azure では、すべてのインターネット ユーザーでそれを解決するために必要なすべての DNS 委任と DNS ゾーンが管理されます。
Azure サービスに既定の逆引き DNS レコードは作成されますか?
いいえ。 逆引き DNS はオプトイン機能です。 既定の逆引き DNS レコードを構成しない設定の場合、レコードは作成されません。
完全修飾ドメイン名 (FQDN) の形式は何ですか?
FQDN は順方向で指定します。末尾にはドットを指定する必要があります (例: "app1.contoso.com.")。
指定した逆引き DNS エントリの検証チェックが失敗すると、どうなりますか?
逆引き DNS の検証チェックが失敗すると、逆引き DNS レコードを構成する操作が失敗します。 必要に応じて逆引き DNS 値を修正し、再試行してください。
Azure App Service に対して逆引き DNS を構成できますか?
いいえ。 Azure App Service については逆引き DNS はサポートされていません。
Azure サービス用に複数の逆引き DNS を構成できますか?
いいえ。 Azure は、Azure Cloud Service または PublicIpAddress ごとに 1 つの逆引き DNS レコードをサポートしています。
IPv6 の PublicIpAddress リソースに対して逆引き DNS を構成できますか?
いいえ。 Azure DNS では現在、パブリック IPv6 アドレスの逆引き DNS (PTR レコード) はサポートされていません。
Azure コンピューティング サービスから外部ドメインに電子メールを送信できますか?
Azure のデプロイから電子メールを直接送信する技術的能力は、サブスクリプションの種類によって異なります。 Microsoft では、サブスクリプションの種類に関係なく、信頼できるメール リレー サービスを使用して発信メールを送信することをお勧めしています。 詳細については、電子メールを送信するための Azure セキュリティの強化 – 2017 年 11 月更新に関する記事を参照してください。
次のステップ
- 逆引き DNS について詳しくは、Wikipedia の逆引き DNS 参照をご覧ください。
- Azure DNS で ISP によって割り当てられた IP アドレス範囲の逆引き参照ゾーンをホストする方法を学習してください。