Bagaimana router mengetahui perangkat yang akan dikirimi paket? [duplikat]

15

Pertanyaan ini sudah ada jawabannya di sini:

pertanyaan saya tidak menyangkut bagaimana ia bergerak melalui internet, tetapi bagaimana ia bergerak melalui router ke perangkat tertentu. Semua perangkat yang terhubung ke router di jaringan rumah memiliki IP eksternal yang sama. Katakanlah perangkat A memuat halaman dan paket dikirim dari sumber eksternal ke router karena paket mengetahui IP eksternal perangkat A dan mereka bisa sampai ke router. Tapi sekarang, bagaimana bisa ke perangkat A? Bagaimana router tahu untuk mengirimnya ke perangkat A, bukan perangkat B?

Saya pikir ini melibatkan NAT, tetapi saya hanya mencari penjelasan logis tentang apa yang dilakukan NAT untuk mencapai ini.


sumber
Saya tidak bisa memberi Anda jawaban yang sangat spesifik, tetapi router melacak ke mana arah permintaan dan siapa yang mengirimnya. Ketika sumber eksternal merespons, router hanya memeriksa untuk melihat perangkat mana yang mencoba untuk menghubungi sumber eksternal pada awalnya, dan meneruskan tanggapan ke perangkat itu. Jika Anda membutuhkan informasi lebih lanjut, lihatlah di NAT.
Jack Humphries
Pertanyaan ini milik Superuser.com
TimothyP

Jawaban:

11

Ketika Anda memulai koneksi keluar ke situs eksternal, router menggunakan nomor port sumber yang berbeda setiap kali ... itu kemudian menggunakan nomor port sumber (yang merupakan tempat data kembali) sebagai kunci untuk mencari mesin mana dari jaringan internal Anda, permintaan itu berasal. Ini disebut PORT Address Translation (tidak seperti Terjemahan Alamat Jaringan, yaitu ketika Anda memiliki beberapa alamat jaringan yang tersedia untuk router Anda).

Michael Bray
sumber
ini akan menjelaskan hal-hal seperti koneksi TCP, tetapi beberapa aplikasi tanpa koneksi. Bagaimana dengan paket UDP? Bagaimana jika Anda meng-hosting server pada 1 perangkat, bahkan jika ia menggunakan TCP untuk koneksi, ia tidak akan dapat menginisialisasi koneksi tanpa router mengetahui perangkat mana yang dihidupkan server.
Untuk koneksi UDP Anda biasanya harus menentukan dulu port pada router Anda yang dapat digunakan untuk merutekan ke perangkat tertentu. Ini adalah fitur "penerusan porta" dari router, dan dapat digunakan baik untuk paket UDP yang masuk (baik sebagai respons terhadap pesan keluar atau paket masuk baru) maupun untuk paket TCP yang masuk (misalnya yang diprakarsai oleh klien jarak jauh PC Anda sendiri.)
Michael Bray
1

Biasanya, semua perangkat dari jaringan rumah memiliki alamat internal yang berbeda (alamat pribadi, selalu 192.168.0.1 ~ 192.168.0.255).

Ketika sebuah paket dikirim dari jaringan Rumah (misalkan Perangkat A: 192.168.0.123), ketika melewati router, router akan menerjemahkan alamat pribadi ke alamat eksternal router (anggap 140.191.2.5), dan router juga merekam pemetaan di NAT itu.

Ketika respons kembali, router memetakan NAT, dan menemukan sumber aslinya adalah Perangkat A.

sehingga perangkat A akhirnya menerima paket tersebut.

Ini hanya konsep, untuk lebih detail, silakan merujuk wiki: NAT.

NCola.L
sumber