ADC

着信 IP パケット内のプロトコルを識別するための表現

次の表は、着信パケットのプロトコルを識別するために使用できる式の一覧です。

説明
CLIENT.IP.PROTOCOL クライアントから送信された 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 関数で使用できる対応する列挙値を示しています。

プロトコル 列挙値
伝送制御プロトコル (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 パケットのプロトコルに基づいて永続性を構成できます。
着信 IP パケット内のプロトコルを識別するための表現