Назад | Перейти на главную страницу

Публичный IP Amazon EC2 и публичный DNS

У нас на Amazon работает EC2. Оно имеет Публичный IP и Публичный DNS.

Мы используем общедоступный IP-адрес в наших записях домена, создавая запись A для www.example.com. Затем сайт становится доступным. Если бы мы использовали общедоступный DNS, мы бы использовали CNAME вместо записи A.

Мой вопрос касается технических характеристик и функциональности обоих. Есть ли у одного преимущество перед другим?

Во многих случаях нет причин использовать CNAME. У вас есть единственный общедоступный IP-адрес, поэтому укажите запись A на свой IP-адрес, чтобы избежать второго поиска, необходимого для CNAME. Также для example.com (нет www) A-запись - ваш единственный вариант, когда вы указываете напрямую на экземпляр EC2, который не использует Elastic Load Balancer (ELB) или CloudFront в качестве внешнего интерфейса.

Исключение:

Для имени хоста внутри вашего домена, например www, может быть полезно использовать CNAME, если вы хотите, чтобы экземпляры в вашей учетной записи AWS (и в том же регионе) могли получить доступ к экземпляру, используя внешнее имя хоста, но внутренний IP-адрес. Инфраструктура EC2 делает это автоматически, когда вы используете CNAME.

Например:

www.example.com CNAME ec2-203-0-113-25.compute-1.amazonaws.com.

При запросе за пределами вашего региона EC2 и аккаунта www.example.com вернет общедоступный IP-адрес экземпляра, 203.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, вы будете платить дополнительно за отправку трафика и обратно, и это позволяет избежать этого.