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;

Aplíqueo ao TIdHTTPProxyServer inactivo existente e despois use a súa activación habitual. Os enderezos loopback aceptan deliberadamente só clientes locais; o uso remoto require enderezos de interface alcanzables e controis de acceso. Comprobe a fronteira de acceso resultante antes de expoñer ese escoitador.

Os enlaces entrantes e o socket de saída cumpren tarefas distintas:

SocketSelección de familia
O cliente chega ao proxyCada entrada explícita de Bindings
O proxy chega ao seguinte saltoO OutboundClient.IPVersion do contexto

Por tanto, un escoitador IPv6 non obriga a cada destino a usar IPv6. Se a carga de traballo require unha familia de seguinte salto explícita, defínaa en OnHTTPBeforeCommand antes de que ese cliente se conecte, conforme á ruta de destino prevista.

Separe o fallo do escoitador do fallo do seguinte salto cando un lado funciona. Confiar en enlaces automáticos pode introducir doutro xeito suposicións dependentes da plataforma na comparación.

Artigos relacionados