Indy UDP ASSOCIATE درخواست میں 0.0.0.0:0 جان بوجھ کر ہو سکتا ہے۔ یہ درخواست کلائنٹ کی طرف متوقع UDP اینڈ پوائنٹ بیان کرتی ہے، اور RFC 1928 نامعلوم ہونے پر صفر کی اجازت دیتا ہے۔ یہ حتمی سروس منتخب نہیں کرتی۔

جواب کا BND.ADDR/BND.PORT وہ ریلے بتاتا ہے جسے کلائنٹ انکیپسولیٹڈ ڈیٹاگرام بھیجتا ہے۔

TCP control: client → SOCKS5 proxy → UDP association reply
UDP payload: client → returned relay address → target service

Indy میں TIdUDPClient.Connect شفاف پراکسی کے OpenUDP کو کال کرتا ہے۔ TIdSocksInfo صفر ایسوسی ایشن فیلڈز فراہم کرتا ہے۔ بعد میں SendBuffer مطلوبہ سروس SendToUDP کو دیتا ہے، جو ایپلیکیشن ڈیٹا سے پہلے SOCKS UDP منزل ہیڈر بناتا ہے۔

اگر ایسوسی ایشن کامیاب ہو مگر ٹریفک ناکام ہو، تو واپس کیا گیا ریلے، انکوڈ شدہ منزل اور UDP جوابی راستہ جانچیں۔ NAT/فائر وال TCP تبادلہ قبول کرتے ہوئے UDP روک سکتے ہیں۔

TCP کنٹرول کنکشن کھلا رکھیں؛ بند کرنے سے ایسوسی ایشن ختم ہو جاتی ہے۔ SOCKS4/4a میں یہ عمل نہیں، اور صرف SOCKS5 نام اس بات کی ضمانت نہیں کہ سرور UDP کی حمایت کرتا ہے۔

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