IP dan Port Proksi: Format Apakah yang Diperlukan Aplikasi Anda?
Tukar entri senarai proksi kepada URL HTTP atau SOCKS, isi medan hos dan port berasingan serta format alamat IPv6 dengan betul.
Sesetengah aplikasi mahukan IP:port. Yang lain memerlukan URL bermula dengan http:// atau socks5://. Tetapan pelayar sering memisahkan alamat dan port dalam medan berlainan. Maka titik akhir yang sama boleh muncul dalam beberapa format tanpa alamatnya berubah.
Entri IPv4
Katakan sebuah senarai proksi HTTP memberikan contoh proksi HTTP 203.0.113.10:8080.
| Aplikasi meminta | Masukkan |
|---|---|
| Hos atau IP | 203.0.113.10 |
| Port | 8080 |
| URL proksi HTTP | http://203.0.113.10:8080 |
Jangan masukkan port dua kali. Jika aplikasi sudah mempunyai medan port, meletakkan 203.0.113.10:8080 dalam medan hos boleh menyebabkannya cuba menyelesaikan seluruh rentetan sebagai nama hos. Begitu juga, jangan tambah skema kepada medan yang secara jelas hanya menerima alamat IP.
Skema mesti sepadan dengan perkhidmatan. Pilih HTTP atau SOCKS5 mengikut sokongan klien sebelum menukar alamat. Menulis socks5:// di hadapan titik akhir HTTP mengubah apa yang dihantar klien; ia tidak mengaktifkan SOCKS5 pada pelayan itu.
IPv6 memerlukan kurungan siku dalam URL
Alamat IPv6 sudah mengandungi titik bertindih, jadi URL mengapit alamat dengan kurungan siku sebelum menambah port:
http://[2001:db8::10]:8080
socks5://[2001:db8::10]:1080
Tanpa kurungan itu, sempadan alamat dan port menjadi kabur. Aplikasi dengan medan berasingan biasanya mahukan 2001:db8::10 sebagai hos dan 8080 sebagai port; ikut format inputnya. Kedua-dua alamat di sini ialah contoh dokumentasi, bukannya proksi aktif.
Huraikan URL, bukan pisahkan pada setiap titik bertindih
Skrip Python kecil boleh mengendalikan URL IPv4 dan IPv6 berkurungan siku menggunakan penghuraian URL standard:
from urllib.parse import urlsplit
proxy = urlsplit("http://[2001:db8::10]:8080")
print(proxy.scheme)
print(proxy.hostname)
print(proxy.port)
Sifat hostname memulangkan alamat tanpa kurungan siku. Memisahkan rentetan asal pada setiap titik bertindih akan merosakkan contoh ini. Dalam pengimport sebenar, tolak juga hos yang tiada, skema yang tidak disokong dan port di luar 1–65535. Penghuraian URL memberikan komponennya; ia tidak membuktikan perkhidmatan itu wujud.
Apabila senarai mengandungi nama pengguna dan kata laluan
Susun atur URL yang lazim ialah http://username:password@host:port. Aksara seperti @, # dan / dalam kelayakan memerlukan pengekodan URL yang betul. Jika klien menyediakan medan kelayakan berasingan, menggunakannya biasanya lebih mudah daripada membina URL secara manual.
Semak format asal penyedia sebelum menukar rentetan kelayakan yang dipisahkan titik bertindih. Empat medan yang dipisahkan begitu tiada makna sejagat, dan kata laluan sendiri boleh mengandungi titik bertindih. Penghurai bagi baris IP:port biasa tidak patut meneka format lain secara senyap.