Squid-Anfragen über einen übergeordneten Proxy senden
Lassen Sie Squid 6.13 für weitergeleitete Anfragen eines bekannten Clients einen Parent nutzen und vermeiden Sie unbeabsichtigten direkten Fallback.
Einen Parent in Squid zu deklarieren bedeutet allein nicht, dass jede weitergeleitete Anfrage ihn nutzen muss. Würde eine direkte Route Ihre Richtlinie verletzen, konfigurieren Sie diese Anforderung ausdrücklich und testen Sie den Ausfall des Parents.
Dieses Beispiel für Squid 6.13 benennt einen Parent und verbietet direkte Weiterleitung zum Ursprung für eine Client-Quelle:
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
Beide Adressen sind Platzhalter. Wählen Sie für einen kontrollierten Upstream-Test, bei dem öffentliche HTTP-Parents erlaubt sind, eine Adresse aus der HTTP-Proxy-Liste. Behalten Sie die separate http_access-Richtlinie bei, die nur die vorgesehenen Clients zulässt. Die Routing-Regel berechtigt keinen Client zur Proxy-Nutzung.
Bestehende Routing-Regeln prüfen
no-query deaktiviert ICP-Abfragen an diesen Peer. Die Null ist sein Abfrageport, nicht sein HTTP-Listener. Der clientseitige Listener und seine Zugriffsregeln bleiben separat.
Prüfen Sie vorhandene always_direct-Einstellungen und andere Peer-Auswahlen, bevor Sie diesen Block hinzufügen. Einen Treffer in always_direct abzulehnen erzwingt für sich genommen keinen Parent. Die ausdrückliche never-direct-Regel legt diese Anforderung für den ausgewählten Client fest.
Dies steuert Transaktionen, die Weiterleitung benötigen. Ein nutzbarer lokaler Cache-Eintrag lässt sich ohne Parent-Kontakt ausliefern. Eine fehlende neue Parent-Verbindung ist daher nicht automatisch ein Routing-Verstoß.
Route und Fehlerverhalten prüfen
Nutzen Sie ein kontrolliertes Ziel und prüfen Sie die Hierarchieinformationen des Zugriffslogs zusammen mit den Beobachtungen am Ziel. Ein finaler HTTP-Status allein verrät nicht, ob Squid den Parent oder eine direkte Route verwendet hat.
Machen Sie den Parent in einem Wartungstest unerreichbar und wiederholen Sie dieselbe ungecachte Anfrage. Verbietet die Richtlinie direkte Weiterleitung, soll die Transaktion scheitern, statt den Ursprung über einen anderen Weg zu erreichen. Tun Sie dies nur bei Diensten unter Ihrer Kontrolle und stellen Sie die beabsichtigte Konfiguration danach wieder her.