JavaScriptをがんばるブログ

React,OSS,ソフトウェア開発が中心のブログです👨‍💻

DNSラウンドロビンってどうやってセッションを維持しているんだろう?

ロードバランスの手法の一つにDNSラウンドロビンというものがあります。
同じFQDN(www.sample.comなど)のAレコードに複数IPアドレスを割り振り、
クライアントごとに解決するIPを変える事でアクセスを分散させる手法のようです(`・ω・´)”

参考記事

www.infraexpert.com

しかし違うグローバルIPアドレス間でセッションを引き継ぐ事が可能なのか、疑問に思いました。
普通に考えると、別のIPのプライベート空間にアクセスする方法なんて思い浮かばないし...

調べたところ、
どうやらクライアントごとに解決するIPアドレスをキャッシュしているようです。
A,B,C3つのIPアドレスラウンドロビンさせる設定をしているとすると、
最初Aにつないだ人は解決されたIPがキャッシュに保存され、次回繋ぐ時そのIPを参照するので、
セッション情報が残ったサーバーに接続出来るという仕組み。

だからラウンドロビンするのは初回の接続時だけなんですね、
なるほどー( ´ ▽ ` )ノ

参考記事

古いけどスタンダード。DNS ラウンドロビン(2) « インフラ本舗