Разница между A Rec и CNAME в Route53



Поскольку Amazon Route 53 позволяет установить запись A или CNAME на другое поддоменное имя с помощью псевдонима, мне интересно, в чем сейчас разница между записью и CNAME.



Чтобы прояснить мой вопрос, разница между CNAME и записью в традиционном сервере имен заключается в том, что только CNAME может использоваться для указания на другой поддомен, а запись должна указывать на действительный IP-адрес. С помощью AWS Route53 позволяет использовать поддомен, либо отдых или CNAME .. это не размыть различие между ними.

620   2  

2 ответов:

Ваш вопрос вполне обоснован, но вы используете слово "поддомен" не совсем точно.

На самом деле вы спрашиваете о том, что запись Route 53, запись A может создавать видимость ссылки либо на полное имя хоста из другого домена, либо на имя хоста или поддомен из своего собственного домена, в то время как в правильной DNS единственный способ ссылаться на другое имя хоста - это CNAME, но они не могут быть предоставлены на вершине домена ("example.com") указывая на поддомен ("www.example.com"). Вы говорите, что псевдоним кажется функционально эквивалентным, но более гибким, чем CNAME так есть ли разница?

Разница между CNAME и псевдонимом заключается в том, что CNAME по-прежнему является правильным, стандартным, обычным DNS CNAME, который возвращает ответ на запрос DNS " привет, вам нужно знать, что настоящий ("Canonical") имя сервера, который вы ищете, является "x" и, в зависимости от обстоятельств, может также включать запись A для целевого хоста, а может и не включать, требуя от клиента повторного поиска.

С другой стороны, псевдонимы-это хитроумный Хак, созданный Amazon, который не нарушает протокол, но позволяет Route 53 выдавать запись A непосредственно из ресурса "X", когда запрашивается запись A для ресурса "Y". Псевдонимы могут также ссылаться на другие типы записей, но тип записи, на который они ссылаются, должен быть одним и тем же, и для целей настоящего обсуждения я я говорю о A псевдонимах записей.

И здесь важно отметить, что псевдоним фактически возвращает запись A, а не ссылку на цель, как это делает CNAME.

Загвоздка в том, что с псевдонимом вы не можете поместить в это поле только любое имя хоста. Это должно быть имя хоста в домене, где Route 53 имеет магические крючки, чтобы он мог получить запись apprpriate A для обслуживания-либо другую запись в вашей зоне, либо из S3, ELB или Cloudfront. Этот это совсем другая реализация, чем то, как работают записи CNAME, хотя конечный эффект, кажется, тот же самый.

Положите туда что-нибудь еще и The record set could not be saved because:- Alias Target contains an invalid value. попробуйте. :)

Конечно, CNAME записях нет никаких ограничений, как это... они просто ограничены дизайном в их использовании в верхней части зоны.

Таким образом, на самом деле, псевдонимы и записи CNAME не имеют такого большого перекрытия, как вы, возможно, изначально думали. В некоторых ситуациях можно использовать только один, и случаи, когда либо один сработало бы, разница, наверное, незначительная.

Одно из преимуществ Alias в случае, когда можно использовать любой из них, заключается в том, что псевдоним никогда не требует 2 DNS-запросов, как я упоминал выше. На него всегда отвечает непосредственно маршрут 53 с соответствующей записью A, где CNAME, по крайней мере в том случае, когда он ссылается на имя хоста в другом домене верхнего уровня, может потребоваться два последовательных поиска DNS, что дает алиасу теоретическое преимущество в производительности в этом случае.

Я думаю, что у вас неверная информация. Amazon Route53 не разрешает записи A с поддоменами. Когда я пытаюсь установить его на доменное имя, я получаю ошибку:

The record set could not be saved because:
- The Value field contains invalid characters or is in an invalid format.

A записи предназначены только для IP-адресов.

Comments

    Ничего не найдено.