![BIND / Apache 設定が機能しないのはなぜですか?](https://rvso.com/image/36007/BIND%20%2F%20Apache%20%E8%A8%AD%E5%AE%9A%E3%81%8C%E6%A9%9F%E8%83%BD%E3%81%97%E3%81%AA%E3%81%84%E3%81%AE%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
Apache Web サーバーで BIND 構成を設定しようとしています。実現しようとしているのは、URL www.exampler.net を使用して、Apache Web サーバーの /var/www/html フォルダーにあるコンテンツにアクセスすることです。これは、IP アドレスが 192.168.1.4 の 1 台のマシンで実行しています。有線接続がオンのときに www.exampler.net を検索すると、Google のネームサーバーしか見つかりませんが、有線接続をオフにすると、ns1.exampler.net がすぐに見つかります。なぜでしょうか。さらに、ブラウザーに www.exampler.net と入力しても、/var/www/html にあるローカル Web サイトにリダイレクトされませんが、192.168.1.4 と入力するとリダイレクトされます。
ローカル
zone "exampler.net"{
type master;
file "/etc/bind/zones/db.exampler.net";
};
ゾーンをバインドするには、次のコマンドを使用します。
;
; exampler.net = domain name
;
$TTL 604800
exampler.net. IN SOA ns1.exampler.net. admin.localhost. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; name servers
exampler.net. IN NS ns1.exampler.net.
; ip addresses
ns1 IN A 192.168.1.4
www IN A 192.168.1.4
/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
ServerName exampler.net:80
ServerAlias www.exampler.net
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
私は Ubuntu 14.04.1 を使用しています。これをローカルでのみ実行し、LAN サーバー上のホストが指定されたドメイン名を使用して、Apache/NS サーバーにある Web サイトにアクセスできるようにします。よろしくお願いします。
答え1
DNS リゾルバが一致するものを見つけると、検索を停止します。有線接続をオフにすると、通常の DNS サーバーにアクセスできなくなる可能性があるため、Ubuntu はローカル DNS サーバーに到達するまで検索を続けます。
www.exampler.net
は、 に解決される登録済みドメインのようです64.233.171.121
。Chrome で見ると、誰かのブログのようです。もっとユニークなものを使用したほうがよいかもしれません。
あるいは、BINDをフォワーダーとして設定し、ホスト上でそれがのみ使用すべきネーム サーバー。named
権限があると思われるゾーンについては上流サーバーにクエリを実行しません。
おそらく、別の名前を選ぶほうが簡単でしょう。