このスレッドは未解決です(解決したらこちらで解決済にしてください)
<<戻る

プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/24(Tue) 22:45
名前: セブン
URL:
現在固定IPアドレス1つで自宅サーバーを構築しています。

VirtualHost環境の管理をサーバー内で完結したかったため、Bindサーバーを構築しました。

ローカルネットワークからはサーバー指定をしても名前解決することができます。

また、無料のセカンダリDNSへの転送は行うことができます。

ただ、外部からの名前解決をプライマリサーバーを指定した上で行うことができません。
セカンダリからは名前解決を行うことができます。

ルーターのポート解放は行われています。

当方環境は以下の通りです

CentOS7
Bind9.9
セカンダリDNS http://www.maihama-net.com/#

freenomでNameServerの指定を3つし、一つは別で取得したドメイン名を、残りの2つはセカンダリのドメイン名を指定しました。

named.confは以下のです


options {
version "unknown";
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
hostname "A.tk";
allow-query { localhost; localnets;};
allow-recursion { localhost; localnets; };
allow-query-cache { localhost; localnets; };
forwarders{ 8.8.8.8; 8.8.4.4; };
allow-transfer {
CCC.DDD.EEE.FFF;
GGG.HHH.III.JJJ;
};
transfers-in 100;
recursion yes;

dnssec-enable yes;
dnssec-validation yes;

notify yes;
};

logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
category lame-servers { null; };
};

view "internal" {
match-clients { localhost; localnets; };
match-destinations { localhost; localnets; };

zone "." IN {
type hint;
file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

include "/etc/named/named.A.zone";
zone "B.ml" {
type master;
file "/var/named/B.ml.internal.hosts";
};
};

view "external" {
// 外部向け設定
match-clients { any; };
allow-query { any; };
allow-transfer {
CCC.DDD.EEE.FFF;
GGG.HHH.III.JJJ;
};
notify yes;
include "/etc/named/named.A.zone.wan";
zone "B.ml" IN {
type master;
file "/var/named/B.ml.external.hosts";
};
};

レコードの方は以下になります。

$ORIGIN B.ml.
$TTL 3600 ; 1 hour

@ IN SOA A.tk. example\.example.com. (
2017102220
3600
900
604800
86400 )
@ IN NS A.tk.
@ IN NS ns1.maihama-net.com.
@ IN NS ns3.maihama-net.com.
@ IN A XXX.XXX.XXX.XXX
@ IN MX 10 mail.B.ml.
@ IN TXT "v=spf1 ip4:XXX.XXX.XXX.XXX ~all"
* IN A XXX.XXX.XXX.XXX
mail IN A XXX.XXX.XXX.XXX


A.tk 一つ目のドメイン:管理はfreenom
B.ml 2つ目のドメイン:このドメインを管理したいです。
XXX.XXX.XXX.XXX 当方の固定IPです。

外部からの接続テストは
https://www.cman.jp/network/support/go_dig.cgi
で行い
DNSサーバーを指定してdigを行ったところ、

; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7 <<>> @A.tk B.ml
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached

と帰ってきます。

一応セカンダリを通じて問題はないのですが、プライマリをどうにかして解決したいです。

皆様の知恵を拝借いただけると嬉しいです。よろしくお願いします。
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/25(Wed) 03:10
名前: stranger
URL: http://ja.528p.com/
A.tkのDNSサーバはどこにあるの?
B.mlを登録した時のdnsサーバを引きにいくんだけど
その指定は合ってます
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/25(Wed) 16:38
名前: セブン
URL:
A.tkのDNSサーバーはfreenomにあります。

将来的にはA.tkも自分で管理したいのですが、現在運用中なため、B.mlを取得してそちでDNSサーバーの構築を試しています。
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/25(Wed) 16:48
名前: セブン
URL:
連続投稿申し訳ないです。

現在の形は

クライアントがB.mlの名前解決を行いに行く

freenomのDNSサーバーがB.mlのNameServerとしてA.tkとその他二つを返す

freenomのDNSサーバーがA.tkのAレコードでXXX.XXX.XXX.XXXを返す

自宅サーバーのDNSサーバーがB.mlのAレコードでXXX.XXX.XXX.XXXを返す

という形だと考えています。

冗長な感じもしています。グルーレコード的なものをfreenomのA.tkが行っていると考えているのですが、これがおかしいのですかね?

digの結果がなぜ帰ってこないのでしょうか?
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/26(Thu) 05:29
名前: stranger
URL: http://ja.528p.com/
dig ns tk @a.root-servers.net
のように dnsのrootサーバから順にたどってみる
;; ADDITIONAL SECTION:
a.ns.tk. 172800 IN A 194.0.38.1
b.ns.tk. 172800 IN A 194.0.39.1
c.ns.tk. 172800 IN A 194.0.40.1
d.ns.tk. 172800 IN A 194.0.41.1
a.ns.tk. 172800 IN AAAA 2001:678:50::1
b.ns.tk. 172800 IN AAAA 2001:678:54::1
c.ns.tk. 172800 IN AAAA 2001:678:58::1
d.ns.tk. 172800 IN AAAA 2001:678:5c::1

dig ns A.tk @194.0.38.1
dnsはtree構造だから順々にサブドメインを正引きしてみる
同じように
dig ns ml @a.root-servers.net

>自宅サーバーのDNSサーバーがB.mlのAレコードでXXX.XXX.XXX.XXXを返す
自分のDNSサーバでネームサーバにB.mlが指定されていないのはなぜか?
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/26(Thu) 15:18
名前: セブン
URL:
返答ありがとうございます。

>>自宅サーバーのDNSサーバーがB.mlのAレコードでXXX.XXX.XXX.XXXを返す
>自分のDNSサーバでネームサーバにB.mlが指定されていないのはなぜか?

A.tkとB.mlの実態が同じなため、どちらか片方が書いてあれば良いと考えたのですが・・・



ルートサーバーから辿ってみました。結果、ローカル環境と外からの環境とやはり最後の部分で違った返答を返してきました。

中からだと

; <<>> DiG 9.8.3-P1 <<>> ns B.ml @A.tk
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39255
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;B.ml. IN NS

;; ANSWER SECTION:
B.ml. 3600 IN NS A.tk.
B.ml. 3600 IN NS ns3.maihama-net.com.
B.ml. 3600 IN NS ns1.maihama-net.com.

;; ADDITIONAL SECTION:
A.tk. 86400 IN A 192.168.1.253



bindのinternalが通ってる感じですが、外からだと

; <<>> DiG 9.8.3-P1 <<>> ns B.ml @A.tk
;; global options: +cmd
;; connection timed out; no servers could be reached

となって、externalが通っていない感じです。

しかし、無事にセカンダリーには転送されていて、そちらでは名前解決できるのです・・・

一個上は↓です

; <<>> DiG 9.8.3-P1 <<>> ns B.ml @a.ns.ml
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36691
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 3, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;B.ml. IN NS

;; AUTHORITY SECTION:
B.ml. 300 IN NS A.tk.
B.ml. 300 IN NS ns3.maihama-net.com.
B.ml. 300 IN NS ns1.maihama-net.com.
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/27(Fri) 03:59
名前: stranger
URL: http://ja.528p.com/
>hostname "A.tk";
とオプション指定されていますが
このDNSサーバがA.tkサーバじゃないですよね
(このhostnameはhostname.bindというクエリーに対して返す値)
実際のA.tkサーバでB.mlの設定がされていないと正引き出来ないんじゃないの
maihama-net.comではスレーブタイプゾーンに設定されてる

蛇足
dig @DNSサーバ chaos hostname.bind txt
dig @DNSサーバ chaos version.bind txt
のように調べられる
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/27(Fri) 06:09
名前: セブン
URL:
>>hostname "A.tk";
>>とオプション指定されていますが
>>このDNSサーバがA.tkサーバじゃないですよね
>>(このhostnameはhostname.bindというクエリーに対して返す値)
>>実際のA.tkサーバでB.mlの設定がされていないと正引き出来ないんじゃないの
>>maihama-net.comではスレーブタイプゾーンに設定されてる

設定しているサーバーに対して複数のドメインを割り当てているので、ある意味DNSサーバーはA.tkです。

A.tkにB.mlを外部から問い合わせるとタイムアウトになるのです。

内部・ローカルネット(192.168.1.~~)から問い合わせると無事帰ってきます。

allow-queryやmatch-clientを疑ったのですが、これではないのですかね?
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/27(Fri) 10:25
名前: セブン
URL:
自己解決できそうな糸口が見つかりました。

使用しているISP(ASAHI-NET)でIP53Bが施行されていため、53番ポートのUDP接続が不可となっていた様子です。

解決したら再び書き込みます。
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/27(Fri) 15:55
名前: stranger
URL: http://ja.528p.com/
>B.ml. 3600 IN NS A.tk.
と設定されている場合
A.tkをドメイン名とするDNSサーバをさします
freenomはA.tkを正引きする設定をしているだけなのでは?
A.tkをfreenomに任せるなら
B.mlをドメイン名に持つDNSサーバを立ち上げてb.mlを名前解決すればいいのでは?
記事編集 編集
Re: プライマリのみ名前解決できない このメッセージに返信する
日時: 2017/10/27(Fri) 22:40
名前: セブン
URL:
やはり、Asahi-netのIP53Bの影響でした。


解除申請をすると外部からの問い合わせが可能になりました。
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -