タグルールの設定
タグルールには、term内の条件が一致した場合に実行するHTTPエンリッチメントアクションを特定する1つ以上のtermステートメントが含まれます。termのthen句で少なくとも1つのtagを設定する必要があり、複数のタグを設定することができます。
用語は、設定された順序で評価されます。データパケットがtermのfromステートメントのすべての基準に一致する場合、termのthenステートメントで指定されたアクションが適用されます。fromステートメントで基準が特定されない場合は、すべてのトラフィックが一致します。データパケットが項に一致した後、それ以降の項は評価されません。一致する条件がない場合、HTTP ヘッダーはエンリッチされません。
タグルールを設定するには:
- タグルールで使用できるタグ属性のリストを設定します。
[edit services hcm] user@host# set tag-attribute tag-attr-name
アダプティブサービスで現在サポートされているタグ属性は、
apn、ggsnipv4、ggsnipv6、imei、imsi、ipv4addr、ipv6addr、msisdnです。複数のタグ属性を設定するには、それらを角括弧([ ])で囲みます。Junos 20.2R1以降、HTTPヘッダーエンリッチメント用のIPv4タグとIPv6タグは、MX240、MX480、MX960の次世代サービスでサポートされています。このリリースの次世代サービスでは、他のタグはサポートされていません。例えば:
[edit services hcm] user@host# set tag-attribute [msisdn apn]
- タグルールの名前を設定します。
[edit services hcm] user@host# set tag-rule rule-name
例えば:
[edit services hcm] user@host# set tag-rule rule1
- タグルールの条件を設定します。
[edit services hcm set tag-rule rule-name] user@host# set term term-number
注:term引数には数値が必要です。例えば:
[edit services hcm set tag-rule rule1] user@host# set term 1
- (オプション)HTTPリクエスト宛先IPアドレスが一致する必要があるプレフィックスを指定します。
[edit services hcm tag-rule rule-name term term-number from] user@host# set destination-address prefix
例えば:
[edit services hcm tag-rule rule1 term 1 from] user@host# set destination-address 192.0.2.0/24
一致させるアドレスのタイプを指定することもできます。
[edit services hcm tag-rule rule-name term term-number from] user@host# set destination-address (any-ipv4 | any-ipv6 | any-unicast)
destination-addressステートメントを複数回含めることで、複数のプレフィックスやアドレスタイプを指定することができます。 - (オプション)HTTPリクエスト宛先IPアドレスが一致する必要があるIPアドレス範囲を指定します。
[edit services hcm tag-rule rule-name term term-number from] user@host# set destination-address-range low address high address
例えば:
[edit services hcm tag-rule rule1 term 1 from] user@host# set destination-address-range low 10.10.10.1 high 10.10.10.255
destination-address-rangeステートメントを複数回含めることで、複数のアドレス範囲を指定することができます。 - (オプション)HTTPリクエストの宛先IPアドレスが一致する必要がある宛先プレフィックスリストを指定します。プレフィックスリストは、すでに
[edit policy-options prefix-list]階層レベルで定義されている必要があります。[edit services hcm tag-rule rule-name term term-number from] user@host# set destination-prefix-list prefix-name
例えば:
[edit services hcm tag-rule rule1 term 1 from] user@host# set destination-prefix-list customer1
destination-prefix-listステートメントを複数回含めることで、複数のプレフィックスリストを指定することができます。 - (オプション)HTTPリクエスト宛先IPアドレスと
exceptステートメントの一致から除外したいアドレスを指定します。アドレスを除外するには、[edit services hcm tag-rule rule-name term term-number from]階層レベルのdestination-address、destination-address-range、またはdestination-prefix-listステートメントで一致するアドレスも設定する必要があります。例えば:
[edit services hcm tag-rule rule1 term 1 from] user@host# set destination-address-range low 10.10.10.1 high 10.10.10.255 user@host# set destination-address 10.10.10.9/32 except
これは、10.10.10.9を除く宛先範囲のすべてのアドレスに一致します。
[edit services hcm tag-rule rule-name term term-number from]階層レベルで以下のステートメントでexceptを使用できます。destination-address { any-ipv4 except; any-ipv6 except; any-unicast except; prefix except; } destination-address-range { high address low address except; } destination-prefix-list { prefix-name except; } - (オプション)HTTPリクエスト宛先ポート番号が一致する必要があるポート範囲を指定します。
[edit services hcm tag-rule rule-name term term-number from] user@host# set destination-port-range high port-number low port-number
destination-port-rangeステートメントを複数回含めることで、複数のポート範囲を指定することができます。注:一致させるポートまたはポート範囲を指定しない場合、すべてのポートが一致します。
- (オプション)一致させる必要があるHTTPリクエスト宛先ポート番号を指定します。
[edit services hcm tag-rule rule-name term term-number from] user@host# set destination-ports value
destination-portsステートメントを複数回含めることで、複数のポートを指定することができます。 - (オプション)タグルールの
thenステートメントで指定されたすべてのHTTPヘッダーエンリッチメントアクションを、fromステートメントに一致条件を含めないことで、すべてのHTTPリクエストに適用することを指定します。タグルールの各termにfromステートメントを含める必要があります。[edit services hcm tag-rule rule-name term term-number ] user@host# set from
例えば:
[edit services hcm tag-rule rule2 term 1] user@host# set from [edit services hcm tag-rule rule2 term 1] user@host# set then count
- タグの名前を設定します。
[edit services hcm tag-rule rule-name term term-number then] user@host# set tag tag-name
例えば:
[edit services hcm tag-rule rule1 term 1 then] user@host# set tag msisdn-tag
- タグがHTTPヘッダーに適用するタグヘッダーを設定します。
[edit services hcm tag-rule rule-name term term-number then tag tag-name] user@host# set tag-header header
例えば:
[edit services hcm tag-rule rule1 term 1 then tag msisdn-tag] user@host# set tag-header X_MSISDN
最大16個の一意のタグヘッダーを設定できます。
header値は、
accept、accept-charset、accept-encoding、accept-language、authorization、expect、host、if-match、if-modified-since、if-none-match、if-range、if-unmodified-since、max-forwards、proxy-authorization、referer、user-agent、またはx-mozにすることはできません。これらのヘッダー値は予約されています。設定することはできません。 - タグがHTTPヘッダーに適用するタグ属性を指定します。一度に複数の属性を指定するには、属性を角括弧([ ])で囲みます。
[edit services hcm tag-rule rule-name term term-number then tag tag-name] user@host# set tag-attribute [tag-attr-name]
注:タグ属性は、ステップ 1で設定したタグ属性に記載されている必要があります。
例えば:
[edit services hcm tag-rule rule1 term 1 then tag msisdn-tag] user@host# set tag-attribute msisdn
- タグがHTTPヘッダーで使用する区切り記号を指定します。
[edit services hcm tag-rule rule-name term term-number then tag tag-name] user@host# set tag-separator separator
例えば:
[edit services hcm tag-rule rule1 term 1 then tag msisdn-tag] user@host# set tag-separator /
- (オプション)HTTPヘッダーにタグを挿入するためのハッシュ方式とプレフィックスキーを指定します。
[edit services hcm tag-rule rule-name term term-number then tag tag-name encrypt] user@host# set hash algorithm prefix hash-prefix
現在、
md5ハッシュ方式のみがサポートされています。例えば:
[edit services hcm tag-rule rule1 term 1 then tag msisdn-tag encrypt] user@host# set hash md5 prefix gatewaykey1
- (オプション)タグルールのHTTPヘッダーエンリッチメントの統計の収集を有効にします。
[edit services hcm tag-rule rule-name term term-number then user@host# set count
- (オプション)タグが IPv4 または IPv6 ユーザー アドレスのバイトを HTTP ヘッダー内の別の値に置き換える方法を設定します。
[edit services hcm tag-rule rule-name term term-number then tag tag-name] user@host# set (ipv4-mask ipv4-mask | ipv6-mask ipv6-mask) (ipv4-or-value ipv4-or-value | ipv6-or-value ipv6-or-value)
置き換えるバイトを特定するには、
ipv4-maskまたはipv6-maskの対応するバイトにIPv4の場合は255、IPv6の場合はffを入力し、他のバイトにはゼロを入力します。そのバイトに新しい値を指定するには、
ipv4-or-valueまたはipv6-or-valueの対応するバイトに値を入力し、他のバイトにゼロを入力します。例えば、以下は、IPv4ユーザーアドレスの最初のバイトを値168に置き換えます。
[edit services hcm tag-rule tag1 term term1 then tag subscip4] user@host# set ipv4-mask 255.0.0.0 ipv4-or-value 168.0.0.0
- 条件内の
thenステートメントにさらにタグを設定する場合は、ステップ 11 からステップ 17を繰り返します。 - タグルールに別の
termステートメントを設定する場合は、ステップ 3 からステップ 18までを繰り返します。
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。