Главная > Linux > Настройка DNS (BIND)
Настройка DNS (BIND)29 июля 2009. Разместил: dimon |
Задача – поднять службу dns на CentOS 5.2.
В качестве DNS службы будем использовать BIND (Berkeley Internet Name Domain, до этого: Berkeley Internet Name Daemon) — открытая и наиболее распространённая реализация DNS-сервера, обеспечивающая выполнение преобразования DNS-имени в IP-адрес и наоборот. Служба будет работать в нерекурсивном режиме (forward only). Для настройки выполняем последовательность действий: 1. Устанавливаем DNS службу: yum install bind 2. Генерим код rndc командой rndc-confgen В результате получаем файл с кодом /etc/rndc.conf 3. Прописываем зоны /var/named/localhost.rev : $TTL 86400 @ IN SOA localhost. root.localhost. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS localhost. 1 IN PTR localhost. /var/named/localhost.zone : $TTL 86400 @ IN SOA @ root ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS @ IN A 127.0.0.1 4. Создаем файл /etc/named.conf (если днс установлен не в chroot - иначе все файлы ищем в "песочнице") include "/etc/rndc.key"; // включаем в текущий файл ключ rndc acl "lan" { 127.0.0.1; 192.168.0.0/24; }; controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndckey"; }; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; options { directory "/var/named"; // the default dump-file "data/cache_dump.db"; statistics-file "data/named_stats.txt"; version "no camment"; memstatistics-file "data/named_mem_stats.txt"; forward only; forwarders { 200.5.5.1; 200.5.5.254; }; allow-recursion { lan; }; allow-query { lan; }; }; view "localhost" { match-clients { lan; }; match-destinations { lan; }; recursion yes; zone "localhost" IN { type master; file "localhost.zone"; }; zone "0.0.127.in-addr.arpa" IN { type master; file "localhost.rev"; }; }; В секции forwarders нужно прописать списки доступных внешних DNS, которые отвечают на запросы (в примере - 200.5.5.1 и 200.5.5.254). 5. Создаем файл /etc/rndc.conf: include "/etc/rndc.key"; options { default-server 127.0.0.1; default-key "rndckey"; }; server localhost { key "rndckey"; }; 6. Запускаем службу: service named start Если стартовал без ошибок – cool 7. Проверяем rndc status [root@server]# rndc status number of zones: 2 debug level: 0 xfers running: 0 xfers deferred: 0 soa queries in progress: 0 query logging is OFF recursive clients: 0/1000 tcp clients: 0/100 server is up and running Так зоны есть. Вторая проверка: [root@server etc]# host ya.ru ya.ru has address 213.180.204.8 ya.ru mail is handled by 10 mx2.yandex.ru. ya.ru mail is handled by 10 mx3.yandex.ru. ya.ru mail is handled by 10 mx1.yandex.ru. Работает. 8. Настроим логи. В файле /etc/named.conf исправляем раздел logging. Например так: logging { channel default_log { file "/var/log/dns.log" versions 5 size 20m; severity info; print-time yes; print-category yes; print-severity yes; }; channel more_log { file "/var/log/dns_more.log" versions 5 size 10m; severity info; print-time yes; print-category yes; print-severity yes; }; category default { default_log; }; category general { default_log; }; category config { default_log; }; category queries { default_log; }; category xfer-in { default_log; }; category xfer-out { default_log; }; category security { more_log; }; category resolver { more_log; }; category notify { more_log; }; category client { more_log; }; category unmatched { more_log; }; category default { more_log; }; category database { more_log; }; category update { more_log; }; }; Done Вернуться назад |