Proxy IP-cím és port: milyen formátum kell az alkalmazásnak?
Alakítsa a proxylista bejegyzését HTTP- vagy SOCKS-URL-lé, töltse ki a külön gazdagép- és portmezőt, és formázza helyesen az IPv6-címeket.
Egyes alkalmazások IP:port formátumot kérnek. Másoknak http:// vagy socks5:// kezdetű URL kell. A böngésző beállításai gyakran külön mezőbe teszik a címet és a portot. Ugyanaz a végpont így több formátumban jelenhet meg a címe változása nélkül.
Egy IPv4-bejegyzés
Tegyük fel, hogy egy HTTP-proxylista a 203.0.113.10:8080 példabeli HTTP-proxyt adja meg.
| Az alkalmazás ezt kéri | Ezt írja be |
|---|---|
| Gazdagép vagy IP | 203.0.113.10 |
| Port | 8080 |
| HTTP-proxy URL-je | http://203.0.113.10:8080 |
Ne adja meg kétszer a portot. Ha már van külön portmező, a gazdagépmezőbe írt 203.0.113.10:8080 miatt az alkalmazás megpróbálhatja az egész karakterláncot gazdagépnévként feloldani. Ugyanígy ne adjon sémát olyan mezőhöz, amely kifejezetten csak IP-címet vár.
A sémának a szolgáltatáshoz kell illenie. A cím átalakítása előtt válasszon HTTP-t vagy SOCKS5-öt az ügyfél támogatása alapján. A HTTP-végpont elé írt socks5:// megváltoztatja, mit küld az ügyfél; nem kapcsolja be a SOCKS5-öt a kiszolgálón.
Az IPv6-címet az URL-ben szögletes zárójelbe kell tenni
Az IPv6-cím már tartalmaz kettőspontokat, ezért az URL a port hozzáadása előtt szögletes zárójelbe foglalja a címet:
http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080
Zárójel nélkül a cím és a port határa nem egyértelmű. A külön mezős alkalmazás általában 2001:db8::10 értéket vár gazdagépként és 8080 értéket portként; kövesse az alkalmazás bemeneti formátumát. Mindkét itteni cím dokumentációs példa, nem működő proxy.
URL-elemzés a kettőspontonkénti felosztás helyett
Egy rövid Python-szkript a szabványos URL-elemzővel kezelheti az IPv4-es és a zárójelezett IPv6-os URL-eket:
from urllib.parse import urlsplit
proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)
A hostname tulajdonság zárójelek nélkül adja vissza a címet. Az eredeti karakterlánc felosztása minden kettőspontnál elrontaná ezt a példát. Valós importálóban utasítsa el a hiányzó gazdagépeket, a nem támogatott sémákat és az 1–65535 tartományon kívüli portokat is. Az URL elemzése annak részeit adja meg; nem bizonyítja a szolgáltatás létezését.
Ha a listában felhasználónév és jelszó is szerepel
Gyakori URL-elrendezés a http://username:password@host:port. A hitelesítő adatokban az @, # és / jellegű karakterek megfelelő URL-kódolást igényelnek. Ha az ügyfél külön hitelesítőadat-mezőket kínál, azokat általában könnyebb használni, mint kézzel összeállítani az URL-t.
A kettőspontokkal tagolt hitelesítőadat-sor átalakítása előtt ellenőrizze a szolgáltató eredeti formátumát. Négy ilyen mezőnek nincs egyetemes jelentése, és maga a jelszó is tartalmazhat kettőspontot. Az egyszerű IP:port sorokra tervezett elemző ne találgasson észrevétlenül más formátumot.