1

У меня есть домен, которым я пользуюсь дома, в качестве аргумента, давайте назовем его domain.com . Я использую этот домен в своей домашней сети, но на самом деле я также являюсь владельцем домена. Поэтому, когда я загружаю www.domain.org и один поддомен, я хочу, чтобы мой DNS-сервер перенаправлял этот запрос в реальный Интернет, а не в мой домашний домен.
Я использую домен для идентификации устройств дома. Как мне этого добиться?
Я использую BIND на машине с Ubuntu, которая выступает в качестве шлюза и DNS-сервера.

2 ответа2

2

Я рекомендую переместить вашу внутреннюю сеть на третий уровень (т.е. device1.lan.domain.org), чтобы избежать конфликтов.

При этом, по сути, вы хотите делегирование субдомена. IIRC это должно быть так же просто, как добавить эти записи:

www           IN      NS     ns1.example.com.
www           IN      NS     ns2.example.com.

Поскольку в любом случае это не будет работать без доступа к Интернету, вы можете пренебречь всеми другими рекомендациями, касающимися делегирования.

0

Самый простой способ сделать это - использовать функциональность $INCLUDE в BIND.

Все, что вам нужно сделать, это создать файл для всех ваших внутренних имен, например, db.domain.com-internal , со всеми вашими внутренними записями в нем (который у вас уже есть, просто подставьте имя файла), а затем создать второй файл назовите его db.domain.com-external , который содержит все записи из вашего внешнего реального домена, за исключением записей SOA и NS.

В нижней части внутреннего файла db.domain.com-internal строку:

$ INCLUDE db.domain.com-external

Это позволяет логически отделить внутреннее от внешнего с помощью двух файлов, чтобы различать их, но директива $INCLUDE объединяет их воедино как одно полное представление о вашем домене. И прежде чем вы спросите, не имеет значения, что разрешение www.domain.com происходит внутренне, будь то запись A или запись CNAME, IP-адрес, который получает ваш браузер, все равно отправляет его на ваш сайт в Интернете.

Перезагрузите, проверьте на ошибки, и все. Просто.

Это хорошо работает, так как правильная конфигурация split-DNS (внутренняя / внешняя) предоставляет миру подмножество полного набора записей, видимого внутри. То есть, как правило, для внешнего публичного представления домена вы предоставляете только общедоступные имена с IP-адресами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .