WANOPプラグインのしくみ
WANOPクライアントプラグイン製品は既存のものを使用します WAN/VPN インフラ。プラグインがインストールされているコンピューターは、プラグインのインストール前と同じように、LAN、WAN、およびインターネットに引き続きアクセスします。ルーティングテーブル、ネットワーク設定、クライアントアプリケーション、またはサーバーアプリケーションを変更する必要はありません。
Citrix Access Gateway VPNには、少量のWANOPクライアントプラグイン固有の構成が必要です。
プラグインとアプライアンスによる接続の処理方法には、 透過モード と リダイレクタモードの2つのバリエーションがあります。リダイレクタはレガシーモードであり、新しい展開には推奨されません。
-
プラグインからアプライアンスへのアクセラレーションの透過モード は、アプライアンスからアプライアンスへのアクセラレーションと非常によく似ています。WANOPクライアントプラグインアプライアンスは、プラグインとサーバー間を移動するときにパケットがたどるパス内にある必要があります。アプライアンス間のアクセラレーションと同様に、透過モードは透過プロキシとして動作し、接続の一方の端からもう一方の端までの送信元と宛先のIPアドレスとポート番号を保持します。
-
リダイレクタモード (非推奨)は、明示的なプロキシを使用します。プラグインは、発信パケットをアプライアンスのリダイレクタIPアドレスに再アドレス指定します。次に、アプライアンスはパケットをサーバーに再アドレス指定し、リターンアドレスをプラグインではなく自身を指すように変更します。このモードでは、アプライアンスはWANインターフェースとサーバー間のパスと物理的にインラインである必要はありません(これは理想的な展開ですが)。
ベストプラクティス:可能な場合は透過モードを使用し、必要な場合はリダイレクタモードを使用します。
透過モード
透過モードでは、高速化された接続のパケットは、アプライアンス間の高速化の場合と同様に、ターゲットアプライアンスを通過する必要があります。
プラグインは、アクセラレーションに使用できるアプライアンスのリストで構成されます。各アプライアンスへの接続を試み、シグナリング接続を開きます。シグナリング接続が成功すると、プラグインはアプライアンスからアクセラレーションルールをダウンロードし、アプライアンスがアクセラレーションできる接続の宛先アドレスを送信します。
図1:透過モード、3つの加速パスを強調表示
注
- トラフィックフロー-透過モードは、CitrixWANOPクライアントプラグインとプラグイン対応アプライアンス間の接続を高速化します。
- ライセンス-アプライアンスには、必要な数のプラグインをサポートするためのライセンスが必要です。この図では、Citrix SD-WAN WANOPはプラグインアクセラレーションのためにライセンスを取得する必要はありません。これは、Citrix SD-WAN WANOP A1は、サイトAのプラグインアクセラレーションを提供します。
- デイジーチェーン-接続がターゲットアプライアンスに向かう途中で複数のアプライアンスを通過する場合、中央のアプライアンスで「デイジーチェーン」を有効にする必要があります。そうしないと、アクセラレーションがブロックされます。この図では、大規模なブランチオフィスB宛てのホームオフィスおよびモバイルVPNユーザーからのトラフィックは、Citrix SD-WAN WANOP Bによって加速されます。これを機能させるには、Citrix SD-WAN WANOP A1およびA2でデイジーチェーンを有効にする必要があります。
プラグインが新しい接続を開くたびに、加速ルールを参照します。宛先アドレスがいずれかのルールに一致する場合、プラグインは、接続の最初のパケット(SYNパケット)にアクセラレーションオプションを付加することにより、接続をアクセラレーションしようとします。プラグインに認識されているアプライアンスがSYN-ACK応答パケットにアクセラレーションオプションを接続すると、そのアプライアンスとのアクセラレーション接続が確立されます。
アプリケーションとサーバーは、高速接続が確立されたことを認識していません。プラグインソフトウェアとアプライアンスだけが、加速が行われていることを認識しています。
透過モードは、アプライアンス間のアクセラレーションに似ていますが、同じではありません。違いは次のとおりです。
-
クライアントが開始する接続のみ-透過モードは、プラグインを備えたシステムによって開始される接続のみを受け入れます。プラグインを搭載したシステムをサーバーとして使用する場合、サーバー接続は高速化されません。一方、アプライアンス間のアクセラレーションは、どちらの側がクライアントでどちらがサーバーであるかに関係なく機能します。(アクティブモードFTPは、プラグインによって要求されたデータ転送を開始する接続がサーバーによって開かれるため、特殊なケースとして扱われます。)
-
シグナリング接続-透過モードは、ステータス情報の送信にプラグインとアプライアンス間のシグナリング接続を使用します。アプライアンス間のアクセラレーションは、デフォルトで無効になっているセキュアなピア関係を除いて、シグナリング接続を必要としません。プラグインがシグナリング接続を開くことができない場合、アプライアンスを介した接続を高速化しようとはしません。
-
デイジーチェーン-プラグインとその選択されたターゲットアプライアンスの間のパスにあるアプライアンスの場合、[ 構成:チューニング ]メニューでデイジーチェーンを有効にする必要があります。
透過モードは、VPNでよく使用されます。WANOPクライアントプラグインプラグインは、ほとんどのIPSecおよびPPTP VPN、およびCitrix Access GatewayVPNと互換性があります。
次の図は、透過モードでのパケットフローを示しています。このパケットフローは、接続の高速化を試みるかどうかの決定がシグナリング接続を介してダウンロードされた高速化ルールに基づくことを除いて、アプライアンス間の高速化とほぼ同じです。
図2:透過モードでのパケットフロー
-
ユーザーのアプリケーションはサーバーへのTCP接続を開き、TCPSYNパケットを送信します。
Src:10.0.0.50、Dst:10.200.0.10
-
WANOPプラグインは宛先アドレスを検索し、アプライアンスによって高速化されたサブネットと一致することを確認します。これは、SYNパケットのTCPヘッダーにWANOPオプションを付加します。アドレスは変更されません。
Src:10.0.0.50、Dst:10.200.0.10
-
アプライアンスはSYNオプションを記録し、これが加速可能な接続であることを認識します。パケットからオプションを取り除き、サーバーにパススルーできるようにします。アドレスは変更されません。
Src:10.0.0.50、Dst:10.200.0.10
-
サーバーは接続を受け入れ、TCP SYN-ACKパケットで応答します。
Src:10.200.0.10、Dst:10.0.0.50
-
アプライアンスは、加速が行われることを示すTCPヘッダーオプションでSYN-ACKパケットにタグを付けます。
Src:10.200.0.10、Dst:10.0.0.50
-
WANOPプラグインはSYN-ACKパケットを受信します。パケットヘッダーのオプションは、接続が高速化されていることを示します。プラグインはオプションを取り除き、SYN-ACKパケットをアプリケーションに渡します。これで接続が完全に開き、加速されます。
リダイレクタモード
リダイレクタモードは、次の点で透過モードとは動作が異なります。
-
WANOPクライアントプラグインプラグインソフトウェアは、パケットをアプライアンスに明示的にアドレス指定することにより、パケットをリダイレクトします。
-
したがって、リダイレクタモードアプライアンスは、すべてのWANリンクトラフィックを傍受する必要はありません。アクセラレーションされた接続は直接アドレス指定されるため、プラグインとサーバーの両方から到達できる限り、どこにでも配置できます。
-
アプライアンスは最適化を実行してから、出力パケットをサーバーにリダイレクトし、パケット内の送信元IPアドレスを独自のアドレスに置き換えます。サーバーの観点からは、接続はアプライアンスで開始されます。
-
サーバーからのリターントラフィックはアプライアンスにアドレス指定されます。アプライアンスはリターン方向で最適化を実行し、出力パケットをプラグインに転送します。
-
宛先ポート番号は変更されないため、ネットワーク監視アプリケーションは引き続きトラフィックを分類できます。
次の図は、リダイレクタモードがどのように機能するかを示しています。
図1:リダイレクタモード
次の図は、 リダイレクタモードでのパケットフローとアドレスマッピングを示しています。
図2:リダイレクタモードでのパケットフロー
-
ユーザーのアプリケーションはサーバーへのTCP接続を開き、TCPSYNパケットを送信します。
Src:10.0.0.50、Dst:10.200.0.10
-
Citrix SD-WAN WANOPプラグインは、宛先アドレスを検索し、接続を10.200.0.201のアプライアンスにリダイレクトすることを決定します。
Src:10.0.0.50、Dst:10.200.0.201
(10.200.0.10はTCPオプションフィールドに保持されます。オプション24〜31は、さまざまなパラメーターに使用されます。)
-
アプライアンスは接続を受け入れ、パケットをサーバーに転送し(TCPオプションフィールドの宛先アドレスを使用)、それ自体を送信元として提供します。
Src:10.200.0.201、Dst:10.200.0.10
-
サーバーは接続を受け入れ、TCP SYN-ACKパケットで応答します。
Src:10.200.0.10、Dst:10.200.0.201
-
アプライアンスはアドレスを書き換え、パケットをプラグインに転送します(サーバーアドレスをオプションフィールドに配置します)。
Src:10.200.0.201、Dst:10.0.0.50
-
これで接続が完全に開きます。クライアントとサーバーは、アプライアンスを介してパケットを送受信します。
アドレスがリダイレクタモードで分析されている間、宛先ポート番号はニットです(ただし、エフェメラルポート番号はニットである可能性があります)。データはカプセル化されていません。リダイレクタモードはプロキシであり、トンネルではありません。
ありません 1:1 パケット間の関係(最終的には、受信したデータは常に送信したデータと同じです)。圧縮により、多くの入力パケットが1つのパケットに削減される場合があります。CIFSアクセラレーションは、投機的な先読みおよびホワイトビハインド操作を実行します。また、appliaceとReperterプラグインの間でパケットがドロップされた場合、再送信は、高度な回復アルゴリズムを使用して、サーバーではなくアプライアンスによって処理されます。
プラグインがアプライアンスを選択する方法
各プラグインは、高速接続を要求するために接続できるアプライアンスのリストで構成されています。
アプライアンスにはそれぞれ、 アクセラレーションルールのリストがあります。これは、アプライアンスがアクセラレーション接続を確立できるターゲットアドレスまたはポートのリストです。プラグインはこれらのルールをアプライアンスからダウンロードし、各接続の宛先アドレスとポートを各アプライアンスのルールセットと照合します。特定の接続を高速化するアプライアンスが1つしかない場合、選択は簡単です。複数のアプライアンスが接続を高速化することを提案している場合、プラグインはアプライアンスの1つを選択する必要があります。
アプライアンスの選択のルールは次のとおりです。
-
接続を高速化するために提供しているすべてのアプライアンスがリダイレクタモードアプライアンスである場合、プラグインのアプライアンスリストの左端のアプライアンスが選択されます。(アプライアンスがDNSアドレスとして指定されていて、DNSレコードに複数のIPアドレスがある場合、これらも左から右にスキャンされます。)
-
接続を高速化するために提供しているアプライアンスの一部がリダイレクタモードを使用し、一部が透過モードを使用している場合、透過モードアプライアンスは無視され、リダイレクタモードアプライアンスから選択が行われます。
-
接続を高速化するために提供しているすべてのアプライアンスが透過モードを使用している場合、プラグインは特定のモードを選択しません appliance. WANOPクライアントプラグインSYNオプションを使用して接続を開始し、返されるSYN-ACKパケットに適切なオプションをアタッチする候補アプライアンスが使用されます。これにより、実際にトラフィックと一致しているアプライアンスがプラグインに対して自身を識別できるようになります。ただし、プラグインは応答するアプライアンスとのオープンなシグナリング接続を備えている必要があります。そうでない場合、アクセラレーションは行われません。
-
一部の構成情報はグローバルと見なされます。この構成情報は、シグナリング接続を開くことができるリストの左端のアプライアンスから取得されます。