Назад | Перейти на главную страницу

Как я могу настроить локальный сервер имен и изменить на нем зоны DNS?

Это продолжение этот вопрос.

У меня проблема с маршрутизатором, который не поддерживает правильное закрепление. Подробнее см. Ссылку выше.

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

Кроме того, я хочу изменить определенные зоны.

В нашей локальной сети есть серверы, обслуживающие ресурсы, недоступные в нашей общедоступной зоне DNS.

Нам всегда нужно соответствующим образом настраивать наши локальные файлы LMHost.

Например, у нас есть промежуточная установка с новой функцией, работающей на локальном веб-сервере, и мы не можем получить к ней доступ напрямую по IP, потому что веб-сайт работает в контейнере именованного виртуального хоста, мы должны настроить файл LMHost, чтобы указать некоторый домен на локальный Айпи адрес.

И теперь у нас также есть проблема с закреплением волос.

Итак, мой вопрос: какое программное обеспечение я могу использовать? Подойдет ли привязка? Мне просто нужно вставить несколько записей A в зону. Как можно проще. У нас есть локальные серверы Linux / Ubuntu.

Вы можете сделать это с помощью BIND, но как это зависит от того, обслуживает ли сервер BIND, который вы собираетесь использовать, DNS публично.

Если это так, вам нужно использовать view утверждение и файлы нескольких зон: -

view "internal" {
    match-clients { 192.168.0.0/24; };
    recursion yes;
    zone "your-domain.com" {
        type master;
        file "your-domain-internal.db";
    };
};

view "external" {
  match-clients { any; };
    recursion no;
    zone "your-domain.com" {
        type master;
        file "your-domain-external.db";
    };
};

(Чтобы не повторяться, записи, общие для обоих представлений, можно сохранить в другом файле и $INCLUDEd в обеих зонах.)

Если это не так (например, это внутренний сервер), вы можете просто настроить зону для своего домена как обычно или, возможно, настроить определенные хосты, которые вам нужно изменить, как их собственные отдельные зоны, чтобы запросы DNS для других хостов вернется к общедоступному DNS вместо того, чтобы дублировать все общедоступные хосты внутри.

zone "www.your-domain.com" { ... }

Однако с учетом всего вышесказанного, если вы не привязаны к BIND, вы можете посмотреть что-нибудь вроде dnsmasq вместо этого, который поддерживает «лечение DNS»: -

-V, --alias=[<old-ip>]|[<start-ip>-<end-ip>],<new-ip>[,<mask>]
    Modify IPv4 addresses returned from upstream nameservers; old-ip is 
    replaced by new-ip. If the optional mask is given then any address 
    which matches the masked old-ip will be re-written.

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

--alias=123.45.67.89,192.168.0.123

В зависимости от размера вашей сетевой привязки может быть слишком много. Для небольшой сети вы можете использовать dnsmasq который прочитает hosts файл для настройки адресов. Его также можно использовать в качестве DHCP-сервера и локального DNS-кеша.

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

После настройки DNS-сервера вам необходимо изменить список серверов, используемых для разрешения адресов, чтобы включить этот сервер в качестве первого запрашиваемого сервера. Если вы используете DHCP для настройки IP-адресов, тогда вы сможете выдвинуть изменение при обновлении адресов. Обычно DHCP настроен на предоставление списка используемых DNS-серверов. Аренда DHCP обычно продлевается по истечении половины срока ее службы. Если у вас длительный срок аренды, на внесение изменений может уйти немало времени. После перезагрузки системы они должны обновить свою конфигурацию с помощью DHCP.

Как я и joeqwerty уже говорили о ServerFault: Вам нужна служба DNS с разделением горизонта и есть несколько способов настроить это, частично в зависимости от того, какое программное обеспечение вы используете. Как видите, для этого можно использовать целый ряд программного обеспечения, от DNS-сервера Microsoft и BIND от ISC до tinydns из djbdns.

После того, как вы его настроили, не забудьте сопоставить части внешнего вида вашей части пространства имен DNS, которые вы также хотите существовать как есть во внутреннем представлении. Есть два способа сделать это, слишком.

сервер ubuntu в качестве DNS-сервера или привязки, они оба поддерживают его