AmazonでEC2を実行しています。 パブリックIPとパブリックDNSがあります。
Www.example.comのAレコードを作成することにより、ドメインレコードでパブリックIPを使用します。その後、サイトにアクセスできるようになります。パブリックDNSを使用する場合は、Aレコードの代わりにCNAMEを使用します。
私の質問は、両方の専門性と機能性についてです。一方が他方よりも有利ですか?
多くの場合、CNAMEを使用する理由はありません。パブリックIPアドレスは1つなので、CNAMEが必要とする2回目のルックアップを回避するために、IPアドレスにAレコードを指定します。また、example.com
(www
なし)フロントエンドとしてElastic Load Balancer(ELB)またはCloudFrontを使用していないEC2インスタンスを直接指す場合、Aレコードが唯一のオプションです。
例外:
www
のようなドメイン内のホスト名の場合、AWSアカウント(および同じリージョン)のインスタンスが外部ホスト名を使用してインスタンスにアクセスできるようにする場合は、CNAMEを使用すると便利です。ただし、内部IPアドレス。 CNAMEを使用すると、EC2インフラストラクチャがこれを自動的に実行します。
例えば:
www.example.com CNAME ec2-203-0-113-25.compute-1.amazonaws.com.
EC2リージョンとアカウントの外部でクエリを実行すると、www.example.comはインスタンスのパブリックIP203.0.113.25を返します。
EC2リージョンとアカウント内でクエリを実行すると、www.example.comはインスタンスのプライベートIPアドレス(例:172.31.1.20)を返します。
外部DNSホスト名を、インスタンスのネットワーク外のインスタンスのパブリックIPアドレスに解決し、インスタンスのネットワーク内からインスタンスのプライベートIPアドレスに解決します。
http://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html
この自動マッピングにより、内部マシンがパブリックホスト名を使用して他の内部マシンにアクセスするときのデータ転送料金を節約できます。そのアクセスがパブリックIP、エラスティックIP、またはNATゲートウェイを使用する場合、トラフィックを送受信するために追加料金を支払うことになります。これにより、それが回避されます。