Seleccioneu SOCKS4 a OpenJDK 25 amb socksProxyVersion
Utilitzeu la propietat de versió documentada amb un punt final SOCKS explícit a OpenJDK 25 i tingueu en compte l'abast de la propietat a tot el JVM.
Per a la implementació de sockets d'OpenJDK 25, seleccioneu SOCKS4 amb la propietat socksProxyVersion. Es pot proporcionar en iniciar l'aplicació:
java -DsocksProxyVersion=4 YourApplicationL'aplicació encara pot proporcionar el punt final del proxy de manera explícita:
Proxy proxy = new Proxy(Proxy.Type.SOCKS,
new InetSocketAddress("proxy.example", 1080));
try (Socket socket = new Socket(proxy)) {
socket.connect(new InetSocketAddress("192.0.2.10", 80), 5000);
socket.setSoTimeout(10000);
}Les adreces són marcadors de posició. Una adreça no autenticada de la llista de proxys SOCKS4 pot omplir l'amfitrió i el port del proxy per a una prova IPv4 pública permesa; utilitzeu l'adreça IPv4 i el port objectiu reals per separat. Aquest fragment obre i tanca el flux TCP; un protocol d'aplicació utilitzaria el flux connectat dins del bloc.
La implementació d'OpenJDK 25 comprova la propietat de versió fins i tot quan el constructor ha rebut un Proxy SOCKS explícit ordinari. L'objecte Proxy públic conté un tipus i una adreça, no un camp de versió SOCKS per objecte.
La propietat de versió té abast a tot el JVM. Si les càrregues concurrents requereixen versions SOCKS diferents, no la canvieu amunt i avall al voltant de sol·licituds individuals. En el seu lloc, utilitzeu una interfície de client que admeti la selecció necessària per connexió. La reflexió privada setV4 dels exemples antics de JDK no és la interfície de configuració admesa.