пятница, 7 января 2011 г.

Настройка DHCP и bind9 для работы dyndns

В сети где работаю DNS и DHCP почему бы их не настроить для совместной работы чтобы к клиентам с динамическим IP обращаться по доменному имени.


Все действия проводятся на дистрибутиве Ubuntu 10.04, домен example.com, сеть 192.168.1.0/24.

Установка
Все нужные пакеты есть в репазиториях  Ubuntu 10.04.
$ sudo apt-get install bind9 dhcp3-server

Настройка сети на сервере
Настройка сетевого интерфейса хранятся в файле  /etc/network/interfaces

#Настройки для loopbakc интерфейса оставляем как есть
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
#статический адрес
iface eth0 inet static
# адрес
address 192.168.1.1
# маска подсети
netmask 255.255.255.0


Настройка DNS сервера в файле /etc/resolv.conf

nameserver 127.0.0.1
domain example.com
search example.com


После изменения настроек сети нужно их пременить
$ sudo /etc/init.d/networking restart

Настройка серверов
Настройки DHCP в файле /etc/dhcp3/dhcpd.conf

authoritative;
ddns-update-style interim;

subnet 192.168.1.0 netmask 255.255.255.0 {
#диапазон для выдачи
range 192.168.1.10 192.168.1.200;
option domain-name "example.com";
#DNS сервер
option domain-name-servers 192.168.1.1;
#шлюз по умолчанию
option routers 192.168.1.1;

ddns-domainname "example.com";

#Ключ сгенерирован при установке Bind, его надо только скопировать из файла /etc/bind/rndc.key
key "rndc-key" { algorithm hmac-md5;
secret "BqdLgrCYkpie7kJutXBAzg==";
};

# DNS зоны для обнавления
zone 1.168.192.in-addr.arpa. {
primary 127.0.0.1;
key "rndc-key";
}

zone example.com. {
primary 127.0.0.1;
key "rndc-key";
}

}


Настройки DNS, сразу перейдём к настройке зон в файле /etc/bind/named.conf.local

#Тотже ключ
key "rndc-key" {
algorithm hmac-md5;
secret "BqdLgrCYkpie7kJutXBAzg==";
};

controls {
inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; };
};

zone "example.com." {
type master;
file "db.example";
allow-update { key "rndc-key"; };
};

zone "1.168.192.in-addr.arpa" {
type master;
file "db.192.168.1";
allow-update { key "rndc-key"; };
}


Прописываем зоны

/var/cache/bind/db.example

$TTL 1h
@ IN SOA localhost. root.localhost. (
2011010701 ; Serial
3h ; Refresh
1h ; Retry
1w ; Expiry
1d ; TTL
)

@ IN NS localhost.
@ IN MX 10 example.com.
@ IN A 192.168.1.1
www IN CNAME @


/var/cache/bind/db.192.168.1

$TTL 1h
@ IN SOA localhost. root.localhost. (
2011010701 ; Serial
3h ; Refresh
1h ; Retry
1w ; Expiry
1d ; TTL
)

@ IN NS localhost.
1 IN PTR example.com.


Изменяем права доступа на файлы зон
$ sudo chown bind:bind /var/cache/bind/db.*

Перезапускаем DNS и DHCP серверы
$ sudo /etc/init.d/dhcp3-server restart
$ sudo /etc/init.d/bind9 restart

Проверяем работу через
$ nslookup <имя клиента>.example.com

Комментариев нет:

Отправить комментарий