Split-DNS или как настроить доменное имя для портала организации с выходом в интернет

Апрель 23, 2010

Split-DNS сервер отдающий по запросам moodle.nntc.nnov.ru  192.168.10.1 - при запросах из локальной сети, и 89.109.54.20 - при запросах из интернет

Split-DNS сервер отдающий по запросам moodle.nntc.nnov.ru 192.168.10.1 - при запросах из локальной сети, и 89.109.54.20 - при запросах из интернет

У нас встала задача обеспечить работу систему дистанционного обучения MOODLE как из интернет так и из локальной сети.

Основной задачей стояло настроить Сервер Доменных Имен на «резолвинг» имени moodle.nntc.nnov.ru в зависимости от подсети, из которой был сделан запрос. Т.е. если пользователь пытаеться получить доступ к moodle.nntc.nnov.ru из локальной сети, то ему должен возвращаться локальный IP-адрес нашего web-сервера (192.168.10.1) и в то же время, если пользователь заходит на moodle.nntc.nnov.ru из интернет, то ему должен отсылаться наш внешний интернет-адрес web-сервера (89.109.54.20).

О способах решения этой задачи есть уйма мнений. Некоторые специалисты считают что нужно использовть два отдельных DNS сервера, один из которых будет обслуживать запросы из локальной сети, а другой запросы из интернет. Другие, напротив, предполагают что это можно сделать в рамках одного DNS сервера, но не дают практических рекомендаци. На самом деле, вторыебыли бы ближе к истине, если бы показали как это сделать.

Решение нашлось на просторах интернет на сайт журнала «Системный Администратор».

В нашем случае вопрос решился довольно просто. Для лучшего понимания схемы работы Split-DNS обратите внимание на иллюстрацию. Нам нужно настроить зоны так, что бы при обращении к moodle.nntc.nnov.ru из wi-fi сети или из локальной сети клиенты получали IP-адрес 192.168.10.1. А при обращении к этому же домену из интернет они бы получали внешний Internet-адрес того же сервера — 89.109.54.20.

Такая схема в Bind реализуется с помощью параметра View.

1. Добавляем описание области видимости «internal»

Редактируем файл /etc/bind/named.conf.local

sudo nano /etc/bind/named.conf.local

acl «internals» {192.168.0.0/16; 127.0.0.1/32;};

И здесь же добавляем описание зон, видимых только из этой области.

view «internal» {
match-clients { «internals»; };

zone «moodle.nntc.nnov.ru» {
type master;
file «/etc/bind/db.moodle.nntc.nnov.ru»;
};

};

У нас получилась отдельная DSN зона moodle.nntc.nnov.ru не относящаяся к домену nntc.nnov.ru и видимая только при запросах из сетей 192.168.0.0/255.255.0.0

2. Теперь здесь же ниже проверим, описана ли у нас зона nntc.nnov.ru, в файле для которой должно находиться описание поддомена moodle. В фале /etc/bind/named.conf.local сразу после описания зон входящих в область видимости «Internal» проверяем наличие описания делигированной зоны nntc.nnov.ru

zone «nntc.nnov.ru» {
type master;
file «/etc/bind/nntc.nnov.ru.pri»;
};

Проверьте что бы описание этой зоны было вне блока «view «internal»".

3. Создаем файлы описания этих зон. Файл nntc.nnov.ru.pri — для зоны nntc.nnov.ru отдаваемой при запросах из интернет. И файл db.moodle.nntc.nnov.ru — для описание хоста moodle.nntc.nnov.ru при запросах из локальной сети.

nano /etc/bind/db.moodle.nntc.nnov.ru

$ttl 38400
moodle.nntc.nnov.ru.    IN    SOA    localhost. emsh67.yandex.ru. (
1228125531
10801
3600
604801
38400 )
@        IN    NS    localhost.
moodle.nntc.nnov.ru.    IN    A    192.168.10.1

nano /etc/bind/nntc.nnov.ru.pri

$TTL    86400
@    86400    IN    SOA    nntc.nnov.ru. root.nntc.nnov.ru. (
2010041906
10800
3600
3600000
86400 )
@        IN    NS    nntc.nnov.ru.
@        IN    NS    ns2.sinn.ru.
nntc.nnov.ru.    IN    A    89.109.54.20
www        IN    A    89.109.54.20
moodle    IN      A      89.109.54.20
moodle.nntc.nnov.ru.    IN      A       89.109.54.20

4. Перезапускаем bind9 и проверяем результат

sudo /etc/init.d/bind9 restart

Вам нужно выполнить команду

dig moodle.nntc.nnov.ru

из локальной сети и убедиться что вы получаете в ответ IP-адрес 192.168.10.1

и из Интернет и убедиться что вы получаете в ответ внешний IP 89.109.54.20

Если все происходит именно так — то поздравляем — вы получили Split-DNS систему и можете работать с moodle.nntc.nnov.ru даже при отсутствии Интернет-соединения и, соответственно, отсутствия внешнего IP 89.109.54.20

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

Вы должны войти для того, чтобы оставить комментарий.