着信IPパケット内のプロトコルを識別するための表現
次の表は、着信パケットのプロトコルを識別するために使用できる式の一覧です。
式 | 説明 |
---|---|
クライアントIPプロトコル | クライアントから送信された IPv4 パケットのプロトコルを識別します。 |
CLIENT.IPV6.PROTOCOL | クライアントから送信された IPv6 パケットのプロトコルを識別します。 |
SERVER.IP.PROTOCOL | サーバーから送信される IPv4 パケットのプロトコルを識別します。 |
SERVER.IPV6.PROTOCOL | サーバーから送信される IPv6 パケットのプロトコルを識別します。 |
プロトコル関数への引数
インターネット・アサインド・ナンバーズ・オーソリティ (IANA) のプロトコル番号を PROTOCOL 関数に渡すことができます。たとえば、着信パケットのプロトコルが TCP かどうかを調べたい場合は、CLIENT.IP.PROTOCOL.EQ (6) を使用できます。ここで、6 は IANA が割り当てた TCP のプロトコル番号です。一部のプロトコルでは、プロトコル番号の代わりに列挙値を渡すことができます。たとえば、CLIENT.IP.PROTOCOL.EQ (6) の代わりに CLIENT.IP.PROTOCOL.EQ (TCP) を使用できます。次の表は、列挙値を使用できるプロトコルと、PROTOCOL 関数で使用できる対応する列挙値を示しています。
Protocol | 列挙値 |
---|---|
伝送制御プロトコル (TCP) | TCP |
ユーザーデータグラムプロトコル (UDP) | UDP |
インターネット制御メッセージプロトコル (ICMP) | ICMP |
IPv4 および IPv6 で認証サービスを提供するための IP 認証ヘッダー (AH) | AH |
カプセル化セキュリティペイロード (ESP) プロトコル | ESP |
汎用ルーティングカプセル化 (GRE) | GRE |
IP 内の IP カプセル化プロトコル | IPIP |
IPv6 用インターネット制御メッセージプロトコル (ICMPv6) | ICMPv6 |
IPv6 のフラグメントヘッダー | FRAGMENT |
ユースケースシナリオ
プロトコル表現は、リクエストベースのポリシーとレスポンスベースのポリシーの両方で使用できます。これらの式は、負荷分散、WAN最適化、コンテンツスイッチング、書き換え、リッスンポリシーなど、NetScalerのさまざまな機能で使用できます。この式を EQ () や NE () などの関数と組み合わせて使用すると、ポリシー内のプロトコルを識別してアクションを実行できます。
エクスプレッションの使用例は次のとおりです。
- Branch Repeaterの負荷分散構成では、ワイルドカード仮想サーバーのリッスンポリシーで表現を使用できます。たとえば、ワイルドカード仮想サーバーに CLIENT.IP.PROTOCOL.EQ (TCP) というリッスンポリシーを設定して、仮想サーバーが TCP トラフィックのみを処理し、TCP 以外のトラフィックをすべてブリッジするようにすることができます。リッスンポリシーの代わりにアクセスコントロールリストを使用することもできますが、リッスンポリシーの方が処理されるトラフィックをより適切に制御できます。
- ANY タイプのコンテンツスイッチング仮想サーバーでは、受信パケットのプロトコルに基づいて要求を切り替えるコンテンツスイッチングポリシーを構成できます。たとえば、すべての TCP トラフィックを 1 つの負荷分散仮想サーバーに、TCP 以外のトラフィックをすべて別の負荷分散仮想サーバーに送信するようにコンテンツスイッチングポリシーを構成できます。
- クライアントベースの式を使用して、プロトコルに基づいてパーシステンスを設定できます。たとえば、CLIENT.IP.PROTOCOL を使用して、着信 IPv4 パケットのプロトコルに基づいて永続性を構成できます。