パブリックDNSサーバーを作成しようとしていますが、私のDNSサーバーは内部ネットワークでのみ機能しますが、「nslookup example.com myDNSserverIP(パブリックIP)」を試みると失敗します。
Ubuntu 15.10-Server-32bit - dnsmasq 2.76で動作しています。
dnsmasq構成ファイル:
resolv-file=/etc/resolv.personal
interface=wlan0
listen-address=127.0.0.1
bind-interfaces
log-queries
そして解決。個人:
nameserver 'MyPublicIP'
nameserver 8.8.4.4
Gufwファイアウォールでポートを開いて、ポート53 updとtcpの入出力を許可し、ルータでも開きました。私を見ることができますか'は、ポート53が開いていてIP転送を許可することを意味します。
注:バインドを使用して作成しようとしましたが、maraDNSも失敗しました。
では、公開するにはどうすればよいですか?
答え1
バインディング9を使用し、再帰クエリに応答しないように設定します。これは、インターネットに1つの方法で応答し、ネットワークからの再帰的な応答を可能にするスプリットブレーン構成を介して実行できます。
dnsmasq
同じサーバーで実行するにはbind9
少し作業が必要です。おそらくあなたはdnsmasqが提供するインターフェイスをBind9が受信したくないでしょう。
外部ユーザーのためのバインディング9ビュー定義。
view "external-in" in {
// Our external (untrusted) view. We permit any client to access
// portions of this view. We do not perform recursion or cache
// access for hosts using this view.
match-clients { any; };
allow-query { none; }; // Secure queries
recursion no; // Secure cache
additional-from-auth yes;
additional-from-cache yes;
include "/etc/bind/named.conf.zones";