web-dev-qa-db-ja.com

DNSホストを切り替える前に、新しいネームサーバーをテストします

ネームサーバーのホストを切り替えます。 DNSレコードは、古いネームサーバーと新しいネームサーバーの両方に設定されます。 SOAに切り替える前に新しいものをテストしたいのですが、コミットする前にそれらをテストするための最良の方法は何ですか?

私の Dig スキルが弱い。理想的には、HTTPおよびHTTPSサービスが正しく機能していることを確認できるように、ローカルマシンにドメインの新しいネームサーバーを使用するように強制します。

3
Meltemi

ネームサーバーのホストを切り替えます。 DNSレコードは、古いネームサーバーと新しいネームサーバーの両方に設定されます。 SOAに切り替える前に新しいものをテストしたいのですが、コミットする前にそれらをテストするための最良の方法は何ですか?

一般に、見た目が正しく、両方の場所に同じエントリがある場合は、SOAに切り替えるだけで、それほど心配する必要はありません。もちろん、古いものを削除したり削除したりしないでください。切り替えが行われてから少なくとも24時間後までのDNSエントリ。世界中のサーバーの98%が変更をすぐに受け入れますが、TTLを尊重しないあらゆる種類のくだらないDNSサーバーが存在することを覚えておく必要があります。ほこりが落ち着いたら、ただ急いでそれを取り除き、ルックアップに失敗するよりも、待ってから捨てる方がよいでしょう。

私の Dig スキルが弱い。理想的には、HTTPおよびHTTPSサービスが正しく機能していることを確認できるように、ローカルマシンにドメインの新しいネームサーバーを使用するように強制します。

両方のDNSサーバーにデータが設定されている場合に実行できるこの最も簡単な方法は、システムのローカルデフォルトだけでなく、Digを使用して特定のDNSサーバーにクエリを実行することです。

たとえば、このクエリは、OpenDNSサーバー上のホスト名の権限のあるNS(namservers)のクエリを実行します。

Dig @208.67.222.222 NS example.com
Dig @208.67.222.220 NS example.com

そして、これにより、そのDNSサーバー上のそのドメイン名のレコードが提供されます。 NSオプションのみがANYに置き換えられていることに注意してください。

Dig @208.67.222.222 ANY example.com
Dig @208.67.222.220 ANY example.com 

同様に、これは同じNSクエリを実行しますが、GoogleのDNSサーバーを使用します。

Dig @8.8.8.8 NS example.com
Dig @8.8.4.4 NS example.com

また、これにより、他のDNSサーバー上のそのドメイン名のレコードが提供されます。

Dig @8.8.8.8 ANY example.com
Dig @8.8.4.4 ANY example.com

いくつかのトップティアDNSサーバーを使用してこれを実行し、DNS変更が発生したときにそれらがDNS変更を尊重していることを確認できます。

一般に、SOA TTL時間は約900秒(別名:15分)です。したがって、これについて確信が持てない場合は、次のように設定することをお勧めします。 SOA TTL古いDNSサーバーでは300(別名:5分))、2時間ほど待ってから、切り替えを行います。5分の変更十分に迅速に向きを変えることができるので、何か不快なことが起こった場合でも、あまり心配することなく、古いDNSサーバーにすばやく切り替えることができます。

一般に、この種のものはリクエストとTTLのダンスであるため、フローの忍耐が必須です。しかし、私が言ったように、両方の設定ですべてのエントリが正しければ、問題ないはずです。 300秒のSOA TTLは、単純で無害な提案です。

6
JakeGould