はい。過去5〜10年のほとんどのブラウザは、応答に失敗した場合、他のAレコードを試します。これは、「ブラウザの再試行」または「クライアントの再試行」と呼ばれることもあります。あなたはかなりのみ、この機能は、それが(参照使用していないサイトに対して有効にさまざまなブラウザクラッシャーのコンテキストでそれについて何かを見つけるのDNSリバインディングとDNSピニング、抗DNSピニング、抗抗DNSピニング、抗抗-anti-dns pinningなど)。悪い評判のようなものですが、それが存在することを証明します。
ほとんどすべてのブラウザーは、実際にAレコードの完全なリストを受け取り、使用しているものが失敗した場合、他のブラウザーを実際にチェックします。サーバーがダウンしているときに最初にサイトにアクセスしようとするとき、各クライアントが作業アドレスに接続するまで30秒待機することが期待できます。その後、ブラウザはどのアドレスが機能しているかをキャッシュし、失敗しない限り将来のリクエストでそのアドレスを使用し続け、リストを再度検索する必要があります。したがって、最初の要求で30秒待機し、その後は問題ありません。
しかし、これは必ずしも使用したいものではありません。ブラウザの互換性、OSの互換性、プロキシの互換性、キャッシュ制御ヘッダーについては、どのIPがダウンしているかを覚えているかどうかに奇妙な影響がありますリクエストごとに30秒待機すると、サイトのカスタムクライアントを作成するユーザーは、getaddrinfoの代わりにgethostbynameを使用することになり、あらゆる種類の潜在的な問題を処理できなくなります。
また、複数のAレコードに依存して「マスター」サーバーと「スレーブ」サーバーを許可することはできません。これは、ブラウザーがリストから選択するアドレスがわからないためです。彼らはすべて、実行中の訪問者を処理できる能力を備えている必要があります。ブラウザは、リストの3番目のサーバーが最も魅力的だと思うかもしれません。おそらく最も近いように見え、3つすべてがまだ稼働していても、そのサーバーを選択します。
ただし、制限に耐え、ブラウザとの相互作用を予測できる合理的な単純なHTTPシステムを使用できる場合は機能します。
ああ、これは存在しないと言っている多くの人にも対処する必要があります(15年前に真実だったからです)。ただし、証明する必要がある場合は、いくつかのAレコード、デッドIPのあるドメイン名、いくつかの良いレコードを含むドメイン名へのtelnet接続を試すことができます(はい、古いtelnetでもgetaddrinfoを使用し、最近は複数のAレコードを正常に処理します) -最終的に成功するまで、試行しているIPの素敵なリストを出力します。