2

Я много занимаюсь веб-разработками, в основном RoR и PHP, у меня есть виртуальные машины, в которых содержатся мои среды разработки, и работа с несколькими клиентами на них - это боль. С PHP вы просто создаете подкаталог, но с RoR это немного болезненно.

Я хотел бы создать локальный DNS-сервер, который перенаправлял бы запросы к определенному TLD на мои виртуальные машины / серверы.

TLD будет выглядеть так, как будто *.php.dev будет работать на виртуальной машине php, а mysql.dev будет указывать на сервер MySQL и так далее.

Я боролся с локальным сервером BIND, но это настоящая боль. У вас есть легкие альтернативы для BIND, желательно на основе ruby/python.

Я пробовал RubyDNS, но eventmachine каждый раз вылетает.

Последнее, что я запускаю на MacBook Pro с OSX 10.6

Изменить Я пробовал dnsmasq, но я столкнулся с другой проблемой: в OSX есть демон привязки к кешу. Я буду исследовать, как отключить.

2 ответа2

3

Мы используем dnsmasq именно для этого. Вы можете создавать записи CNAME, которые определяют имя, связанное с каким-либо другим, настоящим именем, путем редактирования файлов конфигурации; это действительно легко.

Вот кое-что из того, что мы поместили в наш /etc/dnsmasq.conf:

domain=initech.office
cname=vpn.initech.office,balham
cname=mail.initech.office,bank
cname=cacti.initech.office,victoria
cname=opennms.initech.office,victoria

У нас есть машины под названием Balham, Bank, и Виктория. Мы создали CNAME для vpn.initech.office и т.д., Которые указывают на них.

Мы запускаем его в Linux, но он также работает и в OS X.

0

Я разработчик RubyDNS. Похоже, вы уже что-то запускаете на том же UDP-порту в сообщении об ошибке. Кроме того, похоже, что вы используете более старую версию RubyDNS. Я бы порекомендовал вам обновить его до последней версии.

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