개발을위한 로컬 DNS TLD 만들기 VM을 가지고있어 고통이다. PHP를 사용하면

나는 웹 개발자를 많이, 주로 RoR과 PHP를하고, 내 dev 환경을 보유하고 그들에 여러 클라이언트를 처리하는 VM을 가지고있어 고통이다. PHP를 사용하면 하위 디렉토리를 만들지 만 RoR을 사용하면 약간의 어려움이 있습니다.

내가 뭘하고 싶은지는 특정 TLD에 대한 쿼리를 내 VM / 서버로 리디렉션하는 로컬 DNS 서버를 만드는 것입니다.

TLD는 다음과 같이 보입니다. *.php.dev PHP VM에 가서 mysql.dev MySQL 서버를 가리킨다.

로컬 BIND 서버로 고생했지만 정말 고통 스럽습니다. 당신은 BIND를위한 가벼운 대안을 가지고 있으며, 루비 / 파이썬이 선호된다.

나는 RubyDNS를 시도했지만 eventmachine은 매번 충돌했다.

마지막 사항 : MacBook Pro에서 OSX 10.6을 실행합니다.

편집하다 나는 dnsmasq를 시도했지만 다른 문제가있다. OSX는 캐시 할 바인드 데몬을 가지고있다. 나는 무능하게하는 방법을 조사 할 것이다.



답변

우리는 사용 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, victoria라고 불리는 기계를 가지고 있습니다. 우리는 vpn.initech.office에 대한 CNAME을 설정 했으므로 CNAME을 가리 킵니다.

우리는 Linux에서 실행하지만 OS X에서도 실행됩니다.


답변

저는 RubyDNS의 개발자입니다. 오류 메시지로 이미 동일한 UDP 포트에서 뭔가를 실행하고있는 것 같습니다. 또한 이전 버전의 RubyDNS를 사용하고있는 것처럼 보입니다. 최신 버전으로 업그레이드하는 것이 좋습니다.


답변