Terjemahan alamat jaringan (Network address translation)

Terjemahan alamat jaringan (Network address translation)

Network Address Translation (NAT) adalah proses untuk memodifikasi sumber atau alamat tujuan dalam header IP dari sebuah paket saat paket sedang dalam transit. Secara umum, pengirim dan penerima aplikasi tidak menyadari bahwa paket IP sedang dimanipulasi.

NAT sering dilaksanakan oleh router, dan jadi kita akan merujuk ke host melakukan NAT sebagai NAT router. Namun, dalam pengerahan OpenStack biasanya server Linux yang mengimplementasikan fungsi NAT, bukan router hardware. Server ini menggunakan iptables <http://www.netfilter.org/projects/iptables/index.html> _ paket perangkat lunak untuk melaksanakan fungsi NAT.

Ada beberapa variasi dari NAT, dan di sini kami menjelaskan tiga jenis umum yang ditemukan dalam pengerahan OpenStack.

SNAT

Dalam Source Network Address Translation (SNAT), router NAT memodifikasi alamat IP dari pengirim di paket IP. SNAT umumnya digunakan untuk memungkinkan host dengan private addresses untuk berkomunikasi dengan server di Internet publik.

RFC 1918 cadangan tiga subnet berikut sebagai alamat private:

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16

Alamat IP ini tidak routable publik, yang berarti bahwa host di Internet publik tidak dapat mengirim paket IP ke salah satu alamat ini. Alamat IP private yang banyak digunakan baik dalam lingkungan perumahan maupun perusahaan.

Seringkali, sebuah aplikasi yang berjalan pada host dengan alamat IP private akan harus terhubung ke server di Internet publik. Contohnya adalah user yang ingin mengakses situs publik seperti www.openstack.org. Jika paket IP mencapai server web di www.openstack.org dengan alamat IP private sebagai sumber, maka web server tidak dapat mengirim paket kembali ke pengirim.

SNAT memecahkan masalah ini dengan memodifikasi alamat IP sumber ke alamat IP yang routable di Internet publik. Ada variasi yang berbeda dari SNAT; dalam bentuk pengerahan OpenStack menggunakan, router NAT di jalan antara pengirim dan penerima menggantikan alamat IP sumber paket dengan alamat IP publik router. Router juga memodifikasi port TCP sumber atau UDP ke nilai lain, dan router memelihara catatan port dan alamat IP yang benar dari pengirim, serta port dan alamat IP yang dimodifikasi.

Ketika router menerima paket dengan alamat IP yang cocok dan port, itu diterjemahkan kembali tersebut ke alamat IP private dan port, dan meneruskan paket bersama.

Karena router NAT memodifikasi port serta alamat IP, bentuk SNAT kadang-kadang disebut sebagai Port Address Translation (PAT). Hal ini juga kadang-kadang disebut sebagai *NAT overload.

OpenStack menggunakan SNAT untuk mengaktifkan aplikasi yang berjalan dalam instance untuk menghubungkan ke Internet publik.

DNAT

Dalam * Destination Network Address Translation (DNAT), router NAT memodifikasi alamat IP dari tujuan di header paket IP.

OpenStack menggunakan DNAT untuk rute paket dari instance ke layanan OpenStack metadata. Aplikasi yang berjalan di dalam instance mengakses layanan metadata OpenStack dengan membuat permintaan HTTP GET ke server web dengan alamat IP 169.254.169.254. Dalam pengerahan OpenStack, tidak ada host dengan alamat IP ini. Sebaliknya, OpenStack menggunakan DNAT untuk mengubah IP tujuan dari paket tersebut sehingga mereka mencapai interface jaringan dimana layanan metadata mendengarkan pada.

One-to-one NAT

Dalam one-to-one NAT, router NAT mempertahankan pemetaan one-to-one antara alamat IP private dan alamat IP publik. OpenStack menggunakan one-to-one NAT untuk melaksanakan mengambang alamat IP.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.