は、次のように仮定します接続文字列DNSルックアップはキャッシュされますか?
私たちのネットワーク上のローカルDNSサーバーから実行しているIP 111.111.1.1、に解決database.mywebsite.comに設定したデータベースを、持っています。
database.mywebsite.comを使用して、すべてが内部ネットワークから実行されている接続文字列を使用する無数のASP、ASP.NETおよびWinFormsアプリケーションがあります。
データベースを実行しているボックスが消えて、222.222.2.2のIPを持つ新しいボックスに切り替わります。
database.mywebsite.comのDNSを222.222.2.2に更新しました。
それらを実行しているすべてのアプリケーションとコンピュータが、解決済みの古いIPアドレスをキャッシュしますか?
私は彼らが持っていると仮定しています。
の行に沿った提案は、「あなたがスイッチボックスごとにIPを変更しない」は残念なことにこの状況を制御できないのであまり歓迎していません。私たちは現在、ボックスのマシン名を使用しています。このマシン名は、死ぬたびに変更され、すべてのアプリケーションなどを新しいマシン名で更新する必要があります。それは痛い。
DNS TTLを尊重するアプリケーションは非常にまれです(このTTLが通常のgetaddrinfo()から利用できない理由の1つです)。ほとんどのアプリケーションは「固定」します。名前が解決されると、決して変更されないものとみなされます。 – bortzmeyer