Java HTTP сурамыңыз SOCKS аркылуу иштейт, бирок UDP функциясы дагы эле трафикти түз жөнөтөт же ишке ашпайт. JVMдин SOCKS касиеттерин орнотуу DatagramSocket үчүн SOCKS5 UDP ишке ашыруусун бербейт.

DatagramSocket API тармактын акыркы чекиттерине адресделген датаграммаларды жөнөтөт жана кабыл алат. Анын connect() ыкмасы ошол сокет үчүн өнөктөш тандайт. Ал өнөктөш менен SOCKS сүйлөшүүсүн жүргүзбөйт.

SOCKS5 UDP жолу кошумча иш талап кылат

SOCKS5 TCP башкаруу байланышынын үстүндө түзүлгөн UDP биримдигин аныктайт. Андан кийин кардар прокси берген реле дареги менен капталган датаграммаларды алмашат. Ар бир капталган билдирүү өз багытын көрсөтөт. Кардардын ишке ашыруусу ошол каптоону жана башкаруу байланышынын жашоо убактысын башкарышы керек.

Кадимки UDP сокетти проксинин TCP угуучу портуна багыттоо ошол кадамдарды өткөрүп жиберет. Колдонмоңуздун чийки датаграммаларын ошол дарекке жөнөтүү биримдиктин ордун баспайт.

SOCKS5 UDP релесин ачык колдогон китепкананы же колдонмо функциясын тандаңыз жана сервер да аны колдой турганын ырастаңыз. SOCKS колдоосун жарнамалаган китепкана TCP CONNECT гана ишке ашырышы мүмкүн. Протокол спецификациясы бул буйруктарды айырмалайт.

UDP релесине да пайдаланууга жарактуу жол керек

Проксиге ийгиликтүү TCP байланышы башкаруу жолун гана түзөт. Тармак тосмолору же NAT жүрүм-туруму релеге жөнөтүлгөн датаграммаларга дагы эле тоскоол болушу мүмкүн. Колдонмонун багыты тармактан тышкары деп жыйынтык чыгарганга чейин кайтарылган реле акыркы чекитин жана ар кандай реле катасын чогултуңуз.

Акыры, SOCKS транспорттук колдоосу UDPге жеткирүү кепилдиктерин кошпойт. Маршрут өзгөргөндөн кийин да колдонмоңуздун өз тайм-ауттары, жоготууларды иштетүү жана билдирүү өлчөмүнүн чектөөлөрү күчүндө калат.

Тектеш макалалар