Indy HTTP પ્રોક્સીમાં IPv6 બાઇન્ડિંગ્સ અને આઉટબાઉન્ડ IPVersion
સક્રિય કરતા પહેલાં સ્પષ્ટ સ્થાનિક IPv4/IPv6 બાઇન્ડિંગ્સ ઉમેરો; જોડાણ પહેલાં OutboundClient પર જરૂરી આગળના હોપનું કુટુંબ પસંદ કરો.
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;આને નિષ્ક્રિય હાલના TIdHTTPProxyServer પર લાગુ કરો, પછી તેનું સામાન્ય સક્રિયકરણ વાપરો. loopback સરનામાં જાણી જોઈને ફક્ત સ્થાનિક ક્લાયન્ટ સ્વીકારે છે; દૂરસ્થ વપરાશ માટે પહોંચી શકાય તેવા ઇન્ટરફેસ સરનામાં અને ઍક્સેસ નિયંત્રણો જરૂરી છે. પરિણામી ઍક્સેસ સીમા ચકાસો તે શ્રોતાને ખુલ્લું મૂકતા પહેલાં.
આવતા બાઇન્ડિંગ્સ અને જતું સોકેટ જુદાં કામ કરે છે:
| સોકેટ | કુટુંબ પસંદગી |
|---|---|
| ક્લાયન્ટ પ્રોક્સી સુધી પહોંચે છે | દરેક સ્પષ્ટ Bindings એન્ટ્રી |
| પ્રોક્સી આગળના હોપ સુધી પહોંચે છે | સંદર્ભનું OutboundClient.IPVersion |
તેથી IPv6 શ્રોતા દરેક ગંતવ્યને IPv6 કરવા મજબૂર કરતું નથી. જો વર્કલોડને સ્પષ્ટ આગળના હોપનું કુટુંબ જોઈએ, તો તે ક્લાયન્ટ જોડાય તે પહેલાં OnHTTPBeforeCommand માં તેને સેટ કરો, ઇચ્છિત ગંતવ્ય માર્ગ સાથે મેળ ખાતું.
એક બાજુ કામ કરે ત્યારે શ્રોતાની નિષ્ફળતાને આગળના હોપની નિષ્ફળતાથી અલગ કરો. સ્વયં બાઇન્ડિંગ્સ પર આધાર રાખવાથી અન્યથા પ્લેટફોર્મ-આધારિત ધારણાઓ સરખામણીમાં આવી શકે છે.