メモ
★Route53のプライベートドメインを使うケースで確認したこと★
EC2は、デフォルトでip-X-X-X-X.ap-northeast-1.compute.internalでVPC内のDNSサーバに自動登録される。(正引き・逆引き両方とも)
VPCのDHCPオプションでドメイン定義できるが、このドメインのEC2のFQDNは、VPC内のDNSサーバには自動登録されない。EC2のOS設定には反映される。
Route53でプライベートドメインを定義し、全VPCのDNSサーバで公開できる。→定義したドメインで、EC2やLB等をDNS登録できる。
推測
VPCでのドメイン利用は、
①DHCPオプションのドメインを設定する
②Route53で①をプライベートドメインで定義
③EC2等のVPCリソース間の名前での通信は、プライベートドメインのFQDNでする
上記かと、勝手に思っていた。
ただ、VPCリソースがプライベートドメインだと自動では登録されない。
VPCリソース間の名前での通信は、デフォルトでDNS登録されるドメインap-northeast-1.compute.internal等で行い、プライベートドメインの利用は最小限にするのが良いのかも。
VPCに設定するenableDnsSupportとenableDNSHostnamesについて
DNS attributes for your VPC - Amazon Virtual Private Cloud
上記URLより引用
動作確認した環境
VPCのDHCPオプションでexample.comをドメインに設定
Route53で定義したプライベートゾーンとしてexample.comを定義
全VPCに定義したプライベートゾーンを割当
作成したEC2を、example.comドメインでプライベートゾーンへAレコードで登録
動作確認方法
VPC内のEC2から、以下クエリを実行
dig google.com
dig ip-X-X-X-X.example.com
dig ip-X-X-X-X.ap-northeast-1.compute.internal
結果
No | enableDnsSupport | enableDNSHostnames | google.com | ip-X-X-X-X.example.com | ip-X-X-X-X.ap-northeast-1.compute.internal |
---|---|---|---|---|---|
1 | True | True | OK | OK | OK |
2 | True | False | OK | NG NXDOMAINでns.icann.orgにQuery |
NG NXDOMAINでa.root-servers.netにクエリ |
3 | False | True | NG Timeout |
NG Timeout |
NG Timeout |
4 | False | False | NG Timeout |
NG Timeout |
NG Timeout |
※enableDnsSupportをFalseにするとVPC内のDNSサーバが使えない。
※enableDNSHostnamesをFlaseにするとプライベートドメインがVPCでDNS公開されない。
Route53のゾーン設定の考え方
大きな設定項目は以下
①ホストゾーン
ゾーンの定義。レコード定義もできるが、ルーティングを細かく定義するには、トラフィック管理でレコード定義をする。
②トラフィック管理
トラフィックポリシー→DNSレコードの値側(右)をルーティング条件で定義するもの。キー側(左)は定義しない。
ポリシーレコード→キー側(左)とトラフィックポリシーを紐づける。
→上記2つあわせて、DNSレコードが定義される。
③可用性のモニタリング
ルーティング条件になるヘルスチェックの定義
ヘルスチェック方法の選定時の留意事項
Route53がエンドポイントをモニタリングする方式は、エンドポイントがグローバル公開されてる必要あり。
モニタリングはインターネット経由で行う為、プライベートサブネットのエンドポイントは監視できない。
Amazon Route 53 でヘルスチェックの正常性を判断する方法 - Amazon Route 53
上記URLより引用
設定画面でも、ローカルNGの旨、記載あり。