Как я могу настроить «локальный» домен, чтобы каждый из моих локальных сетей мог просматривать локально размещенный сайт?

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

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

Детали конфигурации

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

  • MediaWiki и хост dnsmasq: запускает 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 

3 Solutions collect form web for “Как я могу настроить «локальный» домен, чтобы каждый из моих локальных сетей мог просматривать локально размещенный сайт?”

Со стандартным 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 (aka Bonjour), настроенный на любом компьютере в сети (по умолчанию у Ubuntu), лучше всего избегать local. В DNS и выбрать что-то вроде home. Вместо этого, поскольку имена в форме name .local уже обрабатываются Avahi.

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

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

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

Хотя эта ссылка специфична для малины 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).

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

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

  • Принимайте свой собственный веб-сайт и DNS-сервер
  • Разрешения для обычного общего веб-хоста Linux
  • Как работают DNS-серверы?
  • Предоставить доступ к моей локальной компьютерной форме вне
  • Как правильно настроить мой веб-сервер в локальной сети?
  • Обновление сайта с git (over ssh)
  • VM на хосте ESXi - Как сделать доступным извне?
  • Linux устанавливает сервер для статического ip и имени сервера
  • Ubuntu 10 на виртуальном поле в качестве сервера для хоста Windows 7
  • Давайте будем гением компьютера.