Proxy-IP en poarte: hokker formaat hat jo app nedich?
Set in proxylistfermelding om nei in HTTP- of SOCKS-URL, folje aparte host- en poartefjilden yn en jou IPv6-adressen de goede opmaak.
Guon apps wolle IP:port. Oaren hawwe in URL nedich dy’t begjint mei http:// of socks5://. Browserynstellingen sette it adres en de poarte faak yn ferskillende fjilden. Itselde einpunt kin dus yn mear formaten stean sûnder dat it adres feroaret.
In IPv4-fermelding
Stel dat in list mei HTTP-proxy’s jo de foarbyldproxy 203.0.113.10:8080 foar HTTP jout.
| De app freget om | Folje yn |
|---|---|
| Host of IP | 203.0.113.10 |
| Poarte | 8080 |
| HTTP-proxy-URL | http://203.0.113.10:8080 |
Jou de poarte net twa kear op. As de app al in poartefjild hat, kin 203.0.113.10:8080 yn it hostfjild derfoar soargje dat er de hiele tekenrige as hostnamme besiket op te lossen. Foegje ek gjin skema ta oan in fjild dat útdruklik allinne in IP-adres ferwachtet.
It skema moat by de tsjinst passe. Kies HTTP of SOCKS5 neffens de stipe fan de kliïnt foardat jo it adres omsette. socks5:// foar in HTTP-einpunt skriuwe feroaret wat de kliïnt ferstjoert; it skeakelt SOCKS5 op dy server net yn.
IPv6 hat fjouwerkante heakjes nedich yn in URL
In IPv6-adres befettet al dûbele punten, dus set de URL it adres tusken fjouwerkante heakjes foardat de poarte tafoege wurdt:
http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080
Sûnder de heakjes is de grins tusken adres en poarte ûndúdlik. In app mei aparte fjilden wol ornaris 2001:db8::10 as host en 8080 as poarte; folgje it ynfierformaat fan dy app. Beide adressen hjir binne dokumintaasjefoarbylden, gjin aktive proxy’s.
Parse URL’s ynstee fan by elke dûbele punt te splitsen
In lyts Python-skript kin IPv4-URL’s en IPv6-URL’s mei heakjes ferwurkje mei de standert-URL-parser:
from urllib.parse import urlsplit
proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)
De eigenskip hostname jout it adres sûnder heakjes werom. De oarspronklike tekenrige by elke dûbele punt splitsen soe dit foarbyld stikken meitsje. Wiis yn in echte ymportfunksje ek ûntbrekkende hosts, net stipe skema’s en poarten bûten 1–65535 ôf. In URL parse jout de ûnderdielen; it bewiist net dat de tsjinst bestiet.
As de list in brûkersnamme en wachtwurd befettet
In gewoane URL-yndieling is http://username:password@host:port. Tekens lykas @, # en / yn ynlochgegevens hawwe goede URL-kodearring nedich. As de kliïnt aparte fjilden foar dy gegevens hat, binne dy ornaris makliker as in URL mei de hân bouwe.
Kontrolearje it oarspronklike formaat fan de oanbieder foardat jo in troch dûbele punten skieden tekenrige mei ynlochgegevens omsette. Fjouwer sokke fjilden hawwe gjin universele betsjutting, en it wachtwurd sels kin in dûbele punt befetsje. In parser foar ienfâldige IP:port-rigels moat net stilwei in oar formaat riede.