Chan e seòladh neoni UDP ASSOCIATE Indy targaid an datagram
Sgar seòladh co-cheangail a' chliaint, an SOCKS relay a thèid a thilleadh agus an targaid a tha air a còdachadh anns gach pasgan UDP.
Faodaidh 0.0.0.0:0 ann an iarrtas UDP ASSOCIATE Indy a bhith a dh'aona ghnothaich. Tha an t-iarrtas sin a' toirt cunntas air an àite UDP a thathar an dùil ris air taobh a' chliaint, agus tha RFC 1928 a' ceadachadh neothan nuair nach eil e aithnichte. Chan eil e a' taghadh na seirbheis dheireannaich.
Tha BND.ADDR/BND.PORT an fhreagairt a' comharrachadh an relay chun a chuireas an cliant datagraman cuachaichte.
TCP control: client → SOCKS5 proxy → UDP association reply
UDP payload: client → returned relay address → target serviceAnn an Indy, tha TIdUDPClient.Connect a' gairm OpenUDP a' phrogsaidh fhollaiseach. Tha TIdSocksInfo a' solarachadh raointean a' cho-cheangail neoni. Nas fhaide air adhart, tha SendBuffer a' cur na seirbheis a thathar ag iarraidh gu SendToUDP, a tha a' togail ceann-là ceann-uidhe SOCKS UDP ron dàta tagraidh.
Ma shoirbhicheas leis a' cho-cheangal ach ma dh'fhàilligeas an trafaig, rannsaich an relay a thill, an ceann-uidhe còdaichte agus slighe freagairt UDP. Faodaidh NAT/ballachan-teine an t-iomlaid TCP a leigeil a-steach fhad 's a tha iad a' bacadh UDP.
Cùm an ceangal smachd TCP fosgailte; tha a dhùnadh a' crìochnachadh a' cho-cheangail. Chan eil an obrachadh seo aig SOCKS4/4a, agus chan eil an t-ainm SOCKS5 leis fhèin a' gealltainn gu bheil frithealaiche a' toirt taic do UDP.