web-dev-qa-db-ja.com

SnowLeopardでオフライン時にローカルホストDNSサーバーを使用するにはどうすればよいですか

MacでローカルDNSサーバーをセットアップし、それを使用してローカルホストでワイルドカードサブドメインをサーバー化するために、これらの手順に従いました。それは本当に素晴らしいことです:

http://mikeferrier.ca/2011/04/04/setting-up-wildcard-dns-on-localhost-domains-on-osx/

ただし、1つの弱点があります。オフラインで作業しようとしていることがあり、DNSサーバーリストに127.0.0.1とのライブ接続がある場合にのみ、ローカルBINDインスタンスが参照されます。

この効果をオフラインで実現する方法はありますか?

5
Ross M Karchner

そのローカルドメインに127.0.0.1を使用するようにリゾルバー構成を設定する必要があります。

Sudo mkdir /etc/resolver
Sudo vim /etc/resolver/local

/etc/resolver/local構成に次の行を追加します。

nameserver 127.0.0.1
search_order 1

構成ファイル「local」の名前は、検索ドメインの名前です。 (私のものはたまたま「dev」です。そのチュートリアルに従った場合、あなたのチュートリアルは「local」になります。)

次に、システム環境設定/ネットワーク構成に移動し、127.0.0.1用に設定したカスタムDNSサーバーを削除できます。上記のリゾルバー構成は、ローカルホストDNSが「ローカル」ドメインについてのみ参照されることを意味します。

この役立つ詳細 serverfault answer

2
Andrew Vit

何かが足りないかもしれませんが、/ etc/hostsファイルを見落としているようです。 Unixオペレーティングシステムは、DNS要求を行う前に/ etc/hostsを参照します。 localhostは/ etc/hostsで指定されているため、127.0.0.1に解決されます。

http://en.wikipedia.org/wiki/Hosts_%28file%29

/ etc/hostsは任意のテキストエディタで編集できますが、root権限が必要です。

Sudo open -a TextEdit /etc/hosts

127.0.0.1 one.mydomain.local
127.0.0.1 two.mydomain.local
127.0.0.1 example.com subdomain.example.com
1
solo

スレッド ハードウェアハッキングのほんの少し== Wi-Fiなしハードウェアループバックデバイス (Amazonでは$ 6.79)の使用を提案しています。

これは、OSXをだまして有効なネットワーク接続があると思わせるための解決策かもしれません。

DHCPサーバーがないため、これには静的IPアドレスも使用する必要があります。

image

1
harrymc