はじめに
AWS Route53上に、Privateな逆引きと正引きゾーン(Hosted Zone)を作成する手順です。
Route53ではFQDNからIPアドレスを解決する正引きだけでなく、IPアドレスからFQDNを解決する逆引きも利用可能です。
Route53に作成する例示用ゾーンについて
今回の例では、作成した正引きと逆引きゾーンに対して、以下のレコードセット(DNSリソースレコード)を追加し、EC2インスタンス(Amazon Linux)から正引きと逆引きの名前解決を行えるようにする手順まで記載致します。
今回の例では、例示用ゾーンとして、Route53に以下のゾーンを作成します。
Route53に作成するゾーン名 | 作成するゾーンのType | 備考 |
---|---|---|
example.org. | Private | 正引き用ゾーン |
100.51.198.in-addr.arpa. | Private | 逆引き用ゾーン |
Route53に作成したゾーンには、以下のレコードセットを追加します。
Name | Type | Value | 備考 |
---|---|---|---|
route53-test.example.org. | Aレコード | 198.51.100.10 | 正引き用レコードセット |
10.100.51.198.in-addr.arpa. | PTRレコード | route53-test.example.org. | 逆引き用レコードセット |
Route53にゾーン作成する前の確認 (DNS resolutionとDNS hostnamesオプションの確認)
・「Aws Management Console」にログインします。
・「VPC」をクリックします。
・VPCの管理画面が表示されるので「Your VPCs」をクリックします。
・利用しているVPCの以下のオプションがともにyesになっている事を確認します。
このオプションが両方yesになっていると、Route53にTypeがPrivateのゾーンを作成出来るようになります。
DNS resolution: yes
DNS hostnames: yes
DNS resolutionとDNS hostnamesの詳細については以下をご参照下さい。
http://docs.aws.amazon.com/ja_jp/AmazonVPC/latest/UserGuide/vpc-dns.html
Route53に正引きゾーン作成 (example.orgゾーン作成)
・「Aws Management Console」にログインします。
・「Route53」をクリックします。
・Route53の管理画面が表示されるので、「Hosted Zones」をクリックします。
・Route53のゾーン一覧画面が表示されるので、「Create Hostes Zone」をクリックします。
・画面右側にRoute53に作成したいゾーンの情報を入力します。
以下の項目に作成するゾーン名を入力します。
Domain Name: example.org
Comment: example (コメントを入力します。入力は任意ですが、今回は左記を入力します)
作成するゾーンの「Type」を選択します。今回のゾーンは外部には公開しないので、Privateを選択します。
Type: Private Hosted Zone for Amazon VPC
作成するゾーンの「VPC ID」を選択します。
VPC ID: Asia pacific (tokyo)
VPC IDはPrivateなゾーンを作成する場合、どのVPCにゾーンを紐付けるかを指定します。作成するゾーンの正引きと逆引きを利用したいEC2インスタンスを配置しているVPCを選択します。今回の例では、「VPC ID」として「Asia pacific (tokyo)」リージョンを選択します。
作成したいゾーン情報を入力したら「Create」をクリックして、ゾーンを作成します。
・「Domain Name」列に作成したゾーン名が表示されます。
今回作成したゾーン名の部分をダブルクリックします。
・作成したゾーンに登録されているレコードセット一覧が表示されるので、「Create Record Set」をクリックします。
なお、Route53にゾーンを作成すると、自動的にNSレコードとSOAレコードが作成されます。
以下の項目に追加するレコードセットの情報を入力します。
Name: route53-test
Type: A - IPv4 address
TTL: 5 (TTLを指定します。今回は5秒にしています)
Value: 198.51.100.10
「Create」をクリックして、レコードセットを追加します。
・レコードセットが追加された事を確認します。
・「Back to Hosted Zone」をクリックします。
Route53に逆引きゾーン作成 (100.51.198.in-addr.arpaゾーン作成)
・Route53のゾーン一覧画面が表示されるので、「Create Hostes Zone」をクリックします。
・画面右側にRoute53に作成したいゾーンの情報を入力します。
以下の項目に作成するゾーン名を入力します。
Domain Name: 100.51.198.in-addr.arpa
Comment: example (コメントを入力します。入力は任意ですが、今回は左記を入力します)
作成するゾーンの「Type」を選択します。今回のゾーンは外部には公開しないので、Privateを選択します。
Type: Private Hosted Zone for Amazon VPC
作成するゾーンの「VPC ID」を選択します。
VPC ID: Asia pacific (tokyo)
今回の例では、先ほど作成した正引きゾーンと同じVPC「Asia pacific (tokyo)」を選択しています。
作成したいゾーン情報を入力したら「Create」をクリックして、ゾーンを作成します。
・「Domain Name」列に作成したゾーン名が表示されます。
今回作成したゾーン名の部分をダブルクリックします。
・作成したゾーンに登録されているレコードセット一覧が表示されるので、「Create Record Set」をクリックします。
なお、Route53にゾーンを作成すると、自動的にNSレコードとSOAレコードが作成されます。
以下の項目に追加するレコードセットの情報を入力します。
Name: route53-test
Type: A - IPv4 address
TTL: 5 (TTLを指定します。今回は5秒にしています)
Value: 198.51.100.10
「Create」をクリックして、レコードセットを追加します。
・レコードセットが追加された事を確認します。
・Route53のゾーン一覧画面が表示されるので、正引きと逆引きゾーンが作成された事を確認します。
EC2インスタンス上で作成したゾーンの名前解決 (正引きと逆引きのテスト)
・EC2インスタンス上で作成したゾーンに対して、正引きと逆引きの名前解決を行えるかテストします。
Route53に作成したゾーンは、VPC内のEC2インスタンス上から名前解決可能です。
以下はEC2インスタンス(Amazon Linux)上で名前解決をテストする例です。
VPCに作成したEC2インスタンスの/etc/resolv.confでは、デフォルトでAmazon Provided DNS(XX.XX.XX.2)が指定されていると思います。
/etc/resolv.confのnameserver行に、Amazon Provided DNS(今回の例では、172.XXX.XXX.2)が指定されている事を確認します。
[ec2-user@example-AmazonLinux ~]$ hostname
example-AmazonLinux
[ec2-user@example-AmazonLinux ~]$ cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search ap-northeast-1.compute.internal
nameserver 172.XXX.XXX.2
[ec2-user@example-AmazonLinux ~]$
・Route53に作成した正引きゾーンの名前を解決出来る事を確認します。
今回の例では、route53-test.example.orgを名前解決出来るかテストしています。
[ec2-user@example-AmazonLinux ~]$ dig route53-test.example.org
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.35.amzn1 <<>> route53-test.example.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57444
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;route53-test.example.org. IN A
;; ANSWER SECTION:
route53-test.example.org. 5 IN A 198.51.100.10
;; Query time: 3 msec
;; SERVER: 172.XXX.XXX.2#53(172.XXX.XXX.2)
;; WHEN: Sat Jan 31 22:14:25 2015
;; MSG SIZE rcvd: 58
[ec2-user@example-AmazonLinux ~]$
・Route53に作成した逆引きゾーンの名前を解決出来る事を確認します。
今回の例では、10.100.51.198を解決出来るかテストしています。
[ec2-user@example-AmazonLinux ~]$ dig -x 10.100.51.198
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.35.amzn1 <<>> -x 10.100.51.198
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25539
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;198.51.100.10.in-addr.arpa. IN PTR
;; ANSWER SECTION:
198.51.100.10.in-addr.arpa. 882 IN PTR ip-10-100-51-198.ap-northeast-1.compute.internal.
;; Query time: 0 msec
;; SERVER: 172.XXX.XXX.2#53(172.XXX.XXX.2)
;; WHEN: Sat Jan 31 22:14:29 2015
;; MSG SIZE rcvd: 106
[ec2-user@example-AmazonLinux ~]$
以上になります。