പ്രോക്സി IPയും പോർട്ടും: ആപ്പിന് ഏത് രൂപമാണ് വേണ്ടത്?
പ്രോക്സി പട്ടികയിലെ എൻട്രി HTTP അല്ലെങ്കിൽ SOCKS URL ആക്കുക, വേറിട്ട ഹോസ്റ്റ്-പോർട്ട് ഫീൽഡുകൾ പൂരിപ്പിക്കുക, IPv6 വിലാസങ്ങൾ ശരിയായി എഴുതുക.
ചില ആപ്പുകൾ IP:port ആവശ്യപ്പെടുന്നു. മറ്റുള്ളവയ്ക്ക് http:// അല്ലെങ്കിൽ socks5:// കൊണ്ട് തുടങ്ങുന്ന URL വേണം. ബ്രൗസർ ക്രമീകരണങ്ങളിൽ വിലാസവും പോർട്ടും പലപ്പോഴും വേറിട്ട ഫീൽഡുകളിലാണ്. അതിനാൽ ഒരേ എൻഡ്പോയിന്റ് വിലാസം മാറാതെ പല രൂപത്തിൽ കാണാം.
ഒരു IPv4 എൻട്രി
ഒരു HTTP പ്രോക്സി പട്ടിക ഉദാഹരണമായി HTTP പ്രോക്സി 203.0.113.10:8080 നൽകുന്നു എന്നു കരുതുക.
| ആപ്പ് ആവശ്യപ്പെടുന്നത് | നൽകുക |
|---|---|
| ഹോസ്റ്റ് അല്ലെങ്കിൽ IP | 203.0.113.10 |
| പോർട്ട് | 8080 |
| HTTP പ്രോക്സി URL | http://203.0.113.10:8080 |
പോർട്ട് രണ്ടുതവണ ചേർക്കരുത്. ആപ്പിൽ പോർട്ട് ഫീൽഡ് ഇതിനകം ഉണ്ടെങ്കിൽ, ഹോസ്റ്റ് ഫീൽഡിൽ 203.0.113.10:8080 നൽകുന്നത് മുഴുവൻ സ്ട്രിങ്ങിനെയും ഹോസ്റ്റ്നെയിമായി പരിഹരിക്കാൻ ശ്രമിക്കുന്നതിന് ഇടയാക്കാം. അതുപോലെ IP വിലാസം മാത്രം ആവശ്യപ്പെടുന്ന ഫീൽഡിൽ സ്കീം ചേർക്കരുത്.
സ്കീം സേവനവുമായി പൊരുത്തപ്പെടണം. വിലാസം മാറ്റുന്നതിനു മുമ്പ് ക്ലയന്റിന്റെ പിന്തുണ അനുസരിച്ച് HTTP അല്ലെങ്കിൽ SOCKS5 തിരഞ്ഞെടുക്കുക. HTTP എൻഡ്പോയിന്റിനു മുന്നിൽ socks5:// എഴുതുന്നത് ക്ലയന്റ് അയയ്ക്കുന്നതു മാറ്റുന്നു; ആ സെർവറിൽ SOCKS5 പ്രവർത്തനക്ഷമമാക്കുന്നില്ല.
URL-ൽ IPv6-ന് ചതുര ബ്രാക്കറ്റുകൾ വേണം
IPv6 വിലാസത്തിൽ കോളനുകൾ നേരത്തേ ഉള്ളതിനാൽ, URL പോർട്ട് ചേർക്കുന്നതിന് മുമ്പ് വിലാസം ചതുര ബ്രാക്കറ്റുകളിൽ ഇടുന്നു:
http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080
ബ്രാക്കറ്റില്ലെങ്കിൽ വിലാസവും പോർട്ടും തമ്മിലുള്ള അതിർത്തി വ്യക്തമല്ല. വേറിട്ട ഫീൽഡുകളുള്ള ആപ്പ് സാധാരണ ഹോസ്റ്റായി 2001:db8::10യും പോർട്ടായി 8080യും ആവശ്യപ്പെടും; അതിന്റെ ഇൻപുട്ട് രൂപം പിന്തുടരുക. ഇവിടത്തെ രണ്ടു വിലാസങ്ങളും രേഖകൾക്കുള്ള ഉദാഹരണങ്ങളാണ്, പ്രവർത്തിക്കുന്ന പ്രോക്സികളല്ല.
ഓരോ കോളനിലും പിരിച്ചിടാതെ URL പാർസ് ചെയ്യുക
ചെറിയ Python സ്ക്രിപ്റ്റിന് സ്റ്റാൻഡേർഡ് URL പാർസർ ഉപയോഗിച്ച് IPv4 URL-കളും ബ്രാക്കറ്റുള്ള IPv6 URL-കളും കൈകാര്യം ചെയ്യാം:
from urllib.parse import urlsplit
proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)
hostname പ്രോപ്പർട്ടി ബ്രാക്കറ്റില്ലാത്ത വിലാസം മടക്കിനൽകുന്നു. യഥാർഥ സ്ട്രിങ്ങിനെ ഓരോ കോളനിലും പിരിച്ചാൽ ഈ ഉദാഹരണം തകരും. യഥാർഥ ഇമ്പോർട്ടറിൽ ഹോസ്റ്റ് ഇല്ലാത്തവ, പിന്തുണയില്ലാത്ത സ്കീമുകൾ, 1–65535 പരിധിക്കു പുറത്തുള്ള പോർട്ടുകൾ എന്നിവയും നിരസിക്കുക. URL പാർസ് ചെയ്താൽ അതിന്റെ ഘടകങ്ങൾ ലഭിക്കും; സേവനം നിലവിലുണ്ടെന്നു തെളിയില്ല.
പട്ടികയിൽ ഉപയോക്തൃനാമവും പാസ്വേഡും ഉള്ളപ്പോൾ
സാധാരണ URL രൂപം http://username:password@host:port ആണ്. ലോഗിൻ വിവരങ്ങളിലെ @, #, / പോലുള്ള ചിഹ്നങ്ങൾക്ക് ശരിയായ URL എൻകോഡിങ് വേണം. ക്ലയന്റിൽ ലോഗിൻ വിവരങ്ങൾക്ക് വേറിട്ട ഫീൽഡുകൾ ഉണ്ടെങ്കിൽ, URL കൈകൊണ്ട് നിർമ്മിക്കുന്നതിനെക്കാൾ അവ ഉപയോഗിക്കുന്നത് സാധാരണ എളുപ്പമാണ്.
കോളനുകളാൽ വേർതിരിച്ച ലോഗിൻ വിവരങ്ങളുടെ സ്ട്രിങ് മാറ്റുന്നതിനു മുമ്പ് സേവനദാതാവിന്റെ യഥാർഥ രൂപം പരിശോധിക്കുക. ഇങ്ങനെ വേർതിരിച്ച നാല് ഫീൽഡുകൾക്ക് പൊതുവായ ഒരർഥമില്ല; പാസ്വേഡിൽത്തന്നെ കോളൻ ഉണ്ടാകാം. സാധാരണ IP:port വരികൾക്കുള്ള പാർസർ മറ്റൊരു രൂപം നിശ്ശബ്ദമായി ഊഹിക്കരുത്.