Java DatagramSocket እና የSOCKS5 UDP ማስተላለፍ
የJava UDP ሶኬት የTCP ግንኙነቶች ቀድሞውኑ SOCKS ን ቢጠቀሙም ለምን የSOCKS5 UDP አተገባበር እንደሚያስፈልገው ይረዱ።
የ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 የማድረስ ዋስትና አይጨምርም። የመተግበሪያዎ የራሱ የጊዜ ገደቦች፣ የመጥፋት አያያዝ እና የመልእክት መጠን ገደቦች መንገዱ ከተቀየረ በኋላም ይተገበራሉ።