🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
DNS

DNSとは、Domain Name Systemのことで、インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名と、IPアドレスとの対応づけを管理するシステムです。DNSのデータベースは、IPアドレスの4つの数字を通知するDNSサーバーで構築されており、IPアドレスをドメイン名から引き出す機能やドメイン名に関するメールサーバ情報を取り扱っています。

Q&A

解決済

5回答

1444閲覧

DNS浸透問題について

antiwararug

総合スコア35

DNS

DNSとは、Domain Name Systemのことで、インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名と、IPアドレスとの対応づけを管理するシステムです。DNSのデータベースは、IPアドレスの4つの数字を通知するDNSサーバーで構築されており、IPアドレスをドメイン名から引き出す機能やドメイン名に関するメールサーバ情報を取り扱っています。

0グッド

1クリップ

投稿2020/12/11 09:43

お世話になっております。
DNS切替を以下のような手順で行います。

【前提手順】
①新規サーバの構築、データ移行。
②旧クラウドサーバのDNSから、レコードのIPを変更してトラフィックを新規サーバに向ける。
③新規サーバにてDNSサーバの構築、ホストゾーンデータを構築。
④ドメイン管理事業者にて指定しているネームサーバを、③で作成したものに切替。

【前おき】
②の段階では旧環境のネームサーバを使用し、トラフィックのみ新規サーバに向けています。
④でネームサーバを切り替え、完全に移行させます。
この場合、②の作業後と④の作業後に、切り替わりまでのタイムラグが発生するかと思います。
完全に移行するまでの目安の時間というのは色々なところで書かれていますが、大体5日程度かと認識しています。

【質問】
・浸透期間について、幾つか調べたのですが、具体的な原因、対策法等の情報が見つけられません。
これについては明確な答えは無く、運の要素が大きいのでしょうか?

・目安の5日程度という期間についてですが、海外のサーバ等、遠いところまで完全に浸透しきるのに5日程度というだけで、例えば国内であれば比較的早く切り替わるものなのでしょうか?

・DNSサーバ移行の浸透率など、現段階では何%移行しているか、というような確認方法はありますか? 移行完了の判断基準が分からないのですが、例えば5日程度という目安があれば、5日後に移行完了したものと判断してしまうのでしょうか・・。

以上となります。
浸透問題に関して、色々と情報がありどれが正解かが分かりません。
明確な時間ではなく経験に基づく感覚(比較的すぐに切り替わった等)でも構いませんので、ご回答いただけますと幸いです。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

ベストアンサー

TTL以外には分かる事は無い
よって

・浸透期間について、幾つか調べたのですが、具体的な原因、対策法等の情報が見つけられません。

これについては明確な答えは無く、運の要素が大きいのでしょうか?

YES

捕捉
冒頭に書いたTTLの問題なので、自分でDNSレコード書ける環境なら話は別です

・目安の5日程度という期間についてですが、海外のサーバ等、遠いところまで完全に浸透しきるのに5日程度というだけで、例えば国内であれば比較的早く切り替わるものなのでしょうか?

距離は関係無い

・DNSサーバ移行の浸透率など、現段階では何%移行しているか、というような確認方法はありますか? 

ない

投稿2020/12/11 09:52

編集2020/12/11 10:00
hentaiman

総合スコア6426

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2020/12/11 09:53

運と捉え方は正確ではないが、そういう理解でOKよ
antiwararug

2020/12/11 10:03

ご回答いただきありがとうございます。 ちなみに現環境で設定しているレコードのTTLは60と比較的短いのですが、この場合は早めに切り替わる事が見込めるのでしょうか。 レコードは書ける環境なので、TTLを変更する事は可能です。
hentaiman

2020/12/11 10:06

見込めるとかの表現は気になるけど、そういう事になります
guest

0

・浸透期間について、幾つか調べたのですが、具体的な原因、対策法等の情報が見つけられません。
これについては明確な答えは無く、運の要素が大きいのでしょうか?

そんなことはありません。以下のスライドをご覧ください。「正しい」引っ越し方法はスライドの10以降に書いてあります。

DNS浸透の都市伝説を斬る

問題が起こるのは、(1)方法が正しくない、(2)正しい運用ができない環境を使っている、(3)bindのバーションが古い、ような場合です。

投稿2020/12/11 11:46

ockeghem

総合スコア11705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

antiwararug

2020/12/14 10:59

ご回答いただきありがとうございます。 仕組みについて理解できました。
guest

0

完全に理解するにはDNSの仕組みそのもについての正確な知識が必要です。

まず、単にレコードを変更する場合についてです。あるAレコードのIPアドレスを別のIPアドレスに変更する場合、世界中にある全ての機器が新しいレコードを参照するようになるには、古いレコードに設定されていたTTLだけの時間が必要です。なぜなら、TTLの時間だけ、組織内のDNSキャッシュサーバーやDNSを参照するあらゆる端末がキャッシュとして保持するからです。もし、レコード変更する直前にDNSを取得した端末があった場合、その端末がキャッシュを使わずに再度問い合わせするのはTTL時間後です。だから、TTLの時間が過ぎないと、世界中にある全ての機器が新しいレコードを参照するとは言えないのです。

さて、DNSサーバー自体の変更、つまり、NSレコードの変更の場合、自体はもっと複雑です。実際のレコードまで同時に変更するとなると、もっと多くの事を考慮する必要があります。まず、NSレコード自体の反映が終わらないと、全てのDNSキャッシュサーバーが新しいDNSサーバーに問い合わせを行うとは限らないという問題がおきます。それから、新しいDNSサーバーのレコードが再度TTL時間分だけ反映されます。また、ドメインのNSレコードの変更というのは、かなり負荷が大きい処理です。たとえば、"teratail.com"のNSレコードを変更する場合、gTLDのDNSサーバーへの変更になるのですが、このgTLDのDNSサーバーは非常に大きく、たくさん存在します。レジストラへ依頼しても、レジストラからgTLDのDNSサーバーへ設定変更以来、そして、設定変更後に、全てのgTLDのDNSサーバーへの浸透もそれなりにかかると予想されます。

teratail.comのNSレコードを変更し、新しいDNSサーバーで新しいAレコードを見せるといった場合を考えましょう。

  1. gTLDレジストラにNSレコードの変更を依頼します。
  2. (数時間から数時間後)gTLDレジストラはgTLDのDNSサーバーに変更を依頼します。
  3. gTLDのプライマリDNSサーバーでteratail.comのNSレコードが変更されます。なお、AレコードのTTLは2日間です。
  4. (さらに数秒から数時間後)gTLDのセカンダリDNSサーバーにteratail.comのNSレコードが反映されます。(gTLDのDNSサーバーはかなり巨大なため、どれぐらいで同期されるか不明です)
  5. (さらに2日後)全世界のDNSキャッシュサーバーはteratail.comの新しいNSレコードを取得するようになります。この時初めて、あらゆるDNSキャッシュサーバーが新しいDNSサーバーを見に行って、新しいAレコードを所得します。なお、AレコードのTTLは100秒です。
  6. (さらに100秒後)全世界の端末が新しいteratail.comのAレコードを持つことになります。

レジストラへの依頼からトップドメインのDNSサーバーへどれだけ早く変更が反映されるかはレジストラやドメインによって異なると思われるため、一概にはいません。しかし、NSレコードは、基本的に長めにTTLが設定されているため、一緒に変更する場合はそれなりに変更時間が必要になります。

その他、Aレコードなどに設定しているTTLは場合によって異なるのでちゃんと計算する必要があります。トップドメインDNSサーバーへの設定さえ終わっていれば、世界中に反映するまでどれぐらいかかるかはちゃんと計算できます。運などと言う要素はありません。


通常、NSレコードを変更する場合、旧DNSサーバーと新DNSサーバーで同じレコードを持つようにします(可能であればゾーン転送します)。その場合は、どちらのDNSサーバーを見に行っても同じなので、NSレコードの反映時間は気にする必要は無くなります。少なくとも、私はそのような方法でしかNSレコードの変更をしたことはありませんので、上のことは間違っているかも知れません。

投稿2020/12/11 11:17

raccy

総合スコア21737

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

antiwararug

2020/12/14 10:59

詳細にご回答いただきありがとうございます。 大変参考になりました。
guest

0

・浸透期間について、幾つか調べたのですが、具体的な原因、対策法等の情報が見つけられません。

これについては明確な答えは無く、運の要素が大きいのでしょうか?

TTLに従わずキャッシュを保持しつづけてしまうソフトウェア又は通信機器が存在するらしいので、古いDNSサーバーにトラフィックが向かってしまうということがありえます。

それが故意なのか、不具合なのかを、検証することは現実的に不可能なので「明確な答えはない」という認識で合ってると思います。

投稿2020/12/11 11:12

take88

総合スコア1467

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

antiwararug

2020/12/14 11:01

ご回答いただきありがとうございます。 色々な情報はあるにせよ、どうなるか分からないという要素は確実に含んでいそうですね。
guest

0

以前は切り換え後2週間くらい並行稼働が望ましいと言われていた記憶があります。
新規ならキャッシュされてないので速いと思いますが
切り換えでしたらある程度リスクは織り込んでおいたほうがよいでしょう

投稿2020/12/11 09:55

yambejp

総合スコア116694

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

antiwararug

2020/12/11 10:05

ご回答いただきありがとうございます。 やはり並行稼働は必須という事ですね。 ちなみに私は②のトラフィック移行後に並行稼働期間を設けず、そのまま④まで作業する想定でいました。
yambejp

2020/12/11 10:15

そこは結局T.S.さんのおっしゃる「運」ということです。 契約するレジストラは1つでも、すべてのサービスがキャッシュせずに 当該レジストラにたどり着くわけではないでしょうからね 逆にラウンドロビンするような場合もありますから 確実な方法というのはなかなか難しいかもしれません
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問