तुमच्या अनुप्रयोग प्रोटोकॉलपूर्वी Netty ची SOCKS वाटाघाटी ठेवा
अनुप्रयोग ट्रॅफिकपूर्वी Netty SOCKS प्रॉक्सी हँडलर ठेवा आणि प्रॉक्सी-बाजूचे DNS हेतुपूर्वक असेल तेव्हा न सोडवलेले गंतव्य जतन करा.
SOCKS सर्व्हरने गंतव्य सोडवायचे असलेल्या विद्यमान Netty bootstrap/pipeline साठी:
bootstrap.resolver(NoopAddressResolverGroup.INSTANCE);
pipeline.addFirst(
new Socks5ProxyHandler(new InetSocketAddress("127.0.0.1", 1080))
);
bootstrap.connect(
InetSocketAddress.createUnresolved("example.com", 443)
);प्रॉक्सी एंडपॉइंट स्थानिक पोर्ट 1080 आहे; न सोडवलेले कनेक्शन लक्ष्य example.com:443 आहे. दोन्ही भूमिकांसाठी प्रॉक्सी पत्ता वापरू नका आणि हँडलरला मिळण्यापूर्वी नाव सोडवू नका. अनुमत सार्वजनिक-प्रॉक्सी मार्गावरील सार्वजनिक लक्ष्यांसाठी, SOCKS5 प्रॉक्सी यादी हँडलरच्या प्रॉक्सी एंडपॉइंटसाठी उमेदवार पुरवते.
गंतव्य ट्रॅफिकची देवाणघेवाण करणाऱ्या हँडलरपूर्वी Socks5ProxyHandler ठेवा. त्याच्या प्रॉक्सी कनेक्शन future ची वाट पाहा, केवळ लिसनरपर्यंत पोहोचणाऱ्या चॅनेलची नाही. नाकारलेली पद्धत किंवा गंतव्य या सेटअप टप्प्यातील आहे.
HTTPS साठी, पुढील TLS स्तर गंतव्याचे होस्टनाव, आवश्यक पडताळणी आणि विश्वास वापरतो—SOCKS एंडपॉइंटची ओळख नाही. त्यानंतरच HTTP/अनुप्रयोग देवाणघेवाण सुरू होते.
हा तुकडा इव्हेंट लूप, चॅनेल प्रकार, TLS/HTTP हँडलर किंवा सामान्य त्रुटी हाताळणी देत नाही. प्रमाणीकरणाच्या गरजांशी जुळणारा SOCKS कन्स्ट्रक्टर निवडा; HTTP Basic हँडलर हा दुसरा प्रोटोकॉल आहे.
no-op resolver फक्त तिथे वापरा जिथे या डाउनस्ट्रीम हँडलरकडे होस्टनाव सोडवणे आहे. इतर कनेक्शनांना स्थानिक शोध लागू शकतो. बिघाडाचे निदान करताना resolver आउटपुट, प्रॉक्सी future, TLS आणि अनुप्रयोग निकाल वेगळे ठेवा.