Indy HTTP proksisində IPv6 bağlamaları və çıxış IPVersion
Aktivləşdirmədən əvvəl açıq yerli IPv4/IPv6 bağlamaları əlavə edin; qoşulmadan öncə OutboundClient üzərində tələb olunan növbəti hop ailəsini 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 aktiv olmayan mövcud TIdHTTPProxyServer üzərində tətbiq edin, sonra onun adi aktivləşdirməsindən istifadə edin. Loopback ünvanları qəsdən yalnız yerli müştəriləri qəbul edir; uzaq istifadə üçün əlçatan interfeys ünvanları və giriş nəzarəti tələb olunur. Yaranan giriş sərhədini yoxlayın həmin dinləyicini ifşa etməzdən əvvəl.
Gələn bağlamalar və çıxan soket fərqli işlər görür:
| Soket | Ailə seçimi |
|---|---|
| Müştəri proksiyə çatır | Hər açıq Bindings qeydi |
| Proksi növbəti hopa çatır | Kontekstin OutboundClient.IPVersion dəyəri |
Buna görə IPv6 dinləyicisi hər təyinatı IPv6-ya məcbur etmir. Əgər iş yükü açıq növbəti hop ailəsi tələb edirsə, həmin müştəri qoşulmadan əvvəl OnHTTPBeforeCommand içində onu təyin edin və nəzərdə tutulan təyinat yoluna uyğunlaşdırın.
Bir tərəf işləyəndə dinləyici nasazlığını növbəti hop nasazlığından ayırın. Avtomatik bağlamalara güvənmək əks halda müqayisəyə platformadan asılı fərziyyələr gətirə bilər.