カスタム パーシステンスにすると、NSX Advanced Load Balancer ではカスタム期間中、ユーザー定義の基準に基づいて、クライアントがサーバに接続するようにします。

この後に示すユースケースは、パーシステンス対象のカスタム データを検索するためのオプションに柔軟性を持たせる DataScript によって構成されています。

DataScript

DataScript はクライアントへの接続を切断するのに使用します。これは、TCP RST またはグレースフル TCP FIN によって実行します。いずれによるかは、avi.http.close_conn コマンドのフラグによって決まります。

例 1

クライアントのパーシステンスのベースは、送信元 IP とポートです。

-- HTTP Request Event --
pool = "my_pool"
client = avi.vs.client_ip() .. avi.vs.client_port()
server = avi.vs.table_lookup(client)
timeout = "300"

if server then
   avi.pool.select(pool, client)
end


-- HTTP Response Event --
if not server then
   avi.vs.table_insert(client, avi.pool.server_ip(), timeout)
end

例 2

クライアントのパーシステンスのベースは、クライアント要求のリファラー ヘッダーです。

-- HTTP Request Event --
pool = "my_pool"
timeout = "300"
client = avi.http.get_header("referer")
server = avi.vs.table_lookup(client)


if server then
   avi.pool.select(pool, client)
end


-- HTTP Response Event --
if not server then
   if 
   avi.vs.table_insert(avi.vs.client_ip(), avi.pool.server_ip(), timeout)
end

ポリシー

ネットワーク セキュリティ ポリシーと HTTP セキュリティ ポリシーは、IP アドレスに基づいてクライアントを破棄するのに使用します。ブロックリストという IP グループを参照する構成のポリシー ルールを作成できます。このポリシーがトリガされると、重要なログが生成され、そのクライアントが当該ポリシーによってドロップされたことが示されます。健全性スコアのセキュリティ行にペナルティが発生する頻度も十分に高いです。

IP グループ

IP グループは、DataScript またはそれを参照するポリシーとは別に構成されて維持されます。グループには、住所や国コードのリストを含めることができます。この機能の詳細については、「IP グループ」を参照してください。