Jika saya ingin terhubung dengan mengatakan, IP 100.100.100.100, Port 80, komputer saya akan mengirim paket tcp dengan alamat ini ke dalam kawat.
Sekarang Jika saya menggunakan server proxy katakan, Port 20080.200.200.200 (semacam proxy yang dapat Anda atur di internet explorer) bagaimana proses ini diubah?
Ketika saya masih ingin terhubung ke IP yang sama, apakah header IP akan menyertakan IP tujuan atau IP proxy atau keduanya?
Saya sudah googled, ada ratusan halaman yang memberi tahu Anda cara mengatur proxy tetapi tidak ada yang menjelaskan cara kerjanya di bawah tenda.
sumber
HTTP adalah protokol Layer 7 jadi jangan bingung. ketika Anda menggunakan proxy HTTP dan Anda mengetik katakan google.com, header HTTP masih sama google.com, tetapi alamat IP tujuan akan menjadi alamat IP dari Proxy, sumber akan menjadi Hosts IP ke nomor port yang disesuaikan 8080.
sumber
Untuk menggunakan proxy HTTP, permintaan dikirim dari klien ke alamat IP server proxy daripada ke server tujuan. Proxy kemudian harus membaca header HTTP untuk mengekstrak permintaan-URI . Permintaan-URI menyertakan nama atau IP server tujuan, dan server proxy menggunakan informasi itu untuk meneruskan permintaan.
The spesifikasi HTTP memungkinkan garis permintaan untuk mengecualikan nama server dan port ketika proxy tidak digunakan (karena ini akan diperlukan jika permintaan itu dikirim langsung ke server itu). Tapi, sesuai spesifikasi ...
Jadi ketika tidak menggunakan proxy, baris permintaan mungkin terlihat seperti:
tetapi untuk menggunakan proxy, baris harus menyertakan nama server (dan port jika tidak 80):
Sisi respons jika operasi bisa lebih sederhana karena server proxy dapat dengan mudah menyampaikan respons kata demi kata melalui soket permintaan yang ditetapkan sebelumnya.
sumber
Host
header untuk menyelesaikan URI parsial jika URI absolut tidak disediakan di baris permintaan.Tidak ada yang namanya "paket tcp". TCP beroperasi dengan aliran data. Ada paket IP.
Anda tampaknya kurang memiliki pengetahuan dasar tentang jaringan, saya sarankan Anda untuk mendapatkan buku yang bagus tentang TCP / IP. Favorit semua orang tampaknya "TCP / IP diilustrasikan" oleh W. Richard Stevens.
Kembali ke pertanyaan Anda.
Proxy adalah perantara:
[Anda] - [proxy] - [server yang ingin Anda sambungkan]
Sekarang ada dua koneksi yang berbeda:
[Anda] - (koneksi Anda ke proxy) - [proxy] - (koneksi proxy ke server) - [server yang ingin Anda sambungkan]
Ketika Anda berpikir Anda terhubung ke server melalui proxy, Anda sebenarnya terhubung ke proxy dan katakan Anda ingin mencapai server tertentu. Kemudian proksi membuka koneksi kedua dari dirinya sendiri ke server itu dan bertindak sebagai perantara melewati data di kedua arah.
sumber