موجودہ Netty bootstrap/pipeline کے لیے جہاں SOCKS سرور کو منزل حل کرنی چاہیے:

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 اور ایپلیکیشن نتیجہ الگ رکھیں۔

متعلقہ مضامین