.1.42.1.18.1.55.1.7.1.99NATrouter1 IP

Terjemahan Alamat Jaringan

11 min bacaJaringan

Terjemahan Alamat Jaringan adalah lakban yang membuat IPv4 tetap berfungsi lama setelah alamatnya habis. Ini juga merupakan alasan mengapa aplikasi peer-to-peer memerlukan solusi, mengapa ponsel Anda tidak dapat dijangkau langsung dari Internet, dan mengapa panggilan video terkadang menolak untuk terhubung pada jaringan tertentu. Perlu dipahami secara detail.

Badan artikel selengkapnya disediakan dalam bahasa Inggris di bawah ini.

Network Address Translation (NAT) adalah teknik yang digunakan router untuk membiarkan banyak perangkat di jaringan pribadi berbagi satu alamat IP publik. Ini awalnya merupakan pengganti sementara untuk kehabisan alamat IPv4; itu menjadi perlengkapan permanen di hampir setiap koneksi Internet konsumen.

Operasi dasar

Jaringan rumah Anda biasanya menggunakan IP pribadi dari salah satu rentang RFC 1918 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16). Ini tidak dapat dirutekan di Internet publik; 192.168.1.42 laptop Anda tidak ada artinya di luar rumah Anda.

Ketika laptop Anda membuka koneksi ke example.com:443, paket meninggalkan laptop Anda dengan sumber 192.168.1.42:55123. Router Anda mencegat paket dan menulis ulang sumbernya ke your.public.ip:55123 (atau ke port baru yang dipilih router), lalu meneruskannya. Router Anda mengingat pemetaannya. Ketika respons kembali ditujukan ke your.public.ip:55123, router berkonsultasi dengan pemetaan dan menulis ulang tujuan ke 192.168.1.42:55123, lalu meneruskannya ke laptop. Laptop dan tujuan keduanya tidak mengetahui hal ini terjadi.

Tabel pemetaan

Router konsumen menyimpan tabel NAT yang diindeks oleh (IP internal, port internal, IP eksternal, port eksternal, protokol). Waktu habis setiap baris setelah koneksi tidak aktif — biasanya 30 detik untuk UDP, beberapa menit untuk TCP. Saat tabel terisi (router murah hanya menyimpan beberapa ribu entri), entri lama atau tidak aktif akan dikeluarkan.

Jenis NAT

NAT berbeda dalam hal kelonggarannya dalam menggunakan kembali pemetaan:

  • NAT kerucut penuh: sekali 192.168.1.42:55123 telah dipetakan ke pub.ip:55123, host eksternal any dapat mengirim paket ke pub.ip:55123 dan itu akan diteruskan ke dalam. Paling permisif.
  • Restricted-cone NAT: hanya host eksternal yang telah dikirim oleh perangkat internal yang dapat membalas.
  • Port-restricted-cone: seperti limited-cone, tetapi juga harus cocok port.
  • Symmetric NAT: pemetaan berbeda dibuat untuk setiap tujuan eksternal. Dari luar, perangkat internal yang sama tampak seperti memiliki beberapa alamat publik yang selalu berubah. Paling ketat — dan paling sulit dilintasi untuk protokol peer-to-peer.

Mengapa NAT merusak sesuatu

NAT mudah diterapkan karena tidak memerlukan perubahan pada titik akhir. Namun hal ini mematahkan model awal Internet yang end-to-end. Korban spesifik:

  • Koneksi masuk. Tanpa penerusan port eksplisit, tidak ada seorang pun di Internet yang dapat terhubung ke perangkat di belakang NAT. Menghosting sendiri server game, dunia Minecraft, atau situs web pribadi pada koneksi rumah memerlukan penerusan porta atau relai.
  • Aplikasi peer-to-peer. Dua perangkat yang keduanya berada di belakang NAT tidak dapat saling menelepon secara langsung. Mereka membutuhkan server koordinasi (STUN/ICE) untuk menemukan pemetaan publik mereka, dan mungkin relay (TURN) jika NAT mereka terlalu ketat untuk dilintasi.
  • Protokol yang menyematkan IP dalam payload mereka. FTP Klasik dan SIP keduanya menempatkan IP klien di dalam badan protokol, yang NAT tidak tahu untuk menulis ulang. Gateway lapisan aplikasi (ALG) di router harus mengurai dan menulis ulang payload — solusi yang rapuh.

NAT vs PAT vs CGNAT

Sebenarnya, yang dilakukan sebagian besar router rumah adalah Port Address Translation (PAT) — menerjemahkan nomor port serta alamat ke multipleks banyak aliran internal melalui satu eksternal IP. "NAT" adalah nama sehari-hari untuk ini. Carrier-Grade NAT adalah ide yang sama tetapi pada tingkat ISP: banyak pelanggan berbagi satu IP publik, dengan ISP melakukan PAT dalam skala besar.

Penerusan port dan UPnP

Untuk menerima koneksi masuk di belakang NAT, Anda harus memberi tahu router "kirim paket apa pun yang mengenai port publik X ke IP internal Y pada port Z." Itu penerusan port. Dapat diatur secara manual di admin router atau diminta secara otomatis oleh aplikasi melalui UPnP (Universal Plug and Play) atau NAT-PMP. UPnP nyaman dan terkenal tidak aman — program apa pun di LAN dapat membuka lubang di firewall, itulah sebabnya beberapa panduan keamanan menyarankan untuk menonaktifkannya.

Hairpin NAT dan refleksi

Jika Anda meneruskan port dari IP publik Anda ke server di dalam jaringan Anda, mengakses server tersebut dari dalam jaringan Anda menggunakan nama IP publik hanya berfungsi jika router mendukung "hairpin NAT" (juga disebut NAT loopback / refleksi). Banyak router murah yang tidak memilikinya, itulah sebabnya "server yang dihosting sendiri berfungsi dari luar tetapi tidak dari sofa saya" adalah kebingungan yang umum.

Apa yang menggantikan NAT

IPv6 memiliki begitu banyak alamat sehingga NAT tidak diperlukan — setiap perangkat mendapatkan alamat yang dapat dirutekan secara global. Jaringan IPv6 biasanya memiliki firewall stateful, yang memberikan manfaat keamanan NAT (tidak ada masuk yang tidak diminta) tanpa merusak end-to-end. Seiring dengan berkembangnya adopsi IPv6, NAT secara bertahap akan memudar — namun akan tetap ada selama beberapa dekade.

Pertanyaan yang sering diajukan

Apakah NAT merupakan firewall?
Tidak juga, tapi berfungsi seperti koneksi masuk. Karena NAT hanya membuat pemetaan sebagai respons terhadap lalu lintas keluar, paket masuk yang tidak diminta tidak dapat kemana-mana dan akan dibuang. Ini adalah perlindungan nyata namun terkadang dibingungkan dengan kebijakan firewall eksplisit yang seharusnya juga ada.
Mengapa panggilan video terkadang gagal di belakang NAT?
Panggilan video biasanya menggunakan UDP untuk aliran media. Dua perangkat yang keduanya berada di belakang NAT simetris dapat kesulitan menemukan jalur langsung karena port eksternal berbeda untuk setiap tujuan. Penggantinya adalah relai TURN yang dioperasikan oleh layanan panggilan — lebih lambat dan lebih mahal, tetapi berfungsi.
Apakah VPN melewati NAT?
Ya, dalam dua cara. Pertama, koneksi luar VPN adalah satu-satunya hal yang harus diterjemahkan oleh NAT rumah Anda; setelah terowongan dibuat, lalu lintas aplikasi di dalamnya tidak terlihat oleh NAT lokal. Kedua, dari sudut pandang tujuan, lalu lintas Anda tampaknya berasal dari IP publik server VPN, bukan IP rumah Anda.
Bisakah saya dilacak di beberapa situs web karena NAT?
Beberapa perangkat di rumah Anda berbagi IP publik, sehingga situs eksternal melihat banyak aliran dari IP yang sama — hal ini merupakan kebalikan dari sidik jari individu. Namun pengaturan waktu, sidik jari browser, dan login akun masih menghubungkan Anda kembali. NAT sendiri bukanlah privasi.
Mengapa beberapa perangkat lunak berfungsi buruk pada Wi-Fi kedai kopi?
Kedai kopi sering kali menjalankan NAT tingkat operator atau menerapkan jenis NAT yang lebih ketat yang memblokir protokol peer-to-peer, BitTorrent, dan beberapa protokol VPN. LAN lokal juga dapat membatasi lalu lintas yang tidak biasa. HTTPS biasa berfungsi hampir di semua tempat; segala sesuatu yang lain adalah pertaruhan.
Penjelasan NAT: Mengapa Jaringan Rumah Anda Memiliki Satu Alamat IP tetapi Dua Puluh Perangkat