Indy نىڭ نۆل UDP ASSOCIATE ئادرېسى datagram نىڭ نىشانى ئەمەس
خېرىدار ئۇلىنىش ئادرېسى، قايتۇرۇلغان SOCKS relay ۋە ھەر بىر UDP بوغچىسىغا كودلانغان نىشاننى ئايرىڭ.
Indy UDP ASSOCIATE تەلەپنامىسىدىكى 0.0.0.0:0 قەستەن بولۇشى مۇمكىن. بۇ تەلەپنامە خېرىدار تەرەپتە كۈتۈلگەن UDP ئاخىرقى نۇقتىنى تەسۋىرلەيدۇ، RFC 1928 ئۇ نامەلۇم بولغاندا نۆلگە يول قويىدۇ. ئۇ ئاخىرقى مۇلازىمەتنى تاللىمايدۇ.
جاۋابتىكى BND.ADDR/BND.PORT خېرىدار ئورالغان datagram لارنى ئەۋەتىدىغان relay نى كۆرسىتىدۇ.
TCP control: client → SOCKS5 proxy → UDP association reply
UDP payload: client → returned relay address → target serviceIndy دە TIdUDPClient.Connect شەپپاف proxy نىڭ OpenUDP نى چاقىرىدۇ. TIdSocksInfo نۆل ئۇلىنىش مەيدانلىرىنى تەمىنلەيدۇ. كېيىن SendBuffer كېرەكلىك مۇلازىمەتنى SendToUDP غا يەتكۈزىدۇ، ئۇ ئەپلىكېيشن سانلىق مەلۇماتىدىن ئىلگىرى SOCKS UDP نىشان ماۋزۇسىنى قۇرىدۇ.
ئۇلىنىش مۇۋەپپەقىيەتلىك بولسىمۇ ئەمما ئەۋەتىش مەغلۇپ بولسا، قايتۇرۇلغان relay، كودلانغان نىشان ۋە UDP جاۋاب يولىنى تەكشۈرۈڭ. NAT/ئوت تاملىرى TCP ئالماشتۇرۇشىغا يول قويۇپ UDP نى توسالايدۇ.
TCP كونترول ئۇلىنىشىنى ئوچۇق ساقلاڭ؛ ئۇنى تاقاش ئۇلىنىشنى ئاخىرلاشتۇرىدۇ. SOCKS4/4a دا بۇ مەشغۇلات يوق، پەقەت SOCKS5 نامى سېرۋېرنىڭ UDP نى قوللايدىغانلىقىغا كاپالەتلىك قىلمايدۇ.