Я настроил виртуальную частную сеть, используя virtualbox с DNS-сервером с именем: dns1.xyz1.com . У меня есть веб- сервер с именем: xyz1.com .

Я хочу использовать свой DNS-сервер для разрешения IP-адреса сайта. Я настроил файл прямой зоны следующим образом:

$TTL    604800

@       IN      SOA     dns1.xyz1.com. admin.xyz1.com. (
                              13         ; Serial
                         604820         ; Refresh
                          86600         ; Retry
                        2419600         ; Expire
                         604600 )       ; Negative Cache TTL

; name servers - NS records
    IN  NS  dns1.xyz1.com.
    IN  NS  dns2.xyz1.com.

; name servers - A records
dns1.xyz1.com.          IN      A       192.168.56.13
dns2.xyz1.com.          IN      A       192.168.56.15

; 192.168.56.0/24 - A records
host1.xyz1.com.         IN      A       192.168.56.17
xyz1.com.               IN      CNAME   host1.xyz1.com.
host1.xyz1.com.         IN      TXT     "some text"
host2.xyz1.com.         IN      A       192.168.56.18

Прежде чем добавить запись CNAME, я смог набрать: https://host1.xyz1.com и браузер перенес меня на нужный веб-сервер.

После того, как я добавил запись CNAME (я хочу, чтобы браузер также перевел https://xyz1.com на тот же веб-сайт, что и https://host1.xyz1.com), но, к сожалению, после добавления строки CNAME, как показано ниже, ни один из адреса открывают нужный веб-сервер: ни https://xyz1.com ни https://host1.xyz1.com .

xyz1.com.               IN      CNAME   host1.xyz1.com.

Кстати, вот содержимое файла named.conf.local :

zone "xyz1.com" {
    type master;
    file "/etc/bind/forward.xyz1.com";
};

zone "56.168.192.in-addr.arpa"{
    type master;
    file "/etc/bind/reverse.xyz1.com";
};

Суть: я хочу получить доступ к одному и тому же веб-серверу (с одним и тем же IP-адресом) под разными именами: https://xyz1.com или https://host1.xyz1.com . Можете ли вы сказать мне, что не так в моей записи CNAME? Как я могу это исправить?

РЕДАКТИРОВАТЬ:

Спасибо за ответы. Но проблема все еще существует. Я не могу разрешить этот адрес: xyz.com, и мне нужно указать конкретный сервер, используя имена: xyz.com и host1.xyz.com .

Основываясь на некоторых ответах, я обновил эту часть моего файла конфигурации:

; 192.168.56.0/24 - A records
@           IN  A   192.168.56.7
host1.xyz1.com.         IN      CNAME   xyz1.com.
host1.xyz1.com.         IN      TXT     "text here"

Существует веб-сервер с возможностью проверки связи с IP: 192.168.56.7 который я хочу xyz1.com и host1.xyz1.com . Как этого добиться?

2 ответа2

1

Записи CNAME не могут сосуществовать с любыми другими типами записей, за редким исключением. В вашем случае в одном и том же домене уже есть записи SOA и NS (так же, как и у зоны Apex).

В результате вероятно, что BIND полностью отказался загружать файл зоны. (Но вы наверняка узнаете только, проверив журналы ошибок BIND.)

Другими словами, нельзя иметь CNAME на вершине зоны, и вам придется вручную копировать IP-адреса как записи A/AAAA .


В будущем DNS может стандартизировать ANAME которые позволяют создавать псевдонимы IP-адресов без полной семантики CNAME. (В настоящее время они предлагаются некоторыми службами DNS-хостинга в качестве специального дополнения.) Смотрите здесь, здесь или здесь.

0

ты делаешь это задом наперед. Не устанавливайте имя домена в качестве CNAME для субдомена. Установите поддомен (host1) в качестве CNAME для домена (xyz01.com)

используйте @ для обозначения корневого домена (xyz01.com)

; 192.168.56.0/24 - A records              
@               IN      A       192.168.56.17
host1.xyz1.com.         IN      CNAME   xyz1.com.
host2.xyz1.com.         IN      A       192.168.56.18

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .