IPv6 veze i izlazni IPVersion u Indy HTTP proxyju
Dodajte eksplicitne lokalne IPv4/IPv6 veze prije aktivacije; odaberite potrebnu familiju sljedećeg skoka na OutboundClient prije nego se poveže.
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;Primijenite ovo na neaktivni postojeći TIdHTTPProxyServer, zatim upotrijebite njegovu uobičajenu aktivaciju. Loopback adrese namjerno prihvataju samo lokalne klijente; daljinsko korištenje zahtijeva dostupne adrese interfejsa i kontrole pristupa. Provjerite rezultujuću granicu pristupa prije nego izložite taj slušalac.
Dolazne veze i izlazni socket obavljaju različite poslove:
| Socket | Odabir familije |
|---|---|
| Klijent dolazi do proxyja | Svaki eksplicitni Bindings unos |
| Proxy dolazi do sljedećeg skoka | OutboundClient.IPVersion konteksta |
IPv6 slušalac stoga ne prisiljava svako odredište na IPv6. Ako radno opterećenje zahtijeva eksplicitnu familiju sljedećeg skoka, postavite je u OnHTTPBeforeCommand prije nego se taj klijent poveže, u skladu sa predviđenim putem do odredišta.
Odvojite kvar slušaoca od kvara sljedećeg skoka kada jedna strana radi. Oslanjanje na automatske veze može inače unijeti u poređenje pretpostavke zavisne od platforme.