Proxy IP සහ port: ඔබේ යෙදුමට අවශ්ය ආකෘතිය කුමක්ද?
Proxy ලැයිස්තු සටහනක් HTTP හෝ SOCKS URL බවට හරවා, host සහ port වෙන්වූ ක්ෂේත්ර පුරවා IPv6 ලිපින නිවැරදිව ලියන්න.
සමහර යෙදුම් IP:port ඉල්ලයි. අනෙක් ඒවාට http:// හෝ socks5:// වලින් ආරම්භ වන URL අවශ්යය. බ්රව්සර් සැකසුම්වල ලිපිනය හා port බොහෝ විට වෙනස් ක්ෂේත්රවල ඇත. එබැවින් එකම endpoint එක ලිපිනය වෙනස් නොවී ආකෘති කිහිපයකින් දැක්විය හැකිය.
IPv4 සටහනක්
HTTP proxy ලැයිස්තුවක් උදාහරණ HTTP proxy ලෙස 203.0.113.10:8080 ලබා දෙන්නේ යැයි සිතමු.
| යෙදුම ඉල්ලන්නේ | ඇතුළත් කරන්න |
|---|---|
| Host හෝ IP | 203.0.113.10 |
| Port | 8080 |
| HTTP proxy URL | http://203.0.113.10:8080 |
port දෙවරක් ඇතුළත් නොකරන්න. යෙදුමට දැනටමත් port කොටුවක් තිබේ නම් host කොටුවේ 203.0.113.10:8080 තැබීමෙන් මුළු පෙළම hostname ලෙස විසඳීමට උත්සාහ කළ හැකිය. එලෙසම IP ලිපිනය පමණක් ඉල්ලන බව පැහැදිලිව දක්වන ක්ෂේත්රයට scheme එකතු නොකරන්න.
Scheme සේවයට ගැළපිය යුතුය. ලිපිනය හරවන්නට පෙර client සහාය අනුව HTTP හෝ SOCKS5 තෝරන්න. HTTP endpoint ඉදිරියේ socks5:// ලිවීම client යවන දේ වෙනස් කරයි; එම server එකේ SOCKS5 සක්රිය නොකරයි.
URL තුළ IPv6 සඳහා කොටු වරහන් අවශ්යය
IPv6 ලිපිනයේ දැනටමත් දෙතිත් ඇති බැවින් URL port එක් කිරීමට පෙර ලිපිනය කොටු වරහන් තුළ තබයි:
http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080
වරහන් නැති විට ලිපිනය හා port අතර සීමාව අපැහැදිලිය. වෙන්වූ ක්ෂේත්ර සහිත යෙදුමක් සාමාන්යයෙන් host සඳහා 2001:db8::10 ද port සඳහා 8080 ද ඉල්ලයි; එම යෙදුමේ ආදාන ආකෘතිය අනුගමනය කරන්න. මෙහි ලිපින දෙකම ලේඛන උදාහරණ වන අතර ක්රියාත්මක proxy නොවේ.
සෑම දෙතිතකින්ම බෙදනු වෙනුවට URL විග්රහ කරන්න
කුඩා Python script එකක් සම්මත 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 ගුණාංගය වරහන් නැති ලිපිනය ලබා දෙයි. මුල් පෙළ සෑම දෙතිතකින්ම බෙදීමෙන් මේ උදාහරණය බිඳේ. සැබෑ importer එකක host නොමැති දෑ, සහාය නොදක්වන scheme හා 1–65535 පිටත port ද ප්රතික්ෂේප කරන්න. URL විග්රහ කිරීමෙන් එහි කොටස් ලැබේ; සේවය පවතින බව ඔප්පු නොවේ.
ලැයිස්තුවේ පරිශීලක නම සහ මුරපදය ඇති විට
සාමාන්ය URL ව්යුහයක් වන්නේ http://username:password@host:port යන්නයි. පිවිසුම් තොරතුරුවල @, # හා / වැනි අක්ෂර නිසි URL encoding කළ යුතුය. client වෙන්වූ පිවිසුම් තොරතුරු ක්ෂේත්ර දෙන්නේ නම් අතින් URL සෑදීමට වඩා ඒවා භාවිතය සාමාන්යයෙන් පහසුය.
දෙතිත් මඟින් වෙන්කළ පිවිසුම් තොරතුරු පෙළ හරවන්නට පෙර සපයන්නාගේ මුල් ආකෘතිය බලන්න. එලෙස වෙන්වූ ක්ෂේත්ර හතරකට පොදු සර්වසාධාරණ අර්ථයක් නැති අතර මුරපදයේම දෙතිත් තිබිය හැකිය. සරල IP:port පේළි සඳහා සෑදූ parser වෙනත් ආකෘතියක් නිහඬව අනුමාන නොකළ යුතුය.