Я знаю, что допустимо иметь запись DNS A, которая является подстановочным знаком (например, * .mysite.com). Возможно ли/допустимо/рекомендовано иметь подстановочную запись CNAME?
Это возможно сделать. В какой-то момент он немного поднимался в воздух, пока 4592 не выяснил, что его следует поддерживать.
То, что это возможно, не означает, что оно поддерживается всеми провайдерами DNS. Например, GoDaddy не позволит вам установить подстановочный знак в записи CNAME.
С точки зрения того, целесообразно или нет, это зависит от вашего использования. Обычно CNAMES используются для удобства, когда вы указываете на "внешнее" доменное имя, на котором вы не контролируете DNS.
Например, допустим, вы настроили систему CMS, которая позволяет вам использовать * .mycms.com в качестве имени сайта (он использует заголовки хоста). Вы хотите, чтобы клиенты могли легко настроить * .cms.customer.com, не беспокоясь о том, что в какой-то момент вы можете изменить свой IP-адрес. В этом случае вы можете посоветовать им настроить подстановочный знак CNAME с именем * .cms.customer.com для www.mycms.com.
Поскольку подстановочные знаки CNAMES поддерживаются не всеми провайдерами (например, GoDaddy), я бы не советовал использовать его в случае, когда вы предлагали его для различных клиентов (когда вы не знаете возможностей их провайдера).
Я добавил строку
*.www IN CNAME my_webserver
к моему файлу зоны в моем конфиге bind, и это сработало идеально (то есть. whatever.www.domain.com
а также whatever2.www.domain.com
все указывает на my_webserver
.
Также было возможно добавить исключения к этому, добавив строку
exception.www IN CNAME another_server
так что exception.www.domain.com
указал на another_server
.
Просто добавьте, что Amazon Route 53 поддерживает подстановочные знаки в любой записи типа .
Таким образом, вы можете безопасно использовать Route 53 в качестве вашего DNS-провайдера.
Мы постоянно используем подстановочные знаки, и у нас не было никаких проблем. Если вы указываете на ipaddres, используйте:
*.mysite.com Host (A) Default xxx.xxx.xxx.xxx
Если вы хотите использовать псевдоним, выполните:
*.mysite.com. IN CNAME mysite.com.
Насколько я помню, вы можете (ish) сделать это, но тогда этот CNAME не может использоваться никаким другим типом записи, таким как NS или MX).
Не совсем уверен, что вы пытаетесь достичь с помощью символа подстановки, поэтому я должен дать общий ответ :)
Чтобы уточнить, CNAME aserver.domain означает, что у вас не может быть другого имени.aserver.domain
Есть исключения, но я не знаю, что это за голова, и не совсем уверен, что ты хочешь делать, поэтому я не буду тратить время.
когда вы создаете запись CNAME, заканчивайте указанный сервер точкой, например: * .mydomain.com. Обратите внимание на последнюю точку
Это работает сейчас.
Просто используйте "*" в разделе cname редактора файлов зон или менеджера DNS от Godaddy и укажите IP-адрес или DNS-имя.
В моем случае я использовал его с DNS-именем, указывающим на облачный сервис Microsoft Azure, и он отлично работал. Это работает для bla.domain.ext, но также и для bla.bla.domain.ext. Может работать иначе для другого поставщика.
Вот результаты моего теста. Я удалил записи A для mysite.com и www.mysite.com и добавил запись CNAME для * .mysite.com. Тест не сработал. mysite.com не разрешит. Просто чтобы прояснить, я использую OpenDNS для своих DNS-серверов. Может быть, он отлично работает с другими DNS-серверами, но я, очевидно, хочу, чтобы он работал универсально. Основываясь на этих результатах, я собираюсь придерживаться стандартных записей А.