Indy HTTP proxy'de IPv6 bağlamaları ve giden IPVersion
Etkinleştirmeden önce açık yerel IPv4/IPv6 bağlamaları ekleyin; bağlanmadan önce OutboundClient üzerinde gereken sonraki atlama ailesini seçin.
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;Bunu etkin olmayan mevcut TIdHTTPProxyServer üzerinde uygulayın, ardından normal etkinleştirmesini kullanın. Loopback adresleri kasıtlı olarak yalnızca yerel istemcileri kabul eder; uzaktan kullanım erişilebilir arayüz adresleri ve erişim denetimleri gerektirir. Ortaya çıkan erişim sınırını doğrulayın o dinleyiciyi açığa çıkarmadan önce.
Gelen bağlamalar ve giden soket farklı işler yapar:
| Soket | Aile seçimi |
|---|---|
| İstemci proxy'ye ulaşır | Her açık Bindings girdisi |
| Proxy sonraki atlamaya ulaşır | Bağlamın OutboundClient.IPVersion değeri |
Bu nedenle bir IPv6 dinleyicisi her hedefi IPv6'ya zorlamaz. İş yükü açık bir sonraki atlama ailesi gerektiriyorsa, o istemci bağlanmadan önce OnHTTPBeforeCommand içinde ayarlayın ve amaçlanan hedef yoluna uydurun.
Bir taraf çalıştığında dinleyici arızasını sonraki atlama arızasından ayırın. Otomatik bağlamalara güvenmek aksi hâlde karşılaştırmaya platforma bağlı varsayımlar sokabilir.