Skip to content

Commit

Permalink
Merge pull request #438 from taminta/taminowa-20240307dns
Browse files Browse the repository at this point in the history
add DNS blog by taminowa
  • Loading branch information
kazuma911 authored Mar 8, 2024
2 parents 7a6202b + 10a6610 commit 4a221bb
Show file tree
Hide file tree
Showing 2 changed files with 123 additions and 1 deletion.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@
- [Azure Firewall の SKU をダウングレードする方法](./articles/network/fw_sku_downgrade.md)
- [プライベート エンドポイントをご利用いただく上でのポイント](./articles/network/pe-introduction.md)
- [プライベート エンドポイントのよくあるお問い合わせ](./articles/network/pe-troubleshooting.md)
- [168.63.129.16 の DNS 機能について](./articles/network/dns-168-63-129-16.md)

## Containers

Expand Down Expand Up @@ -149,4 +150,4 @@
- [Load Balancer と Application Gateway の通信の違い](./articles/archive/lb_appgw_traffic_different.md)
- [SSL 証明書の更新に関するアナウンス](./articles/archive/ssl-intermediate-ca-change.md)
- [Azure で単数 NIC の仮想マシンを複数 NIC にする](./articles/archive/singlenicvm-to-multinicvm.md)
- [Azure 仮想マシンにおける不要な NIC を削除する方法](./articles/archive/delete-nic.md)
- [Azure 仮想マシンにおける不要な NIC を削除する方法](./articles/archive/delete-nic.md)
121 changes: 121 additions & 0 deletions articles/network/dns-168-63-129-16.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
---
title: 168.63.129.16 の DNS 機能について
date: 2024-03-08 12:00:00
tags:
- Network
- DNS
---
こんにちは、Azure テクニカル サポート チームの箕輪です。
Azure データーセンターでは、168.63.129.16 のパブリック IP アドレスは重要な役割を担います。
168.63.129.16 の役割については[こちら](https://learn.microsoft.com/ja-jp/azure/virtual-network/what-is-ip-address-168-63-129-16) でご紹介していますが、このブログでは 168.63.129.16 の DNS 機能について補足やよくあるお問い合わせをご紹介します。

<!-- more -->

## 168.63.129.16 の概要

168.63.129.16 は Microsoft が保有するパブリック IP アドレスであり、Azure データーセンター上でのみ利用している仮想 IP アドレスです。
この 168.63.129.16 は Azure データーセンターのホスト サーバー (物理サーバー) 上で動作する IP アドレスとして割り当てられていて、パブリック インターネット上には公開されていないため Azure データーセンター上のリソース以外からは接続ができません。
仮想マシンなど Azure データーセンター上のリソースが正常に稼働するためのエンドポイントでもあるため、NSG やルート テーブル (UDR) で 168.63.129.16 を制御することは出来ず、仮想マシン上の OS 上でも制御しないことを強く推奨しています。

>注意
>NSG では 168.63.129.16 に対する制御はできないと記載しましたが、AzurePlatformDNS や AzureLoadBalancer のサービスタグを利用することで、168.63.129.16 に関する通信の一部を NSG で制御可能です。
>ただし、意図しない動作を回避するためにも原則制御しないことを強く推奨します。
## 168.63.129.16 の DNS 機能

168.63.129.16 は [Azure 上の名前解決](https://learn.microsoft.com/ja-jp/azure/virtual-network/virtual-networks-name-resolution-for-vms-and-role-instances?tabs=redhat) のための再帰的リゾルバー (フルサービス リゾルバー) の機能を提供しています。下記の用途で利用いただけます。

**・インターネット上のドメインに対する名前解決**
**[プライベート DNS ゾーン](https://learn.microsoft.com/ja-jp/azure/dns/private-dns-privatednszone) の名前解決**
**・同一仮想ネットワーク上のホスト名での名前解決**

この 168.63.129.16 の DNS 機能は、Azure ポータルであれば仮想ネットワークの DNS 設定における既定値である **"既定 (Azure 提供)"** で利用でき、明示的に 168.63.129.16 を指定する必要はありません。
また、冗長構成を意識いただくことなく、Azure 基盤内で既定で冗長化されています。
仮想ネットワークの DNS の観点で、168.63.129.16 を参照することは必須要件ではなく、仮想ネットワークや仮想マシンの仮想 NIC の DNS サーバーの設定として、任意の DNS サーバーを指定可能です。
Azure では任意の DNS サーバーを指定する構成をカスタム DNS サーバーと呼んでおり、仮想ネットワーク上のカスタム DNS サーバーでよくあるお問い合わせについては [こちら](/articles/network/custom-dns-faq.md) をご確認ください。

>注意
>168.63.129.16 が提供するホスト名での名前解決は、同一の仮想ネットワークに限定されています。
>例えば 2 つの仮想ネットワークでピアリング接続をしている構成では、ピアリング先のリソースをホスト名で名前解決することは出来ません。
## 168.63.129.16 を参照する DNS 構成

168.63.129.16 の DNS サーバーは、Azure データーセンター上のリソースからのみ DNS クエリを受け付け可能な為、ExpressRoute や VPN で接続されたオンプレミスから 168.63.129.16 を DNS サーバーとして参照できません。
プライベート DNS ゾーンをオンプレミスから参照させたい場合や、ハブ&スポーク構成の仮想ネットワークにおいてハブの仮想ネットワークのプライベート DNS ゾーンを参照させたい場合など、Azure 上に DNS プロキシに該当する機能が必要です。
この DNS プロキシは、Azure であれば現在下記の構成案があります。

**・Azure DNS Private Resolver を利用する**
**・Azure Firewall の DNS プロキシ機能を有効化する**
**・仮想マシン上に DNS サーバーを構成する**

それぞれの特徴としては下記があります。

#### Azure DNS Private Resolver
[Azure DNS Private Resolver](https://learn.microsoft.com/ja-jp/azure/dns/dns-private-resolver-overview) は、仮想ネットワークのサブネット上に、DNS クエリを受け付ける受信エンドポイントを構成します。
受信エンドポイントの IP アドレスは仮想ネットワーク上の IP アドレスとなり、IP レイヤーで疎通性があればオンプレミスからも DNS クエリを受け付けることができます。既定で高可用性/ゾーン冗長構成のマネージド サービスであるため、運用コストが削減できます。
168.63.129.16 の DNS サーバーは条件付き転送などカスタマイズ機能がありませんでしたが、Azure DNS Private Resolver であれば送信エンドポイントと転送ルールを構成することで条件付き転送も利用できます。

#### Azure Firewall
[Azure Firewall](https://learn.microsoft.com/ja-jp/azure/firewall/overview) は仮想ネットワーク上でデプロイ可能なファイアウォール アプライアンスですが、DNS クエリを受け付ける [DNS プロキシ](https://learn.microsoft.com/ja-jp/azure/firewall/dns-settings#dns-proxy) の機能があります。
Azure Firewall が参照する DNS サーバーは仮想ネットワークのカスタム DNS サーバーとは連動しておらず、既定で 168.63.129.16 を参照します。Azure Firewall の DNS サーバーの設定で任意の DNS サーバーを参照するように構成変更可能です。
既に Azure Firewall をご利用いただいており、条件付き転送が不要であれば DNS プロキシとしてご利用いただけますが、DNS プロキシの機能のみをご利用いただく場合は Azure DNS Private Resolver よりも高額です。

#### 仮想マシン上の DNS サーバー
Azure 上の DNS プロキシとしては、仮想マシン上に DNS サーバー (Windows サーバーや BIND など) を構成いただき、フォワーダー先として 168.63.129.16 を指定いただく構成も考えられます。
仮想マシン上の構成となるため、DNS サーバーの構成及び運用はお客様のご対応範囲となり、Azure サポートではご支援できかねる点はご留意ください。

</br>

DNS プロキシをオンプレミスから参照する構成イメージとしては、[プライベート エンドポイントのドキュメント](https://learn.microsoft.com/ja-jp/azure/private-link/private-endpoint-dns-integration) に Azure DNS Private Resolver をベースとした構成例があります。
必要に応じて Azure Firewall や仮想マシン上の DNS サーバーと置き換えてください。

>注意
>オンプレミスの DNS サーバーから Azure 上の DNS プロキシを参照する構成で、プライベート エンドポイントに関連するドメインを条件付きフォワーダーで指定する時、指定するドメイン ゾーンは対象 Azure PaaS の パブリック DNS ゾーンを指定することを推奨しています。
>プライベート エンドポイントで利用される privatelink サブドメインの DNS ゾーンだけ条件付きフォワーダーで転送した場合、オンプレミスの DNS サーバーの動作によっては意図した名前解決とならない場合があります。
<!-- Link for pDNS blog will be added. -->
## よくいただくお問い合わせ

168.63.129.16 の DNS 機能に関して、Azure サポートによくお問い合わせいただく内容についてご案内します。仮想ネットワーク上のカスタム DNS サーバーでよくあるお問い合わせについては [こちら](/articles/network/custom-dns-faq.md) をご確認ください。

#### DNS プロキシから 168.63.129.16 をフォワーダー先に指定して制限がかかりませんか?

1 台の仮想マシンから 1 秒あたりに送信可能な DNS クエリの数 (QPS) は 1000 という [Azure 上の制限内](https://learn.microsoft.com/ja-jp/azure/azure-resource-manager/management/azure-subscription-service-limits#azure-dns-limits) であれば、168.63.129.16 は DNS サーバーとして DNS クエリを処理可能です。
言い換えますと、仮想マシン上の DNS サーバー、または Azure Firewall を経由して 168.63.129.16 に対する 1000 QPS 以上の DNS クエリは失敗する可能性があります。
なお、Azure DNS Private Resolver はエンドポイント毎に 10,000 QPS が上限です。

#### 仮想マシン上の名前解決でホスト名で IP アドレスが解決できなくなりました。

考えられる要因として、仮想ネットワークの DNS サーバーの設定が変更されてカスタム DNS サーバーを参照する構成になったことが考えられます。
仮想マシンが 168.63.129.16 を参照している構成では、ホスト名で名前解決をした際、Azure 基盤が内部 DNS サフィックス (.internal.cloudapp.net) を自動で付与します。
この動作により仮想マシン上でホスト名だけで名前解決ができます。
仮想マシンが 168.63.129.16 を参照しない構成 (カスタム DNS サーバー構成) に変更された場合、Azure 基盤の内部 DNS サフィックス (.internal.cloudapp.net) の自動付与の機能が停止されるため、仮想マシンはホスト名で名前解決ができなくなります。

#### 仮想マシン上のホスト名での名前解決の IP アドレスが変更されました。

考えられる要因として、同一のコンピューター名を持つ仮想マシンを 1 つの仮想ネットワーク上に複数展開したことが挙げられます。
仮想マシンが展開されたとき、Azure 基盤では内部 DNS サフィックス (.internal.cloudapp.net) に仮想マシンのコンピューター名をホスト名とした DNS レコード情報を追加します。
仮想マシンのバックアップなどでバックアップ先を同一の仮想ネットワークにした場合、Azure 基盤は仮想マシンの展開時に DNS レコード情報を更新します。
この動作により、ホスト名に対する名前解決の結果が、後からデプロイされた仮想マシンの IP アドレスと紐づけられることで、ホスト名に対する名前解決の結果が変更されます。

もし、仮想マシン間の名前解決をホスト名のみで実施されており、仮想マシンのバックアップなどを実施される場合は、別の仮想ネットワーク上にデプロイいただくなどのご対応を実施願います。

#### サフィックスとして追加された reddog.microsoft.com は消しても良いですか?

仮想マシンが 168.63.129.16 を DNS サーバーとして参照しないカスタム DNS サーバー構成では、Azure 基盤は既定の内部 DNS サフィックス (.internal.cloudapp.net) ではなく、機能を持たないプレース ホルダー (reddog.microsoft.com) が付与されます。
この reddog.microsoft.com プレフィックスを削除または上書きされても仮想マシンの動作上は影響ありません。

#### 168.63.129.16 で名前解決された DNS クエリのログは確認できますか?

現状 168.63.129.16 の DNS ログを Azure ユーザーが確認する方法はございません。
Azure サポート担当にご依頼いただければ該当ログの調査支援が可能ですが、ログの調査をするには対象の FQDN と調査対象の時刻を可能な限り具体的にご提示願います。
なお、Azure 既定の DNS のログは、30 日程度でローテーションされ、過去のログは参照できない点はご留意ください。

#### DNSSEC はサポートしていますか?

現状 168.63.129.16 において DNSSEC はサポートされていません。
今後の機能追加として検討されているため、今後の機能追加にご期待いただければと存じます。

</br>

以上、ご参考になれば幸いです。

0 comments on commit 4a221bb

Please sign in to comment.