דער נול UDP ASSOCIATE אַדרעס פֿון Indy איז נישט דאָס ציל פֿונעם דאַטאַגראַם
טיילט אָפּ דעם קליענט-אַסאָציאַציע אַדרעס, דעם צוריקגעגעבענעם SOCKS רעלײַ און דאָס ציל וואָס ווערט קאָדירט אין יעדער UDP פּאַקעט.
0.0.0.0:0 אין אַן Indy UDP ASSOCIATE בקשה קען זיין בכוונה. די בקשה באַשרײַבט דעם דערוואַרטעטן 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.