አንዳንድ መተግበሪያዎች IP:port ይፈልጋሉ። ሌሎች በhttp:// ወይም socks5:// የሚጀምር URL ይፈልጋሉ። የአሳሽ ቅንብሮች አድራሻና portን ብዙ ጊዜ በተለያዩ መስኮች ያስገባሉ። ስለዚህ ያው መጨረሻ ነጥብ አድራሻው ሳይለወጥ በብዙ ቅርጾች ሊታይ ይችላል።

የIPv4 ግቤት

ከHTTP proxy ዝርዝር የምሳሌ HTTP proxy 203.0.113.10:8080 አገኙ እንበል።

መተግበሪያው የሚጠይቀውየሚያስገቡት
Host ወይም IP203.0.113.10
Port8080
የHTTP proxy URLhttp://203.0.113.10:8080

portን ሁለት ጊዜ አያስገቡ። መተግበሪያው የport መስክ ካለው፣ 203.0.113.10:8080ን በhost መስክ ማስገባት መላውን ሕብረቁምፊ እንደ host ስም ለመፍታት እንዲሞክር ሊያደርገው ይችላል። እንዲሁም IP አድራሻ ብቻ እንደሚፈልግ በግልጽ በተጻፈ መስክ scheme አይጨምሩ።

scheme ከአገልግሎቱ ጋር መዛመድ አለበት። አድራሻውን ከመቀየርዎ በፊት በclient ድጋፍ መሠረት HTTP ወይም SOCKS5 ይምረጡ። ከHTTP መጨረሻ ነጥብ በፊት socks5:// መጻፍ client የሚልከውን ይቀይራል፤ በዚያ አገልጋይ ላይ SOCKS5 አያስችልም።

በURL ውስጥ IPv6 ካሬ ቅንፎችን ይፈልጋል

የIPv6 አድራሻ አስቀድሞ ሁለት ነጥቦች ስላሉት፣ URL portን ከመጨመሩ በፊት አድራሻውን በካሬ ቅንፎች ይከብባል፦

http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080

ያለ ቅንፎቹ በአድራሻና port መካከል ያለው ድንበር ግልጽ አይደለም። የተለያዩ መስኮች ያሉት መተግበሪያ ብዙ ጊዜ 2001:db8::10ን እንደ host፣ 8080ን እንደ port ይፈልጋል፤ የዚያን መተግበሪያ የግቤት ቅርጽ ይከተሉ። እዚህ ያሉት ሁለቱ አድራሻዎች የሰነድ ምሳሌዎች እንጂ የሚሠሩ proxyዎች አይደሉም።

በእያንዳንዱ ሁለት ነጥብ ከመክፈል ይልቅ URLን ይተንትኑ

ትንሽ የPython ስክሪፕት በመደበኛው URL parser የIPv4 እና በቅንፍ የተከበቡ የIPv6 URLዎችን ሊያስተናግድ ይችላል፦

from urllib.parse import urlsplit

proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)

የhostname ባህሪ አድራሻውን ያለ ቅንፎች ይመልሳል። ዋናውን ሕብረቁምፊ በእያንዳንዱ ሁለት ነጥብ መክፈል ይህን ምሳሌ ያበላሻል። በእውነተኛ አስመጪ ውስጥ የጎደሉ hostዎችን፣ ያልተደገፉ schemeዎችንና ከ1–65535 ውጭ ያሉ portዎችንም ይከልክሉ። URLን መተንተን ክፍሎቹን ይሰጣል፤ አገልግሎቱ መኖሩን አያረጋግጥም።

ዝርዝሩ የተጠቃሚ ስምና የይለፍ ቃል ሲያካትት

የተለመደ የURL አወቃቀር http://username:password@host:port ነው። በመግቢያ መረጃ ውስጥ እንደ @፣ # እና / ያሉ ቁምፊዎች ትክክለኛ URL encoding ይፈልጋሉ። client የተለያዩ የመግቢያ መረጃ መስኮችን ከሰጠ፣ URLን በእጅ ከመገንባት ይልቅ እነሱን መጠቀም ብዙ ጊዜ ይቀላል።

በሁለት ነጥቦች የተለየ የመግቢያ መረጃ ሕብረቁምፊ ከመቀየርዎ በፊት የአቅራቢውን ዋና ቅርጽ ያረጋግጡ። በሁለት ነጥብ የተለዩ አራት መስኮች ሁሉን አቀፍ ትርጉም የላቸውም፣ የይለፍ ቃሉም ራሱ ሁለት ነጥብ ሊይዝ ይችላል። ለቀላል IP:port መስመሮች የተዘጋጀ parser ሌላ ቅርጽን በዝምታ መገመት የለበትም።

ተዛማጅ ጽሑፎች