IPSecプロトコル用のアプリケーションレイヤーゲートウェイ
2 つのネットワークデバイス(クライアントとサーバなど)間の通信が IPsec プロトコルを使用する場合、(UDP 経由の)IKE トラフィックはポートフィールドを使用しますが、カプセル化セキュリティペイロード(ESP)トラフィックはポートフィールドを使用しません。パス上の NAT デバイスが、同じ宛先の 2 つ以上のクライアントに同じ NAT IP アドレス(ただしポートは異なる)を割り当てると、その NAT デバイスはポート情報を含まない返される ESP トラフィックを区別できず、適切にルーティングできなくなります。そのため、IPSec ESP トラフィックは NAT デバイスで失敗します。
NAT トラバーサル(NAT-T)対応 IPsec エンドポイントは、IKE フェーズ 1 中に中間 NAT デバイスの存在を検出し、後続の IKE および ESP トラフィック(ESP を UDP にカプセル化)はすべて UDP ポート 4500 に切り替えます。 ピアIPsecエンドポイントでNAT-Tがサポートされていない場合、IPSecで保護されたESPトラフィックはUDPカプセル化なしで送信されます。そのため、IPSec ESP トラフィックは NAT デバイスで失敗します。
NetScalerアプライアンスは、大規模なNAT構成用のIPSecアプリケーション層ゲートウェイ(ALG)機能をサポートしています。IPSec ALG は IPSec ESP トラフィックを処理し、セッション情報を保持します。これにより、IPsec エンドポイントが NAT-T(ESP トラフィックの UDP カプセル化)をサポートしていない場合でもトラフィックに障害が発生することはありません。
IPsec ALG の仕組み
IPsec ALG は、クライアントとサーバの間の IKE トラフィックを監視し、クライアントとサーバ間の IKE フェーズ 2 メッセージ交換を常に 1 回だけ許可します。
特定のフローの双方向 ESP パケットを受信すると、IPSec ALG はその特定のフローの NAT セッションを作成して、後続の ESP トラフィックがスムーズに流れるようにします。ESP トラフィックは、フローや方向ごとに固有のセキュリティパラメータインデックス (SPI) によって識別されます。 IPSec ALGは、大規模なNATを実行するために、送信元ポートと宛先ポートの代わりにESP SPIを使用します。
ゲートがトラフィックを受信しない場合、ゲートはタイムアウトします。両方のゲートがタイムアウトすると、別の IKE フェーズ 2 交換が許可されます。
IPsec ALG タイムアウト
NetScalerアプライアンスのIPSec ALGには、次の3つのタイムアウトパラメータがあります。
- ESP ゲートタイムアウト。クライアントとサーバー間で双方向のESPトラフィックが交換されない場合に、NetScalerアプライアンスが特定のサーバーの特定のNAT IPアドレス上の特定のクライアントのIPsec ALGゲートをブロックする最大時間。
- IKE セッションタイムアウト。そのセッションにIKEトラフィックがない場合に、NetScalerアプライアンスがIKEセッション情報を削除する前に保持する最大時間。
- ESP セッションタイムアウト。そのセッションにESPトラフィックがない場合に、NetScalerアプライアンスがESPセッション情報を削除する前に保持する最大時間。
IPsec ALG を設定する前に考慮すべきポイント
IPSec ALG の設定を開始する前に、次の点を考慮してください。
- IPsec プロトコルのさまざまなコンポーネントを理解する必要があります。
- IPsec ALG は DS-Lite 構成および大規模な NAT64 構成ではサポートされていません。
- IPsec ALG はヘアピン LSN フローではサポートされていません。
- IPsec ALG は RNAT 構成では機能しません。
- IPsec ALGはNetScalerクラスターではサポートされていません。
構成の手順
NetScalerアプライアンスで大規模なNAT44用のIPSec ALGを構成するには、次のタスクで構成されます。
-
LSN アプリケーションプロファイルを作成し、LSN 設定にバインドします。アプリケーションプロファイルを設定する際に、次のパラメータを設定します。
- Protocol=UDP
- IP プーリング = ペアリング
- Port=500
アプリケーションプロファイルを LSN 設定の LSN グループにバインドします。LSN 構成の作成手順については、「LSN の設定手順」を参照してください。
-
IPSec ALG プロファイルを作成します。IPsec プロファイルには、IKE セッションタイムアウト、ESP セッションタイムアウト、ESP ゲートタイムアウトなど、さまざまな IPsec タイムアウトが含まれます。IPSec ALG プロファイルを LSN グループにバインドします。IPSec ALG プロファイルには、次のデフォルト設定があります。
- IKE セッションタイムアウト = 60 分
- ESP セッションタイムアウト = 60 分
- ESP ゲートタイムアウト = 30 秒
- IPsec ALG プロファイルを LSN 設定にバインドします。IPsec ALG プロファイルを LSN 設定にバインドすると、IPsec ALG が LSN 設定に対して有効になります。IPSec ALG プロファイルパラメータを LSN グループで作成されたプロファイルの名前に設定して、IPSec ALG プロファイルを LSN 構成にバインドします。 IPsec ALG プロファイルは複数の LSN グループにバインドできますが、LSN グループには 1 つの IPsec ALG プロファイルしか割り当てることができません。
コマンドラインインターフェイスを使用して LSN アプリケーションプロファイルを作成するには
コマンドプロンプトで入力します。
add lsn appsprofile <appsprofilename> UDP -ippooling PAIRED
show lsn appsprofile
<!--NeedCopy-->
コマンドラインインターフェイスを使用して宛先ポートを LSN アプリケーションプロファイルにバインドするには
コマンドプロンプトで入力します。
bind lsn appsprofile <appsprofilename> <lsnport>
show lsn appsprofile
<!--NeedCopy-->
コマンドラインインターフェイスを使用して LSN アプリケーションプロファイルを LSN グループにバインドするには
コマンドプロンプトで入力します。
bind lsn group <groupname> -appsprofilename <string>
show lsn group
<!--NeedCopy-->
CLI を使用して IPSec ALG プロファイルを作成するには
コマンドプロンプトで入力します。
add ipsecalg profile <name> [-ikeSessionTimeout <positive_integer>] [-espSessionTimeout <positive_integer>] [-espGateTimeout <positive_integer>] [-connfailover ( ENABLED | DISABLED)
show ipsecalg profile <name>
<!--NeedCopy-->
CLI を使用して IPSec ALG プロファイルを LSN 設定にバインドするには
コマンドプロンプトで入力します。
bind lsn group <groupname> -poolname <string> - ipsecAlgProfile <string>
show lsn group <name>
<!--NeedCopy-->
GUI を使用して LSN アプリケーションプロファイルを作成し、それを LSN 設定にバインドするには
[ システム ] > [ 大規模NAT ] > [ プロファイル] に移動し、[ アプリケーション ] タブをクリックし、LSN アプリケーションプロファイルを追加して LSN グループにバインドします。
GUI を使用して IPSec ALG プロファイルを作成するには**
[ システム ] > [ 大規模NAT ] > [ プロファイル] に移動し、[ IPSEC ALG] タブをクリックして、IPSec ALG プロファイルを追加します。
GUI を使用して IPSec ALG プロファイルを LSN 設定にバインドするには**
- [ システム ] > [ 大規模NAT ] > [ LSN グループ] に移動し、LSN グループを開きます。
- 詳細設定で、 + IPSEC ALG プロファイルをクリックして 、作成した IPsec ALG プロファイルを LSN グループにバインドします。
構成例
次の大規模な NAT44 設定の例では、192.0.2.0/24 ネットワークのサブスクライバに対して IPSec ALG が有効になっています。さまざまな IPsec タイムアウト設定を持つ IPsec ALG プロファイル IPSECALGPROFILE-1 が作成され、LSN グループ LSN グループ -1 にバインドされます。
設定例:
add lsn client LSN-CLIENT-1
Done
bind lsn client LSN-CLIENT-1 -network 192.0.2.0 -netmask 255.255.255.0
Done
add lsn pool LSN-POOL-1
Done
bind lsn pool LSN-POOL-1 203.0.113.3-203.0.113.9
Done
add lsn appsprofile LSN-APPSPROFILE-1 UDP -ippooling PAIRED
Done
bind lsn appsprofile LSN-APPSPROFILE-1 500
Done
add ipsecalg profile IPSECALGPROFILE-1 -ikeSessionTimeout 45 –espSessionTimeout 40 –espGateTimeout 20 -connfailover ENABLED
Done
bind lsn group LSN-GROUP-1 -appsprofilename LSN-APPSPROFILE-1
Done
bind lsn group LSN-GROUP-1 -poolname LSN-POOL-1
Done
bind lsn group LSN-GROUP-1 - ipsecAlgProfile IPSECALGPROFILE-1
Done
<!--NeedCopy-->