Переносим Bind на FreeBSD | FreeBSD
DNS долго крутился на старой машине на Linux появилась необходимость перетащить на новую. В общем все достаточно просто.
Bind в системе уже есть (если ставили),
скрипт управления – в /etc/rc.d/named
файлы конфига и зон в /etc/namedb/ (это алиас на /var/named/etc/namedb)
В /etc/rc.conf добавляем:
named_enable="YES"
Копируем файлы зон (можно все в папку /var/named/etc/namedb, можно по папкам рассовать (что слейвы, что мастера).
Редактируем named.conf
options {
// Relative to the chroot directory, if any
//Место где храним файлы зон, если разложили по папкам,
//то в описании зоны путь указываем от этой папки
directory<----->"/etc/namedb";
pid-file<------>"/var/run/named/pid";
dump-file<----->"/var/dump/named_dump.db";
statistics-file>"/var/stats/named.stats";
//Скрываем версию
version><------>"Hi to DNS";
//Принимать зоны с
allow-recursion { 15.20.14.0/24; 83.242.140.0/24;};
//вышестоящий ДНС, если есть, будет спрашивать прежде всего у него из его кэша
forwarders {15.20.14.15;};
};
Далее несколько записей чтобы соотвествовать RFС.
Добавляем описание зон
Пример зоны которая хостится на старом и ещё живом серваке
zone "mxxnet.ru" {
type slave;
file "mxxnet.ru.hosts";
allow-transfer {19.20.18.3; 15.20.14.15; };
masters {
15.20.14.15;
};
};
Если мы решили перетащить зону на новый сервер то будет так
zone "mxxnet.ru" {
type master;
file "mxxnet.ru.hosts";
allow-transfer {19.20.18.3; 15.20.14.15; };
};
В самом файле описания зоны на старом серваке добавляем оба сервера в качестве хранителя зоны (NX запись)
mcnet.ru. IN NS newserver.ru.
Теперь если все правильно настроено, с мастера после изменений зоны файл будет передаваться на новый сервер. Формат файла зоны немного изменится, но bind поймет и файлы зоны для линукса.
В процессе конфигурирования обращаем внимание на синтаксис (закрывающие скобки, точки с запятой). Перед запуском чекаем конфиг командой:
named-checkconf /etc/namedb/named.conf
Можем поймать ошибки типа
unknown option 'zone'
или ругань на отсутствие скобок и т.д. Проверяем синтаксис, может при редактировании секции options удалили закрывающую скобку.
Если поймали ошибку о невозможности трансфера зоны
failed while receiving responses: permission denied
Проверяем права. Добавляем право на запись группе bind или меняем владельца файлов.