DNS A запись ALIASES и ANAME запись различия

8

У нас в AWS есть несколько групп серверов, которые используют три сервера для обслуживания сайтов. Каждый сервер или набор серверов находится в отдельной области доступности, один из которых является сервером перенаправления, в то время как два других являются основными серверами, доступ к которым осуществляется за счет эластичного балансировщика нагрузки. Наконец-то у нас есть один клиент для использования Route53, и мы изучили некоторые детали наведения апексных доменов зоны на эластичные балансировки нагрузки. Большинство DNS-провайдеров, которые поддерживают это, называют это DNS-псевдонимами записей A. Однако некоторые сайты ссылаются на аналогичную запись, называемую записью ANAME. Это не типичная запись CNAME или нетипичная запись DNAME. Большинство этих сайтов также ссылаются на DNSMadeEasy simpleDNS, который его использует.

Так в чем же различие между Route53 (или другими) в записях ALIAS и ANAME? Есть один? Имеются ли какие-либо из них или включены в документ по реализации IEFT RFC, или записи с псевдонимами все реализованы в поставщике, на котором они используются?

[edit]: неверный DNS-провайдер указан для использования ANAME

dcmbrown
источник
4
«Записи» ALIAS и ANAME не включены ни в один RFC.
Андрей Б
Это должно быть обновлено, чтобы указать, что записи ANAME находятся в черновике рабочей группы IETF: datatracker.ietf.org/doc/draft-ietf-dnsop-aname
Christopher_G_Lewis

Ответы:

10

Похоже, ANAMEэто просто стандартное имя, составленное DNS Made Easy, для описания их сервисного предложения, которое очень похоже на то, что делает Route 53 Alias.

Я описал различия между Alias ​​и CNAMEнедавним переполнением стека , но суммирую здесь:

DNS-сервер, предоставленный CNAMEдля данного хоста, раздает ссылку, указывающую каноническое имя просматриваемого хоста, часто требуя второго запроса от распознавателя источника для поиска этого альтернативного имени; Псевдоним (и, судя по всему, ANAME) использует внутреннюю информацию, которую DNS-сервер знает об «истинном» месте назначения, чтобы просто ответить непосредственно на запрос, без необходимости повторного поиска и без какой-либо видимости промежуточной информации в Обмен протоколами DNS.

В дополнение к этому Alias ​​предоставляет возможность использовать информацию, имеющуюся в распоряжении Route 53 о действующих на данный момент IP-адресах для конечных точек веб-сайта S3, ELB и Cloudfront, для ответа на запросы A-записи с достоверной информацией, которая точное в почти реальном времени, что, если вы используете эти услуги, не является тем, что любой другой поставщик будет иметь в своем распоряжении; конечно, верно и обратное: псевдоним Route 53 нельзя использовать для поиска и возврата информации, которая изначально недоступна для Route 53. Вы не можете просто использовать «любую» цель для псевдонима - только конечные точки трех служб, которые я упомянул выше, или другие записи в той же размещенной зоне на маршруте 53.

В этом смысле «алиас» ANAMEи «алиас» не эквивалентны, в зависимости от того, какой сервис предоставляет серверную часть ... если только он ANAMEне указывает (внутренне) на статическую информацию.

ANAMEЗапись на службе другого хоста DNS не сможет предоставить те же возможности , как Route 53 , если адресат S3, ELB или CloudFront, таким же образом , что Алиас на трассе 53 не сможет вернуть ответы , указывающие на другой Краевые местоположения провайдера CDN, использующие информацию, доступную внутри, потому что информация не доступна внутри инфраструктуры провайдера. В остальном функциональность кажется практически одинаковой.

Майкл - sqlbot
источник
Просто быстрое замечание, что на сегодняшний день Route 53 по-прежнему не поддерживает apex-домен CNAME или какую-либо альтернативу.
Fabien Snauwaert
@FabienSnauwaert, это не точно. Маршрут 53 поддерживает псевдонимы A-записи на вершине, которые могут отражать значение конечной точки S3, CloudFront, ELB / ALB или Elastic Beanstalk. Маршрут 53 не поддерживает CNAME на вершине зоны и, вероятно, никогда не будет, потому что это недопустимая конфигурация.
Майкл - sqlbot
1
Спасибо за разъяснения, Майкл, я ценю это. Я пытался сослаться на то, что называется ALIASна DNSimple, ANAMEна DNS Made Easy, ANAMEна easyDNS, ALIASна PointDNS и CNAME(неправильно) на CloudFlare и позволяет указать mydomain.com (без www) на другой домен (например, myapp.herokuapp). ком). Насколько я могу сказать, Route 53 не предлагает такой опции в настоящее время. (РЕДАКТИРОВАТЬ: Я обсуждал это здесь о другой хостинговой компании.)
Фабьен Сноваверт
Отсутствие CNAME в корне домена было упущением в первоначальном RFC, которое должно было быть исправлено давно. Очевидно, что CNAME в корне должен быть для всех запросов на запись, КРОМЕ СОА, вместо того, чтобы делать это ошибкой, поскольку это совершенно однозначно и работает нормально ... даже с устаревшими серверами кэширования (попробуйте ... взломать DNS-сервер) и служить CNAME из корня ... он разрешится и будет правильно кэширован!).
Эрик Аронесты
@ErikAronesty это действительно не совсем однозначно. Взломайте DNS-сервер и попробуйте отправить электронное письмо на домен. Кто такой почтовый обменник? Если вы собираетесь сделать исключение для SOA, вам нужно исключение для MX, TXT, NS, ..., поскольку CNAME означает, что это имя хоста является псевдонимом для другого, это означает, что эти записи следует искать для другого имени хоста. и это, как правило, не имеет смысла, особенно для веб-хостинга.
Майкл - sqlbot
1

Начиная прямо здесь, в разделе FAQ, он объясняет, что запись псевдонима - это специфический указатель Route53, похожий на запись CNAME, но не видимый для распознавателя.

mortenya
источник
Это почти то, что я ожидал. При тестировании этого набора только в простом формате записи он работает примерно как циклическая запись DNS A, при этом локальный DNS кэширует запись до истечения срока ее действия, а затем чаще всего переключается на противоположную запись.
dcmbrown