Squid 7 の場合、各受信リスナーに名前を付け、そのリクエストに適格な親を制限します。

http_port 3128 name=route_a
http_port 3129 name=route_b
acl via_a myportname route_a
acl via_b myportname route_b
cache_peer parent-a.example.net parent 8080 0 no-query name=parent_a
cache_peer parent-b.example.net parent 8080 0 no-query name=parent_b
cache_peer_access parent_a allow via_a
cache_peer_access parent_a deny all
cache_peer_access parent_b allow via_b
cache_peer_access parent_b deny all

認証されたクライアント アクセスと必須の 個別に設定された親アカウント を維持します。このルーティング フラグメントは、適格なピアを選択します。クライアントを認可したり、親の資格情報を提供したりすることはありません。親プロキシ資格情報が設定されていない許可されたパブリック宛先テストの場合、HTTPプロキシリスト は候補パブリック ピアを提供します。

適格なピア を狭めること自体は、直接転送を禁止するものではありません。選択したリクエストに対してこれらの出口が禁止されている場合は、次を追加します。

never_direct allow via_a
never_direct allow via_b

以前の always_direct ルールと 完全な親選択構成 を確認してください。割り当てられた親が利用できない場合に転送を失敗させる必要があるかどうか、または明示的に承認された別のルートが存在するかどうかを定義します。制御された転送リクエストと親の利用不可の比較により、選択された結果を確認できます。成功したページだけでも、間違ったフォールバックを隠すことができます。

最終的なパブリックIP は最後の外部接続に属します。 2 つの異なる親が NAT 出口を共有できるため、そのアドレスをリスナーおよびピアの選択とは別に確認してください。

認証/トランスポートの詳細についてはピアリファレンスを使用してください。これらのインターフェイスは、Squid 7 およびそれ以前のサポート リリースに適用されます。 Squid 8 では変更せずに使用できません。

関連記事