code up

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

dnsmasq

SSL証明書が有効な状態でのテストを行いたいため、開発用のサーバーにdnsmasqを入れてサーバーIPを偽装してテストしている。

今のテスト環境では、/etc/dnsmasq.confをデフォルトから次の項目を変更して使用している。

domain-needed
bogus-priv
local=/mydomain.jp/
no-dhcp-interface=eth0
no-hosts
addn-hosts=/home/aws/hosts

この中にある謎の設定bogus-privについて調査した。

ちなみにdomain-neededgoogleというようなドットの無い名前の解決を行わないもの。localは指定されたドメインの名前解決にhostsファイルまたはDHCP(払い出したIPアドレスのホスト名)以外は使用しない。これ(local)がないとSOAなどのA以外の問合せで上位に参照しにいってしまうようだ(iPhoneからのアクセスでたまに上位のDNSにあるアドレスを返してしまうことがあった)。この例の場合はwww.mydomain.jpも上位に参照しなくなる。

さらにDHCP機能は使わないのでno-dhcp-interfaceを指定している。また、/etc/hostsファイルは参照して欲しくないため、no-hosts(/etc/hostsを参照しない)とaddn-hosts=/home/aws/hostsで独自hostsファイルを指定している。

さて、最後にbogus-priv

説明では"Never forward addresses in the non-routed address spaces."とあり、最初はなんのことか分からなかったけど、調べた結果から推測するに「IPアドレスからホスト名への検索(逆引き)を行う際、プライベートネットワークのアドレスは上位DNSサーバーに問い合わせない」ということではないかと。

プライベートアドレスとは、10.とか172.16.とか192.168.とかのLAN環境で付与することを推奨しているIPアドレスのこと。

以下にEC2環境での実行結果を貼り付けてあるが、これらのアドレスの結果がbogus-privのオン、オフで変わった。今回はdnsmasqをインターネット用に公開して使っているので、当然bogus-privはオンにしておくべき、ということが分かった。

bogus-privをコメントアウトしてある状態。

> 1.2.3.4
Server:         54.111.111.111
Address:        54.111.111.111#53

** server can't find 4.3.2.1.in-addr.arpa.: NXDOMAIN

> 10.1.1.1
Server:         54.111.111.111
Address:        54.111.111.111#53

Non-authoritative answer:
1.1.1.10.in-addr.arpa   name = ip-10-1-1-1.ap-northeast-1.compute.internal.

Authoritative answers can be found from:

> 192.168.1.1
Server:         54.111.111.111
Address:        54.111.111.111#53

Non-authoritative answer:
1.1.168.192.in-addr.arpa        name = ip-192-168-1-1.ap-northeast-1.compute.internal.

Authoritative answers can be found from:

bogus-privを有効にしてある状態。

> 1.2.3.4
Server:         54.111.111.111
Address:        54.111.111.111#53

** server can't find 4.3.2.1.in-addr.arpa.: NXDOMAIN

> 10.1.1.1
Server:         54.111.111.111
Address:        54.111.111.111#53

** server can't find 1.1.1.10.in-addr.arpa.: NXDOMAIN

> 192.168.1.1
Server:         54.111.111.111
Address:        54.111.111.111#53

** server can't find 1.1.168.192.in-addr.arpa.: NXDOMAIN

> 172.16.1.1
Server:         54.111.111.111
Address:        54.111.111.111#53

** server can't find 1.1.16.172.in-addr.arpa.: NXDOMAIN
関連記事
タグ:EC2 Amazon AWS dnsmasq
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。