Что означает «@» в файле зоны DNS?


104

У меня есть следующие данные в моем файле зоны DNS для моего домена:

$ORIGIN mydomain.com.
@       IN      A       208.X.Y.Z
mail    IN      A       208.X.Y.Z
... etc..

Что означает эта @строка? Я знаю, что такое запись A ... но хозяин с амперсандом на знаке ?


10
Возможно, немного придирчив, но @ не является амперсандом. ;)
Джон Гарденье

2
ХАХАХ, аааааа :) Это так верно ... время исправить это .. (не знаю, почему я сказал, что это амперсанд / &) .. ....
Pure.Krome

2
@ не амперсанд, но за 9 лет сюда приехали 85 000 человек, потому что они совершили ту же ошибку. =) Так что спасибо за этот несчастный случай, я был одним из тех людей.
Шлем

Ответы:


73

RFC 1035 определяет формат файла зоны DNS.

... на странице 34 вы найдете:

@ Свободно стоящий @ используется для обозначения текущего источника.

Это означает, что @это ярлык для имени, определенного с помощью $ORIGIN.

Вы можете найти более подробную информацию $ORIGIN здесь , которая является выдержкой из Pro DNS и BIND , опубликованной Apress.


48

Это корень, или в вашем примере это mydomain.com.


Это не похоже на то, когда я это пробую. Я сделал Aзапись для mydomain.com.указания на IP моего хоста. Это приводит к сбою поиска DNS с ошибкой, что он не может разрешить имя хоста. Если я изменю mydomain.com.в @домене решает и мой сайт становится доступным. Какая разница между двумя? Я предполагаю, что зона не mydomain.com? (Я устанавливаю эти записи в панели управления Namecheap).
Даниэль Санер

@DanielSaner Часть, которую нужно поместить перед IN, - это префикс перед mydomain.com. Так что если вы поместите mydomain.com, это действительно означает mydomain.com.mydomain.com. Вот почему символ @ является важным символом, который переводится просто как mydomain.com.
Скотт Форсайт - MVP

Насколько я понимаю, в конце .указывается имя как полностью определенное, поэтому происхождение не следует добавлять. Это будет соответствовать RFC 1535, и фактически мой регистратор использует его в своих примерах: namecheap.com/support/knowledgebase/article.aspx/9256/29/… Но такая конфигурация не работает, когда я пытаюсь Это. Может быть, панель управления делает что-то еще, кроме как просто добавить информацию в зону как есть?
Даниэль Санер

1
Да, многое из этого зависит от реализации инструмента DNS. Вы увидите @, когда будете работать с файлами DNS напрямую, но редко увидите его в различных инструментах DNS. Инструменты DNS пытаются упростить пользовательский интерфейс. Из ваших сообщений звучит так, будто вы работаете в одном направлении, а не в другом, поэтому я рекомендую придерживаться того, как это работает. Инструменты DNS действительно подходят для реализации инструмента, и даже DNS-серверы могут не реализовывать это по-разному в соответствии со спецификациями.
Скотт Форсайт - MVP

Итак, подведем итог, для правильно работающего DNS-сервера, @и domain.com.должен ли быть эквивалент?
CMCDragonkai

5

Это псевдоним для самого имени зоны. В этом случае это указывает на то, что имя зоны имеет этот адрес (или запись mx, или ...)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.