Alibaba Cloud VPCのDNSホスト名機能を使ってみた

2025年2月14日掲載

キービジュアル

ご覧いただきありがとうございます。ソフトバンクの結城です。

今回はWeekly Alibaba Cloud アップデート情報 - 2024/12/6 で紹介した、Alibaba CloudのVPCで新たに提供を開始した「DNSホスト名機能」の利用方法について紹介します。

目次

DNSホスト名機能とは

DNSホスト名機能は、ECSでプライベートな名前解決を可能にするVPCの機能です。この機能を有効にすると、DNSホスト名が有効化されたVPC内のECSインスタンスで、設定されたプライベートドメインを使用して名前解決を行うことができます。

この機能により、例えば、ECSインスタンス上で動作するアプリケーションのクライアントがECSに対してIPアドレスを直接指定してアクセスする代わりにプライベートのドメイン名を利用したアクセスが可能になります。

これまでの課題

IPアドレスでローカルのホストを指定しておくとIPアドレス変更をおこなった際などに書き換える部分が多く面倒な作業でした。そのため、プライベートのドメイン名でアクセスするようにしておけばIPアドレス変更等に柔軟に対応することが出来ます。

これまではプライベートのドメイン名(ホスト名)をVPC内で利用しようとするとAlibaba CloudではPrivateZoneという機能があります。ただ、注意が必要なのはゾーン数や問い合わせ数に応じた課金が発生します。

費用が発生しない方法としては、古典的な方法としては、hostsファイルに定義して、全ホストにhostsファイルを配布・同期するなどの工夫が必要でした。これは地味に面倒な作業でした。

DNSホスト名機能は、PrivateZoneと古典的な方法との間を取るような、無料かつ手軽な手法を提供してくれます。

DNSホスト名機能の利点

  • 利用料金が掛からない
    DNSホスト名機能の利用では、利用料金が発生しません。

  • 設定方法がシンプルかつ簡単
    DNSホスト名機能を有効化し、ECS側にプライベートドメインの設定をするだけで、手軽にプライベートな名前解決ができるようになります。
    ただし、役割に応じたホスト名などをカスタムしてつけることが出来ない点は注意が必要です。

DNSホスト名機能で利用するECSのプライベートドメインとは

発行したECSが所属しているVPC内でのみ使える、Alibaba Cloudによって自動的に発行されたプライベートドメインです。このプライベートドメインについては、最大2種類(1種類あたり1ドメインまで)のドメインが発行でき、なおかつ同時に利用することが出来ます
ただし、プライベートドメイン名の指定はできません

なお、プライベートドメインだけを設定してもプライベートな名前解決ができず、VPCのDNSホスト名機能を有効化後に、プライベートな名前解決ができるようになります。

ホスト名部分はプライベートIPアドレスベース、もしくは、インスタンスIDベースのみとなり、カスタマイズしたホスト名を指定することは出来ません。

 

インスタンスIDベース

IPv4(プライベートIP)アドレスベース

概要

プライベートドメインを発行したECSのインスタンスIDをベースに自動作成される

プライベートドメインを発行したECSのプライベートIPをベースに自動作成される

発行書式

[発行したECSのインスタンスID].[リージョンID].ecs.internal

ip-[発行したECSに設定されてるプライベートIPアドレス].[リージョンID].ecs.internal

発行されたドメイン例

i-xxxxxxxxxxxxxxxxxxxx.ap-northeast-1.ecs.internal

ip-192-168-xx-xx.ap-northeast-1.ecs.internal

発行されたプライベートドメイン名の確認方法

プライベートドメインを発行した画面(インスタンス属性の変更)

※参考 : 公式ドキュメント

DNSホスト名機能とPrivate Zoneの機能比較

VPC内でプライベートな名前解決を行う場合、DNSホスト名機能以外にも、Private Zoneがあります。これらの2つの機能は機能が似ており、どちらを使えば良いのか悩むかもしれません。

以下にDNSホスト名機能とPrivate Zoneの比較をしますので、どちらを使うのか判断の一助となればと思います。

項目

DNSホスト名機能

Private Zone

Aレコード

〇 (1レコードまで)

AAAAレコード

〇 (1レコードまで)

CNAMEレコード

×

MXレコード

×

TXTレコード

×

PTRレコード

〇 (1レコードまで)

利用料金

×

ゾーン加速

×

DNSキャッシュ

×

フォワード設定

×

再帰設定

×

適用範囲

同一VPC内のみ

Private Zoneに関連付けをしたVPC / EDS VPCとオンプレミス環境

※オンプレミス環境からプライベートな名前解決をする場合、VPN GatewayまたはExpress Connectを使う必要があります。

DNSレコードの設定

不要

必要

独自ドメインの設定

×

※Alibaba Cloudによって自動発行されたドメインのみ設定可能

DNSホスト名は、利用料金が発生しない分、利用できるレコードタイプや機能がPrivate Zoneに劣りますが、プライベートな名前解決を利用する際に、ドメイン名の指定がなく、最低限利用するといった場合は、DNSホスト名機能を利用すると良いかもしれません。

一方、カスタマイズしたホスト名・ドメイン名を指定する、ゾーン加速や様々なDNSレコードタイプを利用したいといった場合は、Private Zoneを利用すると良いでしょう。

DNSホスト名機能を使ってみる

今回は、DNSホスト名をVPC_JPNに対して有効化し、VPC_JPN内に存在するECS AとECS Bに対してプライベートドメイン名を使ったプライベートな名前解決ができるよう設定します。

●事前準備

① DNSホスト名機能を有効化するVPCを用意
② ①で作成したVPC内にECS A / ECS Bを作成します。
③ ②で作成したECS A / ECS Bに、自分のホスト名を返すだけの簡単なWebサイトを準備します。

●設定手順 (VPC)

1 ) VPCコンソールにアクセスします。

2 ) 事前に準備したVPCのインスタンスIDをクリックします。

3 ) 「Basic Information」のタブをクリックし、DNSホスト名を見つけ、「有効化」をクリックします。

4 ) DNSホスト名機能が「有効」になったことを確認します。

VPC側の設定は以上となります。

●設定手順 (ECS)

インスタンスIDベースのホスト名をつける手順を説明します。

1 ) ECSコンソールにアクセスします。
2 ) 事前に準備したECSのインスタンスを見つけ、[︙] → [インスタンス属性の変更]の順にクリックします。

3 )今回は、ECSのインスタンスIDをプライベートドメインとして設定します。

 [インスタンスID形式のホスト名をプライマリプライベート IPv4アドレスに変換する]にチェックを入れ、[確認]をクリックし、設定を保存します。これにより、ECSのインスタンスIDでプライベートな名前解決ができるようになります。

※本手順は、ECS_AとECS_Bに対してそれぞれに実施ください。
※以下の画像内の黄色の部分がプライベートドメイン名です。以降の正常性確認の手順で使いますのでメモしておいてください。
※IPアドレスベースのホスト名を利用したい場合は、一つ上のチェックボックスをチェックしてください。

ECS側の設定は以上となります。

動作確認

ECS_AとECS_Bに設定したプライベートドメイン名に対して疎通ができるか確認をします。

ping疎通確認

ECS_AとECS_Bに設定をしたプライベートドメイン名に対して、互いのプライベートドメイン名を指定して、pingを実行します。

確認結果

ECS_A : メモしたECS_Bのプライベートドメイン名を指定して、pingを実行したところ応答が返ってきました。

ECS_B : メモしたECS_Aのプライベートドメイン名を指定して、pingを実行したところ応答が返ってきました。

Webページ確認

ECS_AとECS_Bに設定をしたプライベートドメイン名に対して、互いのプライベートドメイン名を指定して、curlを実行しWebページの情報が表示されるか確認します。

確認結果

ECS_A : メモしたECS_Bのプライベートドメイン名を指定して、curlを実行したところECS_Bに設定しているWebページの情報が出力されました。

ECS_B : メモしたECS_Aのプライベートドメイン名を指定して、curlを実行したところECS_Aに設定しているWebページの情報が出力されました。

さいごに

今回はDNSホスト名機能とその設定方法について紹介しました。

設定はとてもシンプルかつ簡単に行うことができ、利用料金が発生しないためとても便利だと感じました。ただし、カスタマイズしたホスト名を設定できないため、利用方法としては限定的かなと感じました。

インスタンスIDベースのホスト名を利用すれば、プライベートIPアドレスが変わったことには対応できますが、冗長系のフェイルオーバーが発生した際などのホストが変更になるような事象には対応できません。

DNSホスト名機能の利用シーンは限定的かもしれませんが、ECSで手軽にプライベートな名前解決を利用したい場合には、検討してはいかがでしょうか。

 

関連サービス

Alibaba Cloudは中国国内でのクラウド利用はもちろん、日本-中国間のネットワークの不安定さの解消、中国サイバーセキュリティ法への対策など、中国進出に際する課題を解消できるパブリッククラウドサービスです。

MSP(Managed Service Provider)サービスは、お客さまのパブリッククラウドの導入から運用までをトータルでご提供するマネージドサービスです。

おすすめの記事

条件に該当するページがございません