Citrix ADC

レスポンダーのmqttサポート

レスポンダー機能はMQTTプロトコルをサポートします。着信MQTTメッセージのパラメーターに基づいてアクションを実行するようにレスポンダーポリシーを構成できます。

アクションは,新しい接続に対して次のいずれかで応答します。

  • 降低
  • 重置
  • 无操作
  • 新闻MQTT CONNACK応答を开启するためのレスポンダーアクションアクション。

MQTTのレスポンダーポリシーのの成

レスポンダー機能を有効にした後,MQTTリクエストを処理するための1つ以上のアクションを構成する必要があります。次に,レスポンダーポリシーを構成します。レスポンダーポリシーをグローバルにバインドすることも、特定の負荷分散仮想サーバーまたはコンテンツスイッチング仮想サーバーにバインドすることもできます。

レスポンダーポリシーをグローバルにバインドするには,次のバインドポイントを使用できます。

  • mqtt_req_default.
  • mqtt_req_override.
  • MQTT_JUMBO_REQ_DEFAULT
  • MQTT_JUMBO_REQ_OVERRIDE

次のバインドポイントを使用して,レスポンダーポリシーをコンテンツスイッチングまたは負荷分散仮想サーバーにバインドできます。

  • 要求
  • mqtt_jumbo_req(このバインドポイントはジャンボパケットにに使使使れます)

Cliをを用してmqttリクエストに応答するにレスポンダーを构成するにに

コマンドプロンプトで,次のコマンドを入力します。

レスポンダーレスポンダーのアクションをを构构し

添加响应响应操作  <! -  CEURTCOPY  - >
  • ActName.には,新しいアクションの名前を置き換えます。名前の長さは1〜127文字で、文字、数字、ハイフン(-)、およびアンダースコアを含めることができます。 (_) シンボル。
  • acttype.の代わりに,レスポンダーレスポンダータイプ,响应を使用します。

例:

添加响应器动作mqtt_connack_unsup_ver响应MQTT.NEW_CONNACK(132) 

レスポンダーポリシーを构成します.Citrix ADCアプライアンスは,このレスポンダーポリシーによって选択されたMQTTリクエストに応答します。

添加响应策略 <规则>  <! -  yourcopy  - >
  • 邮政局では,新しいポリシーの名前に置き換えます。
  • ActName.は,作成したアクションの名前に置き换えてください。

例:

添加响应者策略reject_lower_version“mqtt.header.command.eq(connect)&& mqtt.version.lt(3)”MQTT_CONNACK_UNSUP_VER <! -  COURTCOPY  - >

レスポンダーポリシーを特定の負荷分散仮想サーバーまたはコンテンツスイッチング仮想サーバーにバインドします。ポリシーは,宛先IPアドレスがその仮想サーバーのVIPであるMQTTリクエストにのみ適用されます。

bind lb vserver  -policyName  -priority  bind cs vserver  -policyName  -priority  
  • policy_name.は,作成したポリシーの名前に置き换えてください。
  • 优先级に,ポリシーのプライオリティを指定ますします。

例:

绑定lb vserver lb1-policyname reaction_lower_version-priority 50绑定cs vserver mqtt_frontend_cs -policyname jection_lower_version -priority 5 <! -  caltcopy  - >

使用例1:ユーザー名またはクライアントidにててクライアントをするする

管理者は,MQTT CONNECKメッセージメッセージの名またはクライアントIDに基于接続拒否するにににレスポンダーポリシーに构をを构构でき。

クライアントIDに基づいてクライアントをフィルタリングするためのサンプル構成

添加政策patset filter_clients结合政策patset filter_clients client1添加响应器动作mqtt_connack_invalid_client以MQTT.NEW_CONNACK应对(2)添加应答策略reject_clients”MQTT.HEADER.COMMAND.EQ(连接)& & mqtt.connect.clientid.equals_any(“filter_clients”)“mqtt_connack_invalid_client结合cs vserver mqtt_frontend_cs-policyName reject_clients -priority 5 

使用例2:ジャンボパケットをを定理するためににににメッセージ

管理者は,メッセージの长さが特色

00

  • MQTT。MESSAGE_LENGTH
  • MQTT。COMMAND
  • mqtt.from_client.
  • mqtt.from_server.

ジャンボバインドポイントにバインドされたポリシーは,ジャンボパケットに対してのみ评価されます。

MQTTメッセージの最大メッセージ長を制限するためのサンプル構成

设置LB参数-dropmqttjummessage no添加响应策略drop_large_message mqtt.message_length.gt(100000)复位绑定cs vserver mqtt_frontend_cs -policyname drop_large_message -priority 10 <! -  caltcopy  - >

この例では,dropmqttjumbomessage.パラメーターは没有に設定されています。したがって,ADCアプライアンスは,64000バイトより長く1,00000バイト未満の長さのメッセージを処理します。長さが00000バイトを超えるメッセージはリセットされます。