IP u port tal-proxy: liema format teħtieġ l-app tiegħek?
Ikkonverti entrata minn lista ta’ proxies f’URL HTTP jew SOCKS, imla oqsma separati għall-host u l-port, u fformattja indirizzi IPv6 sew.
Xi apps iridu IP:port. Oħrajn jeħtieġu URL li jibda b’http:// jew socks5://. Is-settings tal-browser spiss ipoġġu l-indirizz u l-port f’oqsma differenti. Għalhekk l-istess endpoint jista’ jidher f’diversi formati mingħajr ma jinbidel l-indirizz tiegħu.
Entrata IPv4
Ejja ngħidu li lista ta’ proxies HTTP tagħtik il-proxy HTTP ta’ eżempju 203.0.113.10:8080.
| L-app titlob | Daħħal |
|---|---|
| Host jew IP | 203.0.113.10 |
| Port | 8080 |
| URL tal-proxy HTTP | http://203.0.113.10:8080 |
Tinkludix il-port darbtejn. Jekk l-app diġà għandha qasam għall-port, li tpoġġi 203.0.113.10:8080 fil-qasam tal-host jista’ jwassalha biex tipprova ssolvi s-sekwenza kollha bħala isem ta’ host. Lanqas iżżid skema ma’ qasam li espliċitament jistenna biss indirizz IP.
L-iskema trid taqbel mas-servizz. Agħżel HTTP jew SOCKS5 skont l-appoġġ tal-klijent qabel tikkonverti l-indirizz. Li tikteb socks5:// quddiem endpoint HTTP ibiddel dak li jibgħat il-klijent; ma jattivax SOCKS5 fuq dak is-server.
IPv6 jeħtieġ parentesi kwadri f’URL
Indirizz IPv6 diġà fih żewġ punti, għalhekk il-URL jagħlaq l-indirizz f’parentesi kwadri qabel iżid il-port:
http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080
Mingħajr il-parentesi, il-konfini bejn l-indirizz u l-port ikun ambigwu. App b’oqsma separati normalment trid 2001:db8::10 bħala host u 8080 bħala port; segwi l-format ta’ input tagħha. Iż-żewġ indirizzi hawn huma eżempji għad-dokumentazzjoni, mhux proxies attivi.
Analizza l-URLs minflok taqsam f’kull żewġ punti
Skript żgħir Python jista’ jimmaniġġja URLs IPv4 u IPv6 bil-parentesi permezz tal-parser standard tal-URLs:
from urllib.parse import urlsplit
proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)
Il-proprjetà hostname tagħti lura l-indirizz mingħajr il-parentesi. Li taqsam is-sekwenza oriġinali f’kull żewġ punti jkisser dan l-eżempju. F’importatur reali, irrifjuta wkoll hosts neqsin, skemi mhux appoġġjati u ports barra minn 1–65535. L-analiżi ta’ URL tagħti l-komponenti tiegħu; ma tipprovax li s-servizz jeżisti.
Meta l-lista tinkludi username u password
Struttura komuni ta’ URL hi http://username:password@host:port. Karattri bħal @, # u / fil-kredenzjali jeħtieġu kodifikazzjoni URL xierqa. Jekk il-klijent joffri oqsma separati għall-kredenzjali, normalment ikun eħfef tużahom milli tibni URL bl-idejn.
Iċċekkja l-format oriġinali tal-fornitur qabel tikkonverti sekwenza ta’ kredenzjali separati b’żewġ punti. Erba’ oqsma separati hekk m’għandhomx tifsira universali, u l-password stess tista’ tinkludi żewġ punti. Parser għal linji sempliċi IP:port m’għandux jaqta’ format ieħor fis-skiet.