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;

Aplicați acest lucru serverului TIdHTTPProxyServer existent și inactiv, apoi folosiți activarea sa normală. Adresele loopback acceptă intenționat doar clienți locali; utilizarea la distanță necesită adrese de interfață accesibile și controale de acces. Verificați granița de acces rezultată înainte de a expune acel ascultător.

Legăturile de intrare și socketul de ieșire îndeplinesc sarcini diferite:

SocketSelectarea familiei
Clientul ajunge la proxyFiecare intrare Bindings explicită
Proxy-ul ajunge la saltul următorOutboundClient.IPVersion al contextului

Prin urmare, un ascultător IPv6 nu impune IPv6 pentru fiecare destinație. Dacă volumul de lucru cere o familie explicită de salt următor, setați-o în OnHTTPBeforeCommand înainte ca acel client să se conecteze, în concordanță cu traseul de destinație vizat.

Separați defecțiunea ascultătorului de defecțiunea saltului următor când o parte funcționează. Bazarea pe legături automate poate altfel introduce în comparație ipoteze dependente de platformă.

Articole similare