今回は Azure プライベートエンドポイントへオンプレ環境から接続する方法を紹介します。
プライベートエンドポイントとは
Azure プライベートエンドポイントは Azure PaaS へセキュアでプライベートな接続を提供するネットワーキングサービスです。以前概要は別記事にて公開しています。
プライベートエンドポイントを Azure 外部から利用するには
プライベートエンドポイントでは Azure が提供する DNS サービスやプライベート DNS ゾーンを利用する必要があります。これらの DNS サービスは「168.63.129.16」という特殊な IP アドレスで提供されており、オンプレ環境などの Azure の外部から利用することはできません。
そのため、Azure 上に DNS フォワーダーを展開するなど、Azure 上で名前解決した結果をリレーして受け取る構成をとります。
プライベートエンドポイントへの接続方法
接続構成
プライベートエンドポイントを利用するには最低でも次のコンポーネントが必要です。
- Azure 仮想ネットワーク内にあるクライアント
- プライベート DNS ゾーン
- プライベートエンドポイント
- プライベートエンドポイントで接続するサービス(例:ストレージアカウント)
加えて、オンプレ環境からの利用には次のコンポーネントも必要となります。
- オンプレ環境内にあるクライアント
- オンプレ環境の DNS サーバー
- オンプレ環境の VPN 装置
- VPN ゲートウェイ
- DNS フォワーダー
Azure 内部からの接続
Azure 仮想ネットワーク内からの接続の場合、次の流れとなります。
- Azure 上のクライアントから Azure DNS へ DNS クエリをリクエストする。
- Azure DNS でプライベートエンドポイントに接続されているリソースの向けの CNAME レコードを再解決する。
(例:<storageaccount>.privatelink.blob.core.windows.net) - プライベート DNS ゾーンに登録されているプライベートエンドポイントの A レコードが返される。
- 返されたプライベートエンドポイントの IP アドレスを経由して Azure サービスへ接続する。
Azure 仮想ネットワーク内で Azure DNS による名前解決を行う場合はプライベート DNS ゾーンを利用できるため、プライベートエンドポイントの IP アドレスを名前解決することができます。しかし、Azure 外部からの場合はもう一工夫する必要があります。
オンプレ環境からの接続
オンプレ環境からの接続の場合は次のようになります。
- オンプレ内のクライアントからオンプレ DNS へ DNS クエリをリクエストする。
- オンプレ DNS から条件付きフォワーダーで DNS フォワーダーにクエリを転送する。
- DNS フォワーダーによって Azure DNS で名前解決を試行する。
- Azure DNS でプライベートエンドポイントに接続されているリソースの向けの CNAME レコードを再解決する。
(例:<storageaccount>.privatelink.blob.core.windows.net) - プライベート DNS ゾーンに登録されているプライベートエンドポイントの A レコードが返される。
- 返されたプライベートエンドポイントの IP アドレスを経由して Azure サービスへ接続する。
このように Azure 上に展開した DNS フォワーダーを利用する必要があります。ただし、条件付きフォワーダーで Azure サービスのドメインを指定した場合は DNS フォワーダーが稼働していないと Azure サービスへ接続できなくなります。
条件付きフォワーダーではこのように設定します。転送先の IP アドレスは DNS フォワーダーのプライベート IP アドレスです。
仮想ネットワークでオンプレの DNS サーバーを参照している場合も同様の構成が必要となります。プライベートエンドポイントでクローズドに通信する場合は DNS フォワーダーを使う必要があるということを覚えておきましょう。
コメント