Azure クラウド サービス (クラシック) のカスタム ドメイン名の構成
重要
2024 年 9 月 1 日に、すべてのお客様に対して Cloud Services (クラシック) は非推奨になりました。 既存の実行中のデプロイはすべて Microsoft によって停止およびシャットダウンされ、2024 年 10 月以降、データは永久的に失われます。 新しいデプロイでは、新しい Azure Resource Manager ベースのデプロイ モデル、 Azure Cloud Services (延長サポート) を使用してください。
クラウド サービスを作成するときに、Azure は cloudapp.netのサブドメインにそのアプリを割り当てます。 たとえば、クラウド サービスの名前が contoso
の場合、ユーザーは http://contoso.cloudapp.net
のような URL でアプリケーションにアクセスできます。 また Azure によって仮想 IP アドレスも割り当てられます。
ただし、 contoso.comのような独自のドメイン名を使用してアプリケーションを公開することもできます。 この記事では、クラウド サービス Web ロールのカスタム ドメイン名を予約または構成する方法について説明します
CNAME レコードと A レコードについてすでに理解している場合は、 説明を読まずに次に進みます。
Note
このタスクの手順は、Azure Cloud Services に適用されます。 App Services の詳細については、「既存のカスタム DNS 名を Azure Web Apps にマップする」をご覧ください。 ストレージ アカウントの詳細については、「Blob Storage エンドポイントのカスタム ドメイン名の構成」をご覧ください。
ヒント
より速く進める --新しい Azure の使用 チュートリアル ガイド! Azure Cloud Services または Azure Websites を使用したカスタム ドメイン名の関連付けおよび通信 (TLS) のセキュリティ保護がすばやく行えます。
CNAME レコードと A レコードについて
CNAME レコード (またはエイリアス レコード) および A レコードはどちらもドメイン名を特定のサーバー (または、この場合はサービス) に関連付けることができます。ただし、動作は異なります。 また、Azure のクラウド サービスで A レコードを使用する場合には固有の考慮事項もいくつかあるため、どちらのレコードを使用するかを決定する前に、これらの点を検討しておく必要があります。
CNAME レコードまたはエイリアス レコード
CNAME レコードは、 contoso.com や contoso.com or 特定のドメインを正規のドメイン名にマップします。 この場合、正規のドメイン名は Azure ホステッド アプリケーションの [myapp].cloudapp.net ドメイン名です。 作成すると、CNAME は [myapp].cloudapp.netのエイリアスを作成します。 CNAME エントリは [myapp].cloudapp.net サービスの IP アドレスに自動的に解決されるため、クラウド サービスの IP アドレスが変更されても、対処する必要はありません。
Note
いくつかのドメイン レジストラーでは、CNAME レコードを使用する場合にマップすることが許可されるのは、ルート名 (contoso.com など) ではなく、サブドメイン (www.contoso.com など) のみです。 CNAME レコードの詳細については、レジストラーが提供するドキュメント、CNAME レコードに関するウィキペディアの項目、または IETF ドメイン名 - 実装と仕様書を参照してください。
A レコード
A レコードは、ドメイン (contoso.com、www.contoso.com など) または "ワイルドカード ドメイン" (*.contoso.com など) を IP アドレスにマップします。 Azure クラウド サービスの場合は、サービスの仮想 IP です。 CNAME レコードと比較して A レコードの主な利点は、1 つのエントリでワイルドカード (たとえば、*.contoso.com) を使用できることです。これにより、複数のサブドメイン (たとえば、mail.contoso.com、login.contoso.com、www.contso.com) の要求が処理されます。
Note
A レコードは静的 IP にマップされるため、変更をクラウド サービスの IP アドレスに自動的に解決することはできません。 クラウド サービスによって使用される IP アドレスは、空のスロット (運用またはステージング) に初めてデプロイしたときに割り当てられます。スロットのデプロイを削除すると、IP アドレスは Azure によって解放され、そのスロットへの今後のデプロイは新しい IP アドレスに与えられます。
都合が良いのは、ステージング デプロイと運用デプロイとの間のスワップまたは既存のデプロイのインプレース アップグレードを実行する場合に、所定のデプロイ スロット (運用またはステージング) の IP アドレスが保持されることです。 これらの操作の実行の詳細については、「 How to manage cloud services (クラウド サービスの管理方法)」を参照してください。
カスタム ドメインの CNAME レコードの追加
CNAME レコードを作成するには、レジストラーから提供されるツールを使用して、カスタム ドメイン用の DNS テーブルに新しいエントリを追加する必要があります。 それぞれのレジストラーでは CNAME レコードを指定するための同様の (多少異なる) 手段が用意されていますが、その概念は同じです。
これらの手段のいずれかを使用して、クラウド サービスに割り当てられた .cloudapp.net ドメイン名を見つけます。
Azure portal にサインインし、クラウド サービスを選択して、[概要] セクションを確認し、[サイトの URL] エントリを見つけます。
OR
Azure PowerShell をインストールして構成してから、次のコマンドを使います。
Get-AzureDeployment -ServiceName yourservicename | Select Url
CNAME レコードを作成する場合に必要になるため、いずれかの方法で返された URL で使用されているドメイン名を保存します。
DNS レジストラーの Web サイトにサインインし、DNS の管理ページに移動します。 [ドメイン名] 、 [DNS] 、 [ネーム サーバー管理] というラベルが付いたサイトのリンクまたは領域を探します。
ここで、CNAME レコードを選択または入力できる場所を見つけます。 ドロップダウンからレコードの種類を選択するか、または詳細設定ページに移動することが必要な場合があります。 "CNAME"、"エイリアス"、または "サブドメイン" という単語を探します。
また、www.customdomain.com のエイリアスを作成する場合は、CNAME のドメインまたはサブドメイン エイリアス (www など) を指定する必要があります。 ルート ドメインのエイリアスを作成する場合は、レジストラーの DNS ツールに ' @ ' シンボルとして示される場合があります。
次に、正規のホスト名 (ここではアプリケーションの cloudapp.net ドメイン) を指定します。
たとえば、次の CNAME レコードでは、すべてのトラフィックが www.contoso.com から、デプロイされたアプリケーションのカスタム DNS 名である contoso.cloudapp.net に転送されます。
エイリアス/ホスト名/サブドメイン | 正規のドメイン |
---|---|
www | contoso.cloudapp.net |
Note
www.contoso.com の訪問者が本当のホスト (contoso.cloudapp.net) を識別することはないため、転送プロセスはエンド ユーザーから見えなくなります。
上記の例は、www サブドメインのトラフィックにのみ適用されます。 CNAME レコードにはワイルドカードを使用できないため、各ドメインおよびサブドメインに 1 つの CNAME を作成する必要があります。 サブドメイン (*.contoso.com など) からトラフィックを cloudapp.net アドレスに転送するには、DNS 設定の URL リダイレクトエントリまたは URL 転送エントリを構成するか、または A レコードを作成します。
カスタム ドメインの A レコードの追加
A レコードを作成するには、まず、クラウド サービスの仮想 IP アドレスを見つける必要があります。 次に、レジストラーから提供されるツールを使用して、カスタム ドメイン用の DNS テーブルに新しいエントリを追加します。 それぞれのレジストラーでは A レコードを指定するための同様の (多少異なる) 手段が用意されていますが、その概念は同じです。
次の手段のいずれかを使用して、クラウド サービスの IP アドレスを取得します。
Azure portal にサインインし、クラウド サービスを選択して、[概要] セクションを確認し、[パブリック IP アドレス] エントリを見つけます。
OR
Azure PowerShell をインストールして構成してから、次のコマンドを使います。
get-azurevm -servicename yourservicename | get-azureendpoint -VM {$_.VM} | select Vip
A レコードを作成する場合に必要になるため、IP アドレスを保存します。
DNS レジストラーの Web サイトにサインインし、DNS の管理ページに移動します。 [ドメイン名] 、 [DNS] 、 [ネーム サーバー管理] というラベルが付いたサイトのリンクまたは領域を探します。
ここで、A レコードを選択または入力できる場所を見つけます。 ドロップダウンからレコードの種類を選択するか、または詳細設定ページに移動することが必要な場合があります。
この A レコードを使用するドメインまたはサブドメインを選択または入力します。 たとえば、www.customdomain.com のエイリアスを作成する場合は www を選択します。 すべてのサブドメインを表すワイルドカード エントリを作成する場合は、「
*****
」と入力します。 このエントリは、mail.customdomain.com、login.customdomain.com、www.customdomain.com など、すべてのサブドメインを対象とします。ルート ドメインに A レコードを作成する場合は、レジストラーの DNS ツールに ' @ ' シンボルとして示される場合があります。
表示されたフィールドのクラウド サービスの IP アドレスを入力します。 この手順によって、A レコードで使用されるドメイン エントリがクラウド サービスのデプロイの IP アドレスに関連付けられます。
たとえば、次の A レコードでは、すべてのトラフィックが contoso.com から、デプロイされたアプリケーションの IP アドレス名である 137.135.70.239 に転送されます。
ホスト名/サブドメイン | IP アドレス |
---|---|
@ | 137.135.70.239 |
この例では、ルート ドメインの A レコードを作成する方法を示します。 すべてのサブドメインを対象とするワイルドカードを作成する場合は、サブドメインとして「*****」と入力します。
警告
Azure の IP アドレスは、既定では動的です。 自分の IP アドレスが変更されないようにするために、 予約済み IP アドレス を使用すると便利です。