AWS CLIで VPCのDNS設定を操作する
VPC Defaultのタイミングで対応した、VPCのDNSホスト名、およびDNSの名前解決機能を、AWS CLIでOn/Offする。
Amazon Web Services ブログ: 【AWS発表】Amazon EC2 アップデート - 全ての皆様にVPC (Virtual Private Cloud)を!
DNSホスト名 - default VPC内に起動されたインスタンスは全て、プライベートとパブリックなホスト名を持ちます。DNSホスト名は既存のVPCでは無効になっていますが、必要に応じて有効にできます。同じVPC内の他のインスタンスのパブリックホスト名を名前解決すると、対象インスタンスのプライベートIPが返されます。VPCの外のインスタンスのパブリックホスト名を名前解決すると、そのインスタンスのパブリックIPが返されます。
DNSの名前解決 - DNSの名前解決は全てのVPCで有効になっていますが、必要に応じてVPC内に用意されたDNSサービスの使用を無効にすることができます。
詳細はこちら Using DNS with Your VPC - Amazon Virtual Private Cloud
ということで、操作方法は以下。
DNSホスト名のOn/Offを確認する
$ aws ec2 describe-vpc-attribute --region us-west-2 \ --vpc-id vpc-f18dd49a \ --attribute enableDnsHostnames
DNS名前解決のOn/Offを確認する
$ aws ec2 describe-vpc-attribute --region us-west-2 \ --vpc-id vpc-f18dd49a \ --attribute enableDnsSupport
DNS名前解決をOnにする
$ aws ec2 modify-vpc-attribute --region us-west-2 \ --vpc-id vpc-f18dd49a \ --enable-dns-support '{"Value":true}'
DNSホスト名をOnにする
$ aws ec2 modify-vpc-attribute --region us-west-2 \ --vpc-id vpc-f18dd49a \ --enable-dns-hostnames '{"Value":true}'
参考1 コマンドリファレンス
modify-vpc-attribute — AWS CLI 1.1.2 documentation
describe-vpc-attribute — AWS CLI 1.1.2 documentation
参考2 APIリファレンス
ec2-describe-vpc-attribute - Amazon Elastic Compute Cloud
ec2-modify-vpc-attribute - Amazon Elastic Compute Cloud
参考3 従来のコマンド (api-tools)
従来のコマンドラインだと このような操作にななる
$ ec2-describe-vpc-attribute vpc-f18dd49a \ --region us-west-2 \ --dns-support $ ec2-describe-vpc-attribute vpc-f18dd49a \ --region us-west-2 \ --dns-hostnames $ ec2-modify-vpc-attribute -c vpc-f18dd49a \ --region us-west-2 \ --dns-support true $ ec2-modify-vpc-attribute -c vpc-f18dd49a \ --region us-west-2 \ --dns-hostname true
リファレンス