عنوان UDP ASSOCIATE الصفري في Indy ليس هدف مخطط البيانات
افصل بين عنوان اقتران العميل ومرحّل SOCKS المُعاد والهدف المشفّر في كل حزمة UDP.
قد يكون 0.0.0.0:0 في طلب UDP ASSOCIATE من Indy مقصودًا. يصف ذلك الطلب نقطة نهاية 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، الذي يبني ترويسة وجهة UDP في SOCKS قبل بيانات التطبيق.
إذا نجح الاقتران وفشل نقل الحركة، فافحص المرحّل المُعاد والوجهة المشفّرة ومسار رد UDP. يمكن لجدران NAT/الحماية أن تسمح بتبادل TCP مع حجب UDP.
أبقِ اتصال التحكم TCP مفتوحًا؛ فإغلاقه ينهي الاقتران. لا تملك SOCKS4/4a هذه العملية، ولا تضمن تسمية SOCKS5 وحدها أن الخادم يدعم UDP.