DNSラウンドロビン
1つのホスト名に、複数のサーバのIPアドレスを登録しておき、問合せのたびに返す順番を変えることで、アクセスを複数のサーバに振り分ける方法。専用の負荷分散装置がいらないが、故障したサーバにも振り分けてしまう。
イマシルちゃんの解説
人気のWebサイトに、1台のサーバだけだと、お客さんがいっぱい来たときにパンクしちゃうよね。
そこで、同じ名前でサーバを何台か用意して、DNSに全部の住所を登録しておくんだ。
DNSが「今回はこっちのサーバ」「次はあっちのサーバ」って、順番を変えて答えるから、
お客さんが自然にばらけて、それぞれのサーバに行くんだよ。
より深い解説
仕組み
権威DNSサーバに、同じ名前のAレコード(またはAAAAレコード)を複数登録する。
www.example.com. 300 IN A 192.0.2.11
www.example.com. 300 IN A 192.0.2.12
www.example.com. 300 IN A 192.0.2.13
DNSサーバは、問合せのたびに応答の中のレコードの順番を入れ替える。クライアントは、ふつう先頭のアドレスに接続するため、接続先がサーバの間で分散される。
長所と短所
| 長所 | 短所 |
|---|---|
| DNSの設定だけでできる | サーバの故障や負荷の状態を見ずに振り分ける |
| 負荷分散装置が不要 | キャッシュDNSサーバやクライアントがキャッシュするため、TTLの間は振り分けが偏る |
| 地理的に離れたサーバにも振り分けられる | 同じ利用者が、毎回同じサーバにつながるとは限らない(セッションの維持ができない) |
故障したサーバのレコードを削除しても、各地のキャッシュに残っている間は、そのサーバへの接続が続く。このため、TTLを短めにしたり、負荷分散装置(ロードバランサ)と組み合わせたりする。
負荷分散装置との比較
| DNSラウンドロビン | 負荷分散装置 | |
|---|---|---|
| 振り分ける場所 | 名前解決の段階 | 通信の経路上 |
| サーバの死活監視 | しない | する(ヘルスチェック) |
| セッションの維持 | できない | できる(パーシステンス) |
| 費用 | ほぼかからない | 装置やサービスが必要 |
DNSサーバの情報を守る設定との区別
DNSラウンドロビンは負荷分散の設定であり、ゾーンの情報を外部に読み出されないようにする効果はない。ゾーンの情報の漏えいを防ぐには、プライマリDNSサーバで、ゾーン転送を許可する相手を、セカンダリDNSサーバのIPアドレスに限定する。
実際の試験ではここに出る!
- ネットワークスペシャリスト 令和4年度 春期 午前Ⅱ 問18
- ネットワークスペシャリスト 令和4年度 春期 午前Ⅱ 問21
- ネットワークスペシャリスト 令和3年度 春期 午前Ⅱ 問9
- ネットワークスペシャリスト 令和元年度 秋期 午前Ⅱ 問21
- ネットワークスペシャリスト 平成30年度 秋期 午前Ⅱ 問7