0.0.0.0:0 Indy UDP ASSOCIATE užklausoje gali būti tyčinis. Ši užklausa aprašo laukiamą kliento pusės UDP galinį tašką, o RFC 1928 leidžia nulius, kai jis nežinomas. Ji neparenka galutinės paslaugos.

BND.ADDR/BND.PORT atsakyme nurodo releją, kuriam klientas siunčia inkapsuliuotas duagramas.

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

Indy TIdUDPClient.Connect iškviečia skaidraus proxy OpenUDP. TIdSocksInfo pateikia nulinės asociacijos laukus. Vėliau SendBuffer perduoda norimą paslaugą SendToUDP, kuris sudaro SOCKS UDP paskirties antraštę prieš programos duomenis.

Jei asociacija pavyksta, bet srautas nepraeina, patikrinkite grąžintą releją, užkoduotą paskirtį ir UDP atsakymo kelią. NAT/ugniaisienės gali praleisti TCP mainus ir blokuoti UDP.

Laikykite TCP valdymo ryšį atidarytą; jį uždarius asociacija baigiasi. SOCKS4/4a neturi šios operacijos, o vien SOCKS5 pavadinimas negarantuoja, kad serveris palaiko UDP.

Susiję straipsniai