Как настроить "локальный" домен, чтобы все пользователи локальной сети могли просматривать локально размещенный сайт?

Я хочу настроить MediaWiki на одной из моих домашних машин, а затем иметь все запросы, сделанные в локальной сети для " wiki.домой " или " вики.местные указывают на эту коробку. Я знаю, что это можно сделать, редактируя каждый файл /etc/hosts индивидуально, но я хочу что-то более автоматизированное, чтобы, например, если друг или член семьи приходит в мой дом, им не нужно возиться с файлом hosts, чтобы просмотреть сайт.

есть ли простой способ сделать это? У меня есть wiki вверх и работает, и я изучал dnsmasq, но я не могу понять, как правильно настроить DNS. Поскольку я хочу автоматизированное решение, мне кажется, что мне нужно изменить настройки DNS на моем маршрутизаторе, но если я изменю настройки DNS там, как я могу по-прежнему разрешать внешние хосты?

Конфигурация

  • Маршрутизатор: Netgear WNR2000v2. Маршрутизатор дает мне возможность вручную указать DNS-серверы, которые, как я предполагаю, мне придется указать на мой Ubuntu box, если я хочу получить это и работает.

  • MediaWiki и dnsmasq host: запускает Ubuntu 12.04. У меня были некоторые трудности с конфигурацией dnsmasq (в основном из-за моей неопытности). Например, я не уверен, но я думаю, что во время установки Ubuntu изменил мои настройки DNS так, что /etc/resolv.conf теперь 127.0.0.1 как единственный DNS-сервер. В тот момент я мог решить местные хосты, но ничего больше. Я решил эту проблему временно, изменив /etc/resolv.conf и добавить 192.168.1.1 как вторичный сервер имен, но проблема здесь в том, что 192.168.1.1 будет использовать поле Ubuntu для DNS. Я упускаю что-то очевидное?

  • настройки dnsmasq: раскомментируйте следующие строки:

    domain-needed
    bogus-priv
    local=/local/
    domain=local
    
28
задан justnajm
12.02.2023 8:35 Количество просмотров материала 2887
Распечатать страницу

3 ответа

стандартные DNS, Вы бы запустить DNS-сервер, для локального домена (home. или local., хотя лучше избегать последнего - см. Примечание ниже), но также выступает в качестве решателя для всех других доменов.

dnsmasq может быть использован для этой цели – он имеет рекурсивный режим включен по умолчанию, и ваша конфигурация выглядит хорошо; все, что нужно, чтобы сказать ему, какие серверы имен для использования для нелокальных доменов. Обычно они будут прочитаны от системы /etc/resolv.conf файл; однако, так как вы хотите, чтобы локальный домен тоже работал на компьютере DNS-сервера, вам нужно будет создать выделенную копию resolv.conf, который будет использоваться только dnsmasq, а resolv.conf бы nameserver 127.0.0.1.

# cp /etc/resolv.conf /etc/dnsmasq-resolv.conf
# echo "nameserver 127.0.0.1" > /etc/resolv.conf
# dnsmasq -r /etc/dnsmasq-resolv.conf

примечание: эти инструкции очень просты и должны быть адаптированы к используемому дистрибутиву Linux. В частности, проверьте Debian и Ubuntu направляющие на dnsmasq.

после этого маршрутизатор должен быть настроен на использование этого компьютера в качестве DNS-сервера; все DNS-запросы компьютеров в вашей сети будут обрабатываться dnsmasq.

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


Примечание: Если у вас есть Avahi (он же Bonjour) настроен на любой компьютер в сети (который Ubuntu имеет по умолчанию), лучше всего, если вы избежать local. в DNS и выбрать что-то вроде home. вместо этого, как имена в виде name.local уже обрабатывается Авахи.

(хотя Авахи обычно отвечает только на current-hostname.local, на самом деле можно публиковать дополнительные записи, такие как wiki.local; однако им потребуются дополнительные IP-адреса из - за способа работы mDNS. Из-за этого использование Avahi вместо централизованного DNS больше не дает никаких преимуществ, поэтому я не предлагаю это.)

7
отвечен grawity 2023-02-13 16:23

Я нашел демон Avahi, чтобы быть самым простым способом сделать это. Примечание: Если вы используете машины Windows для подключения .локальный домен, нужно убедиться, что эти машины установлен iTunes или другой Бонжур клиента на них.

проверьте эту ссылку для получения дополнительной информации: http://www.howtogeek.com/167190/how-and-why-to-assign-the-.local-domain-to-your-raspberry-pi/

хотя эта ссылка специфична для Raspberry Pi, она должна работать на Ubuntu с машины таким же образом. Для других дистрибутивов Linux, которые не используют apt-get, просто скорректируйте apt-get соответствующему менеджеру пакетов, например yum для Fedora и CentOS)

вот точные команды, которые я побежал, чтобы получить это происходит на моем медиа-сервере Raspberry Pi:

sudo apt-get update && sudo apt-get upgrade sudo apt-get install avahi-daemon

оттуда он автоматически начинает использовать имя компьютера плюс .local расширение как доменное имя. Так что если имя устройства mediaserver, после этого вы можете доступ к нему в сети, введя mediaserver.local в строку URL любой машины, на которой есть Bonjour/Avahi (т. е. все компьютеры Mac, а также машины Windows с установленной iTunes).

2
отвечен camercu 2023-02-13 18:40

локальное разрешение имен-это простая функция, и она была частью большинства маршрутизаторов, которые я использовал. Он также реализован в прошивке DD-WRT. Netgear не заботится об этой функции, которая является постоянно просил.

Итак, ответ, который намного проще, чем другие, размещенные здесь - избежать неприятностей и изменить маршрутизатор Netgerat на то, что поддерживает локальное разрешение имен. Или, если это не вариант, и вы чувствуете силу и получили время, flash DD-WRT on она.

0
отвечен Oleg Mikheev 2023-02-13 20:57

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх