Déclarer un parent dans Squid ne signifie pas, à lui seul, que toute requête transférée doit l’utiliser. Si un trajet direct viole votre politique, configurez cette exigence explicitement et testez le cas où le parent est indisponible.

Pour Squid 6.13, cet exemple nomme un parent et interdit le transfert direct vers l’origine pour une source cliente :

cache_peer 192.0.2.20 parent 3128 0 no-query default name=upstream
acl routed_client src 198.51.100.27/32
never_direct allow routed_client

Les deux adresses sont des exemples. Pour un test contrôlé où des parents HTTP publics sont autorisés, choisissez une adresse dans la liste de proxies HTTP. Conservez la politique http_access distincte qui n’autorise que les clients prévus. La règle de routage n’accorde pas à un client le droit d’utiliser le proxy.

Vérifier les règles de routage existantes

no-query désactive les requêtes ICP vers ce pair. Le zéro est le port de requête du pair, pas son point d’écoute HTTP. Le point d’écoute côté client et ses règles d’accès restent distincts.

Examinez les réglages always_direct existants et les autres choix de pairs avant d’ajouter ce bloc. Refuser une correspondance dans always_direct n’impose pas, en soi, un parent. La règle explicite never-direct exprime cette obligation pour le client choisi.

Cela concerne les transactions qui nécessitent un transfert. Une entrée de cache locale utilisable peut être servie sans contacter le parent ; l’absence d’une nouvelle connexion au parent n’est donc pas automatiquement une violation du routage.

Vérifier le trajet et son comportement en cas de panne

Utilisez une destination contrôlée et comparez les informations de hiérarchie du journal d’accès aux observations de la destination. Le statut HTTP final seul ne dit pas si Squid a utilisé le parent ou un trajet direct.

Lors d’un test de maintenance, rendez le parent indisponible et répétez la même requête non mise en cache. Si la politique interdit le transfert direct, la transaction doit échouer plutôt que rejoindre l’origine par une autre route. Ne le faites que sur des services que vous contrôlez et rétablissez ensuite la configuration prévue.

Articles similaires