За имплементацију сокета у OpenJDK 25 изаберите SOCKS4 помоћу својства socksProxyVersion. Оно се може навести при покретању апликације:

java -DsocksProxyVersion=4 YourApplication

Апликација и даље може експлицитно навести крајњу тачку проксија:

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);
}

Адресе су заменске. Неаутентификована адреса са листе SOCKS4 проксија може попунити хост и порт проксија за дозвољени јавни IPv4 тест; стварну циљну IPv4 адресу и порт користите одвојено. Овај фрагмент отвара и затвара TCP ток; апликацијски протокол би користио повезани ток унутар блока.

Имплементација OpenJDK 25 проверава својство верзије чак и када је конструктор примио обичан експлицитни SOCKS Proxy. Јавни Proxy објекат сам садржи тип и адресу, а не поље SOCKS верзије по објекту.

Својство верзије има опсег на нивоу целог JVM-а. Ако паралелна оптерећења захтевају различите SOCKS верзије, не пребацујте га напред-назад око појединачних захтева. Уместо тога користите клијентски интерфејс који подржава потребан избор по вези. Приватна setV4 рефлексија из старих JDK примера није подржани интерфејс за конфигурацију.

Повезани чланци