NAT 負荷分散の概要

トピック:

ネットワーク アドレス変換 (NAT) と負荷分散 (LB) の機能を組み合わせると、受信トラフィックの負荷を複数の類似したネットワーク リソースに分散することができます。SonicWALL セキュリティ装置は WAN ISP 間で負荷分散を図る機能 (WAN ISP&LB) も備えていますが、NAT による負荷分散 (NAT LB) をそれと混同しないでください。これらの機能は両方を組み合わせて使用することも可能ですが、WAN ISP&LB は送信トラフィックを 2 つの ISP 接続に分散するために使用され、NAT LB は主として受信トラフィックを分散するために使用されます。

負荷分散は、トラフィックを複数の類似したネットワーク リソースに振り分けることによって、単一のサーバに過大な負荷がかかることを防ぎ、信頼性と冗長性の向上に貢献します。また、1 つのサーバが使用できない状態になった場合でも、トラフィックは使用可能なリソースに転送されるため、システム稼働時間の最大化が実現されます。

ここでは、パブリック インターネットのシステムから、1 つまたは複数の内部システム (ウェブ サーバ、FTP サーバ、SonicWALL SRA 装置など) に割り当てられた仮想 IP (VIP) へのアクセスを可能にするために必要な NAT、負荷分散、健全性チェック、ログ記録、およびファイアウォール ルールの設定方法について詳しく説明します。対象のポートが自体では使用されていない場合、この仮想 IP は、SonicWALL とは無関係に設定されているものや、共有で使用されているものでも問題ありません。

NAT 負荷分散のメカニズム

NAT 負荷分散の設定は、「NAT ポリシーの追加/編集」ダイアログの「詳細」タブで行います。

補足:このタブが有効になるのは、NAT ポリシーの「一般」タブのいずれかのドロップダウン フィールドでグループが選択されている場合だけです。このタブが無効の場合、NAT ポリシーでは NAT 方式として既定の「スティッキー IP」が使用されます。

SonicOS には、以下の詳細設定オプションがあります。

NAT 方式
1
スティッキー IP - 送信元 IP は、(その接続先が接続可能な状態であるならば) 常に同じ送信先 IPに接続されます。この方式は、ウェブ アプリケーション、ウェブ フォーム、ショッピング カート アプリケーションなど、接続の恒久性が要求される公開ホストのサイトに最適です。これは既定のメカニズムであり、ほとんどの配備環境では、この方式を使用することをお勧めします。
ラウンド ロビン - 送信元 IP は、循環的な順序で、動作中の負荷分散対象の各リソースに順に振り分けられます。この方式は、恒久性が要求されない状況で負荷を均等に分散したい場合に最適です。
ブロック再割付/対称再割付 - この 2 つの方式は、送信元 IP/ネットワークが既知のとき (特定のサブネットからのトラフィックの変換方法を精密に制御したい場合など) に有用です。
ランダム分散 - 送信元 IP は、各送信先 IP にランダムに接続されます。この方式は、トラフィックを対象の内部リソース全体に無作為に分散させたい場合に有用です。
2
高可用性
1
必要に応じて、「論理監視を有効にする」チェックボックスをオンにします。このチェック ボックスがオンの場合、ファイアウォールは、2 つの方法 (ICMP Ping による単純な問い合わせによってリソースが動作中であるかを判断する方法と、TCP ソケットが開いているかを問い合わせて、リソースが動作中であるかを判断する方法) のどちらかを使用して、負荷分散グループ内のアドレスの動作状態を監視します。この問い合わせは設定可能な一定の間隔で行われ、これにより、応答のないリソースへのトラフィックの振り分けの中止と、応答が復活した時点でのそのリソースの使用再開が可能になります。

論理監視を有効にする」チェックボックスをオンにすると、以下のオプションが利用可能になります。

ホストの論理監視間隔 n 秒毎 — ホストの論理監視の間隔を指定します。既定値は 5 秒です。
論理監視種別 — 論理監視種別 (TCP など) をドロップダウン メニューから選択します。既定は「TCP」です。
ポート — ポートを指定します。既定値は 80 です。
応答タイムアウト — タイムアウトまでの最大時間を指定します。既定値は 3 秒です。
ホストを停止するまでの無応答回数 n — この回数を超えて応答が無い場合はホストを停止します。既定値は 3 です。
停止したホストを再度有効にするまでの応答回数 n — この回数以上応答に成功した場合はホストを再度有効にします。既定値は 3 です。
ポート プローブを有効にする — ポート プローブを有効にするときに選択します。
RST 未応答回数 — RST 応答を未応答としてカウントするときに選択します。このオプションは既定で選択されています。

使用する NAT LB 方式の決定

 

表 36. 使用する NAT LB 方式を決定する

要件

配備例

NAT LB 方式

サーバ負荷の均等な分散
(恒久性は不要)

外部/内部サーバ (ウェブまたは FTP)

ラウンド ロビン

無差別な負荷分散 (恒久性は不要)

外部/内部サーバ (ウェブまたは FTP)

ランダム分散

クライアント接続の恒久性

電子商取引サイト、電子メール セキュリティ、SonicWALL SRA 装置

(恒久性が要求される任意の公開サーバ)

スティッキー IP

送信元ネットワークから送信先範囲への再割付の精密な制御

LAN から DMZ サーバへ

電子メール セキュリティ、SonicWALL SRA 装置

ブロック再割付

送信元ネットワークと送信先ネットワークの再割付の精密な制御

内部サーバ (イントラネットまたはエクストラネット)

対称再割付

注意

現時点では以下のように利用できない機能があります。

Dell SonicWALL ネットワーク セキュリティ装置では、負荷分散の対象として設定可能な内部リソースの数に制限はなく、監視可能なホストの数にも制限はありませんが、(リソースの数が 25 を超えるような) 非常に大規模な負荷分散グループを作成すると、パフォーマンスに影響が及ぶおそれがあります。

負荷分散アルゴリズムの詳細

ここでは、SonicWALL において、負荷分散アルゴリズムがどのように適用されるかを説明します。

ラウンド ロビン - 送信元 IP を各送信先 IP に交互に接続します。
ランダム分散 - 送信元 IP を各送信先 IP にランダムに接続します。
スティッキー IP - 送信元 IP を常に同じ送信先 IP に接続します。
ブロック再割付 - 送信元ネットワークを送信先プールのメンバー数に分割することによって、論理セグメントを作成します。
対称再割付 - 送信元 IP を送信先 IP に割り付けます (例えば、10.1.1.10->192.168.60.10)。
スティッキー IP アルゴリズム

送信元 IP をサーバ クラスタの台数で除算し、その剰余に応じて割付先のサーバを決定します。以下に、スティッキー IP アルゴリズムによる割付先決定処理の例を 2 つ示します。

例 1 - ネットワークへの割付

192.168.0.2~192.168.0.4
変換後の送信先 = 10.50.165.0/30 (ネットワーク)

パケットの送信元 IP = 192.168.0.2
192.168.0.2 = C0A80002 = 3232235522 = 11000000101010000000000000000010
(IP->16 進->10 進->2 進)

スティッキー IP 計算式 = パケットの送信元 IP = 3232235522[剰余算]変換先サイズ = 2
= 3232235522[剰余算]2
= 0
(被乗数は 2 で割り切れる。剰余はなく、結果は 0)

スティッキー IP 計算式によって算出されたオフセットは 0
送信先を 10.50.165.1 に再割付

例 2 - IP アドレス範囲への割付

192.168.0.2~192.168.0.4
変換後の送信先 = 10.50.165.1~10.50.165.3 (範囲)

パケットの送信元 IP = 192.168.0.2
192.168.0.2 = C0A80002 = 3232235522 = 11000000101010000000000000000010
(IP->16 進->10 進->2 進)

スティッキー IP 計算式 = パケットの送信元 IP = 3232235522[剰余算]変換先サイズ = 3
= 3232235522[剰余算]4
= 1077411840.6666667 - 1077411840
= 0.6666667 * 3
= 2

スティッキー IP 計算式によって算出されたオフセットは 2

送信先を 10.50.165.3 に再割付