Za implementaciju soketa u OpenJDK 25 odaberite SOCKS4 pomoću svojstva socksProxyVersion. Ono se može navesti pri pokretanju aplikacije:

java -DsocksProxyVersion=4 YourApplication

Aplikacija i dalje može eksplicitno navesti krajnju tačku proxyja:

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

Adrese su zamjenske. Neautentificirana adresa sa liste SOCKS4 proxyja može popuniti host i port proxyja za dozvoljeni javni IPv4 test; stvarnu ciljnu IPv4 adresu i port koristite odvojeno. Ovaj fragment otvara i zatvara TCP tok; aplikacijski protokol bi koristio povezani tok unutar bloka.

Implementacija OpenJDK 25 provjerava svojstvo verzije čak i kada je konstruktor primio običan eksplicitni SOCKS Proxy. Javni Proxy objekat sam sadrži tip i adresu, a ne polje SOCKS verzije po objektu.

Svojstvo verzije ima opseg na nivou JVM-a. Ako paralelna opterećenja zahtijevaju različite SOCKS verzije, ne prebacujte ga naprijed-nazad oko pojedinačnih zahtjeva. Umjesto toga koristite klijentski interfejs koji podržava potreban odabir po vezi. Privatna setV4 refleksija iz starih JDK primjera nije podržani interfejs za konfiguraciju.

Povezani članci