Java DatagramSocket ۋە SOCKS5 UDP ئەتكۈزۈش
TCP ئۇلىنىشلىرى ئاللىبۇرۇن SOCKS ئىشلەتكەن تەقدىردىمۇ، Java UDP socket نىڭ نېمە ئۈچۈن SOCKS5 UDP ئىجرا قىلىشى كېرەكلىكىنى چۈشىنىڭ.
Java HTTP تەلەپنىڭ SOCKS ئارقىلىق ئىشلەيدۇ، ئەمما UDP ئىقتىدارى يەنىلا سانلىق مەلۇماتنى بىۋاسىتە ئەتكۈزىدۇ ياكى مەغلۇپ بولىدۇ. JVM نىڭ SOCKS خاسلىقلىرىنى تەڭشەش DatagramSocket غا SOCKS5 UDP ئىجرا قىلىشنى بەرمەيدۇ.
DatagramSocket API تور ئاخىرقى نۇقتىلىرىغا ئادرېسلانغان داتاگرامنى ئەتكۈزىدۇ ۋە تاپشۇرۇۋالىدۇ. ئۇنىڭ connect() ئۇسۇلى شۇ socket ئۈچۈن ھەمراھ تاللايدۇ. ئۇ ھەمراھ بىلەن SOCKS سۆھبىتى ئېلىپ بارمايدۇ.
SOCKS5 UDP يولى قوشۇمچە خىزمەت تەلەپ قىلىدۇ
SOCKS5 TCP كونترول ئۇلىنىشى ئۈستىدە قۇرۇلغان UDP باغلىنىشىنى بەلگىلەيدۇ. ئاندىن خېرىدار ۋاكالەتچى بەرگەن ئەتكۈزۈش ئادرېسى بىلەن قاپلانغان داتاگراملارنى ئالماشتۇرىدۇ. ھەر بىر قاپلانغان ئۇچۇر ئۆز مەنزىلىنى كۆرسىتىدۇ. خېرىدار ئىجراسى بۇ قاپلاش ۋە كونترول ئۇلىنىشىنىڭ ئۆمرىنى باشقۇرۇشى كېرەك.
ئادەتتىكى UDP socket نى ۋاكالەتچىنىڭ TCP ئاڭلاش پورتىغا قارىتىش بۇ باسقۇچلارنى ئاتلايدۇ. ئەپلىكەيشىنىڭ خام داتاگراملىرىنى شۇ ئادرېسقا ئەتكۈزۈش باغلىنىشنىڭ ئورنىنى ئالمايدۇ.
SOCKS5 UDP ئەتكۈزۈشنى ئېنىق قوللايدىغان كۇتۇپخانا ياكى ئەپلىكەيشە ئىقتىدارىنى تاللاڭ ۋە مۇلازىمېتىرمۇ ئۇنى قوللايدىغانلىقىنى جەزملەشتۈرۈڭ. SOCKS قوللاشنى ئېلان قىلغان كۇتۇپخانا پەقەت TCP CONNECT نى ئىجرا قىلىشى مۇمكىن. پروتوكول ئۆلچىمى بۇ بۇيرۇقلارنى ئايرىيدۇ.
UDP ئەتكۈزۈشكىمۇ ئىشلىتىشكە بولىدىغان يول كېرەك
ۋاكالەتچىگە مۇۋەپپەقىيەتلىك TCP ئۇلىنىش پەقەت كونترول يولىنى قۇرىدۇ. ئوت توسۇقلار ياكى NAT ھەرىكىتى ئەتكۈزۈشكە ئەۋەتىلگەن داتاگراملارغا يەنىلا خالالەت قىلىشى مۇمكىن. ئەپلىكەيشە مەنزىلى تورسىز دەپ خۇلاسە چىقىرىشتىن بۇرۇن قايتۇرۇلغان ئەتكۈزۈش ئاخىرقى نۇقتىسى ۋە ھەر قانداق ئەتكۈزۈش خاتالىقىنى توپلاڭ.
ئاخىرىدا، SOCKS توشۇش قوللىشى UDP غا يەتكۈزۈش كاپالەتلىرىنى قوشمايدۇ. يول ئۆزگەرگەندىن كېيىنمۇ ئەپلىكەيشىنىڭ ئۆز ۋاقىت چەكلىمىلىرى، يوقىتىشنى بىر تەرەپ قىلىش ۋە ئۇچۇر چوڭلۇقى چەكلىمىلىرى ئىجرا بولىدۇ.