たとえば、に接続するときはwww.example.com
、最初にに接続しようとし192.0.2.1
ます。そして、最初の試行が失敗した場合は、試行し192.0.2.222
ます。
出来ますか?1つのドメイン名に複数のバックアップIPアドレスを登録できますか?
たとえば、に接続するときはwww.example.com
、最初にに接続しようとし192.0.2.1
ます。そして、最初の試行が失敗した場合は、試行し192.0.2.222
ます。
出来ますか?1つのドメイン名に複数のバックアップIPアドレスを登録できますか?
回答:
これはラウンドロビンDNSです。これは、負荷分散のための非常に単純なソリューションです。通常、DNSサーバーは、着信DNS要求ごとにDNSレコードをローテーション/シャッフルします。残念ながら、これはフェイルオーバーの実際の解決策ではありません。サーバーの1つに障害が発生した場合でも、一部の訪問者はこの障害が発生したサーバーに誘導されます。
あなたはそれを行うことができます。それは大物もやっていることです。
最初のクエリ:
» host google.com
google.com has address 74.125.232.230
google.com has address 74.125.232.231
google.com has address 74.125.232.232
google.com has address 74.125.232.233
google.com has address 74.125.232.238
google.com has address 74.125.232.224
google.com has address 74.125.232.225
google.com has address 74.125.232.226
google.com has address 74.125.232.227
google.com has address 74.125.232.228
google.com has address 74.125.232.229
次のクエリ:
» host google.com
google.com has address 74.125.232.224
google.com has address 74.125.232.225
google.com has address 74.125.232.226
google.com has address 74.125.232.227
google.com has address 74.125.232.228
google.com has address 74.125.232.229
google.com has address 74.125.232.230
google.com has address 74.125.232.231
google.com has address 74.125.232.232
google.com has address 74.125.232.233
google.com has address 74.125.232.238
ご覧のとおり、IPのリストは回転しましたが、2つのIP間の相対的な順序は同じままでした。
更新:DNSラウンドロビンがフェイルオーバーにどのように便利でないかについて自慢するコメントがいくつかあるので、ここに要約があります:DNSはフェイルオーバー用ではありません。したがって、フェイルオーバーには明らかに適していません。フェイルオーバーのソリューションとして設計されたことはありません。
はい、これは可能ですが、イェンスが言ったように便利ではありません。Alteonのような次世代ロードバランサーを使用します。これはDSSP(Distributed site state Protocol)と呼ばれる独自のプロトコルを使用し、定期的なサイトチェックを実行して、サービスがローカルまたはグローバルの両方、つまり異なる地理的領域で利用可能であることを確認します。ただし、マスターDNSで、そのIPまたはサービスの権威ネームサーバーとして構成することにより、URLまたはサービスをデバイスに委任する必要があります。これを行うことにより、デバイスはDNSクエリに応答し、ラウンドロビンによるサービスがあるIP、またはいくつかのメトリックから選択した方法に従って輻輳していないIPを解決します。