2014-01-13 9 views
29

Webアプリケーションを別のサーバーに移動しています。数日後に、新しいIPの場所を指すようにDNSをリフレッシュします。ウェブサイトを強制的にDNSリフレッシュする方法はありますか?

残念ながら、一部のブラウザとSOは、ユーザーが古いIPの場所を指すようにするDNSキャッシュを保持しています。ユーザーはルーキーで、DNSキャッシュを手動でリフレッシュすることはありません。この変更後の最初の数週間で多くのユーザーを失うことになります。

このDNSキャッシュを強制的に更新して、最終的なユーザーには見えないようにする方法はありますか?

+3

Googleでは、DNSキャッシュをフラッシュすることを許可しています。https://developers.google.com/speed/public-dns/cache –

答えて

23

私が知る限り、このような強制的な更新は直接できません。エントリを変更する前にTTL(Time-To-Live)値を減らすことで、ネームサーバーサービスプロバイダが許可している場合は、DNSのダウンタイムを短縮できます。

ここにはguide for less painful DNS changesがあります。

あなたのクライアントと信頼できる(起点)ネームサーバの間にあるすべてのネームサーバがあなたのTTLを強制するわけではありませんが、彼ら自身のキャッシング時間があるかもしれません。

8

ユーザーに強制的にDNSキャッシュをクリアする方法はありません。しばしばISPのOS上で実行されます。更新されたDNSが伝播するまでに24時間以上かかることはありません。あなたの最善の選択肢は、Apacheでmod_proxyのようなものを使用して、新しいサーバーへのリバースプロキシを作成することで、ユーザーにシームレスに移行させることです。そうすれば、古いサーバーへのすべてのクエリが正しい結果を返すようになり、数日後にリバースプロキシを自由に削除することができます。

+0

返信用のHTMLユニバーサルコードはありませんか? Like 404 ... –

+0

最も近いオプションは301 Redirect Moved Permanentlyです。これは実際にドメインスイッチでのみ適用されます。ユーザーが強制的にDNSキャッシュをクリアすることはできません。また、多くの場合、ISPキャッシュとしても望むことができませんでした。私が見ることができる最良の選択肢は、古いサーバーから新しいサーバーへのプロキシを一時的にリバースすることで、そのドメインへのすべてのクエリが新しいサーバーに送信されるようにすることです。 – Jammerx2

+7

変更を加える前に、数日前にDNSのTTLを下げることをお勧めします。これによりISPはDNSの更新を頻繁に確認して、移行がスムーズになるようにします。可能な限り低い値にTTLを設定する必要があります(変更が行われてからしばらくしてからTTLを変更してください)。 – Jammerx2

0

両方のサーバーでWHMが使用されている場合は、時間をゼロにすることができます。新しいサーバーにドメインを作成し、すべての準備を整えます。前のサーバーに移動し、そのドメインに対応するアカウントを削除します。今まで私はこれを行うことによってエラーを起こさず、瞬時に更新を感じました。参考資料私はhostgatorホスティング(両方の専用サーバー)を使用しました。 そしてなぜそれが本当にそれなのか分かりません。 TTLが終わるまでそれはそうではないはずです。

7

強制的に更新することはできませんが、すべての古いIP要求を新しいものに転送できます。ウェブサイトのための :

は、新しいサーバーのIP

実行&勝利で[NEW_IP]置き換え、古いサーバのIP

で[OLD_IP]交換してください。

"1">に/ proc/sysの/純/のIPv4/ip_forward

iptablesの-t NAT -A PREROUTING -d [OLD_IP] TCP -p --dport 80 -j DNAT --to先エコー[NEW_IP]:80

iptablesの-t NAT -A PREROUTING -d [OLD_IP] -p TCP --dport 443 -j DNAT --to先[NEW_IP]:-t NAT 443の

のiptables - A POSTROUTING -j MASQUERADE

+0

なぜ/ etc/hostsを編集していないのですか? – JSmyth

+0

多くのホストされているサーバーの場合、DNSのTTLにアクセスできない場合、これは完璧な解決策です。古いサーバーではポート80でウェブサーバーを稼働させている... –

0

ウェブサイトを作成したばかりで、クラ​​イアントまたは任意のISP DNSがキャッシュされて表示されない場合は新しいサイトはまだありません。はい、他のすべてのものはipconfig reset browserなどに適用されますが、ここではアイデアと私が時々行うことがあります。 NICプロパティのtcpipプロパティに代替ネットワークISPのDNSを設定できます。あなたのISPがtelstraと言い、それが伝播されていない、または更新されていない場合は、代わりのサービスプロバイダのDNSを指定できます。そのisp dnsがネイティブなものの前に更新されていれば、新しいsite.Butが表示されます。ただし、DNSの更新に先立ち、伝播を判断してメールを受け取るための他のトリックがたくさんあります。もし誰かがチャットしたいと思えば、 私にラインをドロップしてください。

関連する問題