stratoにはいくつかのドメインがあります。ドメインを管理するために独自の外部DNSを設定したいと思います。
Stratoでこれを行うために、オプション「Domainverwaltung:NS-Recordsändern」を使用しました。この構成には2つのネームサーバーを提供する必要がありました。システムは私の構成を受け入れました。
DEBIAN9にプライマリ(マスター)とセカンダリ(スレーブ)のBIND9DNSがあります。
root@server1:/etc/bind# named -v
BIND 9.10.3-P4-Debian <id:ebd72b3>
MASTERの構成
/etc/bind/named.conf.options
acl trusted {
127.0.0.1;
xxx.xxx.xxx.43; # NS1
xx.xx.xx.107; # NS2
81.169.148.38; # Strato DNS
};
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
// forwarders {
// 0.0.0.0;
// };
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation auto;
listen-on port 53 { any; };
recursion no;
allow-query { any; };
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
allow-notify { trusted; };
allow-transfer { trusted; };
};
/etc/bind/named.conf.local
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
zone "my-domain.com" {
type master;
file "/etc/bind/forward.my-domain.com";
allow-transfer { xx.xx.xx.107; };
};
/etc/bind/forward.my-domain.com
$TTL 604800
@ IN SOA primary.my-domain.com. root.primary.my-domain.com. (
6 ; Serial
604820 ; Refresh
86600 ; Retry
2419600 ; Expire
604600 ) ; Negative Cache TTL
;Name Server Information
@ IN NS primary.my-domain.com.
@ IN NS secondary.my-domain.com.
;IP address of Your Domain Name Server(DNS)
primary IN A xxx.xxx.xxx.43
secondary IN A xx.xx.xx.107
;A Record for Host names
@ IN A xxx.xxx.xxx.43
www IN A xxx.xxx.xxx.43
;CNAME Record
ftp IN CNAME www.my-domain.com.
スレーブの構成
/etc/bind/named.conf.options
acl trusted {
127.0.0.1;
xxx.xxx.xxx.43; # NS1
xx.xx.xx.107; # NS2
81.169.148.38; # Strato DNS
};
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
// forwarders {
// 0.0.0.0;
// };
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation auto;
listen-on port 53 { any; };
recursion no;
allow-query { any; };
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
allow-notify { trusted; };
allow-transfer { trusted; };
};
/etc/bind/named.conf.local
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
zone "my-domain.com" {
type slave;
file "/etc/bind/forward.my-domain.com";
masters { xxx.xxx.xxx.43; };
};
/etc/bind/forward.my-domain.com
$TTL 604800
@ IN SOA primary.my-domain.com. root.primary.my-domain.com. (
6 ; Serial
604820 ; Refresh
86600 ; Retry
2419600 ; Expire
604600 ) ; Negative Cache TTL
;Name Server Information
@ IN NS primary.my-domain.com.
@ IN NS secondary.my-domain.com.
;IP address of Your Domain Name Server(DNS)
primary IN A xxx.xxx.xxx.43
secondary IN A xx.xx.xx.107
;A Record for Host names
@ IN A xxx.xxx.xxx.43
www IN A xxx.xxx.xxx.43
;CNAME Record
ftp IN CNAME www.my-domain.com.
これをテストするために私は使用しました:
Dig
~$ Dig my-domain.com @xxx.xxx.xxx.43
; <<>> Dig 9.11.3-1ubuntu1.2-Ubuntu <<>> my-domain.com @xxx.xxx.xxx.43
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31536
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;my-domain.com. IN A
;; ANSWER SECTION:
my-domain.com. 604800 IN A xxx.xxx.xxx.43
;; AUTHORITY SECTION:
my-domain.com. 604800 IN NS secondary.my-domain.com.
my-domain.com. 604800 IN NS primary.my-domain.com.
;; ADDITIONAL SECTION:
primary.my-domain.com. 604800 IN A xxx.xxx.xxx.43
secondary.my-domain.com. 604800 IN A xx.xx.xx.107
;; Query time: 16 msec
;; SERVER: xxx.xxx.xxx.43#53(xxx.xxx.xxx.43)
;; WHEN: Tue Oct 16 14:42:09 CEST 2018
;; MSG SIZE rcvd: 136
そしてNSLOOKUP:
~$ nslookup my-domain.com xxx.xxx.xxx.43
Server: xxx.xxx.xxx.43
Address: xxx.xxx.xxx.43#53
Name: my-domain.com
Address: xxx.xxx.xxx.43
しかし、私のNS NSのプロバイダーは、次のように答えています。
掘る:
~$ Dig my-domain.com
; <<>> Dig 9.11.3-1ubuntu1.2-Ubuntu <<>> my-domain.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7286
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;my-domain.com. IN A
;; ANSWER SECTION:
my-domain.com. 69 IN A 81.169.145.157
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Tue Oct 16 14:44:23 CEST 2018
;; MSG SIZE rcvd: 58
NSLOOKUP:
~$ nslookup my-domain.com
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: my-domain.com
Address: 81.169.145.157
Name: my-domain.com
Address: 2a01:238:20a:202:1157::
Stratoは次のように述べています。「DNSの分散構造のため、これらの設定への変更は、アクティブ化してから24時間後まで完全にアクティブ化されないことに注意してください。」
しかし、24時間後でも、私のチェックは私のNSサーバーを指していません。考えられる問題を見つけるために実行できるテストはありますか?
Stratoも指摘しています:(申し訳ありませんが自動翻訳) オリジナルはこちら 。
レコードの設定(専用サーバーのみ)
セカンダリネームサーバーを使用すると、プライマリネームサーバーに障害が発生した場合にバックアップを作成できます。これにより、ドメインに引き続き到達できるようになります。プライマリネームサーバーとセカンダリネームサーバーは冗長であるため(ゾーン転送により、ドメインに関してすべての構成が同期されます)、セカンドネームサーバーはAレコード、MXレコードなどのドメインの正しいDNSレコードを発行できます。ゾーンSTRATOセカンダリネームサーバー81.169.148.38のIPアドレスの転送を許可する必要があります。このIPアドレスは静的であるため、将来変更する必要はありません(BINDの場合、たとえばallow-transferを介して)。
STRATOセカンダリネームサーバーを使用する場合、2つの独自のネームサーバーを操作する必要はありません。プライマリネームサーバーからsns.serverkompetenz.deへのゾーン転送を許可すると、プライマリネームサーバーに設定したドメインのDNS構成が取得されます。プライマリネームサーバーに障害が発生した場合でも、ドメインに到達できます。
ドメインゾーンでは、sns.serverkompetenz.deもNSセットのネームサーバーとしてリストされている必要があります。
Digの+ traceオプションを共有してくれてありがとうguzzijason。
独自のネームサーバーをテストする別のオプション DENIC-> SERVICE-> TOOLS-> NAST 。これは denic website のサービスとしてです。
ここで、設定するドメイン、ネームサーバー1、ネームサーバー2、およびネームサーバーのIPを入力できます。ここで結果を参照してください:
これは私の設定が正しいことを示していました。だから私はそのトピックをもっと深く掘り下げることができた。
私の問題は次のとおりです。ドメインプロバイダーStratoのWebインターフェイスで、上記のxxx.xxx.xxx.43およびxx.xx.xx.107のルートサーバーからIPを入力していました。
Stratoの正しい構成は、stratoサーバーの場合は「h1234567.stratoserver.net」、1und1サーバーの場合は「b123123.online-server.cloud」のようにサーバーDNS-HOSTNAMEを入力することです。
多分これは誰かを助けるでしょう...
Dig +trace my-domain.com.
を実行することから始めることができます。これはROOT-SERVERSネームサーバーから始まり、NS委任パス(うまくいけば)を自分のネームサーバーまでたどります。NS =各ポイントで返されるレコードは、予想されるレコードです。たとえば、これは私のドメインの(フィルタリングされた)トレースがどのように見えるかです。
$ Dig +trace guzzijason.com. | grep -E 'IN\s*NS'
. 509129 IN NS b.root-servers.net.
. 509129 IN NS h.root-servers.net.
. 509129 IN NS g.root-servers.net.
. 509129 IN NS i.root-servers.net.
. 509129 IN NS m.root-servers.net.
. 509129 IN NS k.root-servers.net.
. 509129 IN NS f.root-servers.net.
. 509129 IN NS j.root-servers.net.
. 509129 IN NS e.root-servers.net.
. 509129 IN NS c.root-servers.net.
. 509129 IN NS d.root-servers.net.
. 509129 IN NS l.root-servers.net.
. 509129 IN NS a.root-servers.net.
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
guzzijason.com. 172800 IN NS ns01.guzzijason.com. # Note: delegation NS record hosted by gtld-servers
guzzijason.com. 172800 IN NS ns02.guzzijason.com. # Note: delegation NS record hosted by gtld-servers
guzzijason.com. 7200 IN NS ns01.guzzijason.com. # authoritative NS record served by guzzijason.com nameservers
guzzijason.com. 7200 IN NS ns02.guzzijason.com. # authoritative NS record served by guzzijason.com nameservers
また、アップストリームの委任レコードと、権限のあるネームサーバーによって提供されるレコードについても説明しました。