Liaisons IPv6 et IPVersion sortant dans le proxy HTTP Indy
Ajoutez des liaisons locales IPv4/IPv6 explicites avant l’activation ; choisissez la famille de saut suivant requise sur OutboundClient avant qu’il ne se connecte.
ProxyServer.Bindings.Clear;
with ProxyServer.Bindings.Add do
begin
IPVersion := Id_IPv4;
IP := '127.0.0.1';
Port := 8080;
end;
with ProxyServer.Bindings.Add do
begin
IPVersion := Id_IPv6;
IP := '::1';
Port := 8080;
end;Appliquez ceci au TIdHTTPProxyServer inactif existant, puis utilisez son activation normale. Les adresses loopback n’acceptent volontairement que les clients locaux ; l’usage distant exige des adresses d’interface joignables et des contrôles d’accès. Vérifiez la frontière d’accès obtenue avant d’exposer cet écouteur.
Les liaisons entrantes et la socket sortante remplissent des rôles distincts :
| Socket | Choix de la famille |
|---|---|
| Le client atteint le proxy | Chaque entrée Bindings explicite |
| Le proxy atteint le saut suivant | L’OutboundClient.IPVersion du contexte |
Un écouteur IPv6 n’impose donc pas IPv6 à chaque destination. Si la charge de travail exige une famille de saut suivant explicite, définissez-la dans OnHTTPBeforeCommand avant que ce client ne se connecte, en accord avec le chemin de destination prévu.
Séparez la panne de l’écouteur de celle du saut suivant lorsqu’un côté fonctionne. S’appuyer sur des liaisons automatiques risque sinon d’introduire des hypothèses dépendantes de la plate-forme dans la comparaison.