Я и небольшая группа разработчиков только что переехали в новый офис, и я хотел бы установить dnsmasq на нашем сервере разработки, поэтому при развертывании там веб-приложений нам не нужно редактировать собственные файлы хостов. У нас есть маршрутизатор 192.168.3.1, к которому у нас нет доступа. Я решил установить DNS-сервер в блоке разработки, и мы все записываем его IP как вторичный DNS-сервер. К сожалению, я изо всех сил пытаюсь сделать эту работу.
Имя сервера devel - devbox, его IP - 192.168.3.99, и он работает под управлением последней версии Ubuntu Server (Karmic).
Мой компьютер работает под управлением Ubuntu Desktop (Karmic)
Чего бы я хотел достичь
Допустим, у меня есть три веб-сайта, website1, website2, website3, работающие на панели разработки. Я хотел бы получить доступ к ним по URL:
http://website1.devbox
http://website2.devbox
http://website3.devbox
Итак, я настроил Apache на devel box, установил dnsmasq и поместил следующие строки в его файл hosts:
192.168.3.99 website1.devbox
192.168.3.99 website2.devbox
192.168.3.99 website3.devbox
и отредактировал мой собственный файл resolv.conf, добавив поле devel в качестве сервера имен:
nameserver 192.168.3.99
Работает нормально, я могу получить доступ к сайтам. Проблема в том, что он плохо масштабируется. Я хотел бы, чтобы все домены, заканчивающиеся на .devbox, были перенаправлены в коробку разработки, и это то, с чем я борюсь.
Я пытался положить
192.168.3.99 devbox
в файл hosts и редактируем строку в dnsmasq.conf:
# Add local-only domains here, queries in these domains are answered
# from /etc/hosts or DHCP only.
local=/devbox/
Но я не могу заставить его работать. Если я попробую какой-либо URL-адрес, который явно не присутствует в файле hosts блока разработки, поиск DNS не удастся.
Является ли местная директива для чего-то еще? Я смотрю не на то место?
address=/.devbox/192.168.3.99
может быть более подходящим синтаксисом для ваших целей.