Статья добавлена: 2015-03-20 18:45:09
Автор: Сергей

Настройка кеширующего DNS freebsd


После установки Freebsd bind уже установлен но выключен по умалчанию.
Для того чтоб использовать DNS как кешырующий сервер достаточно прописать несколько строк в файл named.conf который по умолчанию лежит:
  • /etc/namedb/named.conf

В данном файле нужно подправить несколько строк это
  • allow-query { 192.168.1.0/24; 127.0.0.1; };

сдесь мы указываем для какой сети работает
  • listen-on { 192.168.1.1; 127.0.0.1; };

какие интерфейсы слушает
  • forwarders { 8.8.8.8; };

Сдесь указываются ip адреса провайдеров через ;
После чего можно стартовать сервис для этого
  • service named onestart

если данный сервис не прописан в
  • /etc/rc.conf

или
  • service named start

после того как мы добавили в файл rc.conf запись
  • named_enable="YES"

Для проверки кэша идем на ресурс
ну или ping wiset.pp.ua
После чего делаем dump кэша
  • rndc dumpdb -cache

И смотрим садержимое данной таблицы в файле
  • less /var/named/var/dump/named_dump.db
Сбросить весь кэш
  • rndc flush

Создание локального домена DNS

В файле named.conf нужно для создания домена прописать зону прямую и обратную для этого:
  • zone "pip.local" {type master;file "/etc/namedb/master/pip.local.forward.db";};
Это прямая зона с конфигурационным файлом pip.local.forward.db
  • zone "1.168.192.in-addr.arpa" {type master;file "/etc/namedb/master/pip.local-revers.db";};
А это обратная зона с файлом pip.local-revers.db
После создания двух этих строчек в файле named.conf нужно перейти в
  • /etc/namedb/master/
и скопирывать дефолтные конфиги для зоны local и подправить их под себя.
  • cp localhost-forward.db pip.local.forward.db
    cp localhost-reverse.db pip.local-revers.db
После чего подставить свои настройки.
Пример pip.local.forward.db:
  • ; $FreeBSD: src/etc/namedb/master/localhost-forward.db,v 1.1.12.1.8.1
    2012/03/03 06:15:13 kensmith Exp $

    $TTL 3h
    pip.local. SOA pip.local. ns1.pip.local. 42 1d 12h 1w 3h
    ; Serial, Refresh, Retry, Expire, Neg. cache TTL

    NS pip.local.

    A 127.0.0.1
    AAAA ::1
    localhost IN A 127.0.0.1
    ns1 IN A 192.168.1.1
    www IN A 192.168.1.1
    @ IN A 192.168.1.1
    crm IN A 192.168.1.1
    bugalter IN A 192.168.1.43

Пример pip.local-revers.db:
  • ; $FreeBSD: src/etc/namedb/master/localhost-reverse.db,v 1.1.12.1.8.1
    2012/03/03 06:15:13 kensmith Exp $

    $TTL 3h
    @ SOA pip.local. ns1.pip.local. 42 1d 12h 1w 3h
    ; Serial, Refresh, Retry, Expire, Neg. cache TTL

    NS pip.local.

    1.0.0 PTR pip.local.
    1.1.168 PTR crm.pip.local.
    43 PTR bugalter.pip.local.
    1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 PTR pip.local.
Для проверки работы достаточно несколько команд если вы после их ввода видите
следующий вывод то значит все получилось
  • nslookup bugalter.pip.local

    Server: 192.168.1.1
    Address: 192.168.1.1#53

    Name: bugalter.pip.local
    Address: 192.168.1.43

    host bugalter.pip.local
    bugalter.pip.local has address 192.168.1.43
Если данного вывода по командам host и nslookup нет то тогда нужно проверять конфигурационные файлы зоны с помощью команды
  • named-checkzone pip.local /etc/namedb/master/pip.local.forward.db
Вывод должен быть при правильной настройки
  • zone pip.local/IN: loaded serial 42
    OK
Для создания SRV записи записываем
  • _xmpp-server._tcp.example.com. IN SRV 0 0 5269 jabber.example.com.
Где 5269 порт. Для проверки записи SRV dig -t SRV _xmpp-server._tcp.jabber.example.com