OpenJDK 25 में socksProxyVersion के साथ SOCKS4 चुनें
OpenJDK 25 में स्पष्ट SOCKS एंडपॉइंट के साथ दस्तावेज़ित संस्करण गुण का उपयोग करें और गुण के JVM-व्यापी दायरे को ध्यान में रखें।
OpenJDK 25 के सॉकेट कार्यान्वयन के लिए, socksProxyVersion गुण के साथ SOCKS4 चुनें। ऐप्लिकेशन शुरू करते समय इसे दिया जा सकता है:
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 संस्करण चाहिए, तो व्यक्तिगत अनुरोधों के आसपास इसे आगे-पीछे न बदलें। इसके बजाय आवश्यक प्रति-कनेक्शन चयन का समर्थन करने वाला क्लाइंट इंटरफ़ेस उपयोग करें। पुराने JDK उदाहरणों से निजी setV4 प्रतिबिंब समर्थित कॉन्फ़िगरेशन इंटरफ़ेस नहीं है।