Pada awal perkembangan internet, tiap service dan host diakses dengan addresspublic. Hal tersebut menghadirkan beberapa masalah seperti keamanan dan kekhawatiran akan tidak cukupnya ketersediaan IPv4 addressyang dapat digunakan. Salah satu upaya untuk mengatasi hal tersebut adalah dengan memisahkan Ip address menjadi domain public dan private. Hal ini tertuang dalam dokumen RFC 19181 yang diterbitkan pada tahun 1986.

Melalui dokumen tersebut, Address Ipv4 private terdefinisikan menjadi tiga segment yaitu :

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

Namun, terdapat masalah baru dari hadirnya konsensus ini yaitu bagaimana agar address local dan public dapat berkomunikasi?

Untuk menjawab pertanyaan tersebut, kita akan berkenalan dengan konsep bernama Network Address Translation yang lebih lengkapnya akan dibahas di bawah ini.

NAT & PAT

Secara konsep baik NAT dan PAT bekerja dengan cara mengubah suatu address dan/atau port menjadi suatu address dan/atau port yang telah ditentukan sebelumnya. Konsep ini bekerja dengan cara memodifkasi header network dan/atau transportation layer pada PDU.2

Pada NAT, akan dilakukan modifikasi header pada network layer, sehingga header IPv4 pada pre-translation akan berbeda dengan addresspost-translation. Selain itu, pemetaan pada NAT bekerja dengan cara bidirectionalyang berarti ketika koneksi NAT terjadi hanya IP NAT hanya dapat digunakaan oleh satu IP source saja.

Sementara itu, PAT melibatkan perubahan pada transport layer sehingga tipe port juga dapat berubah menyesuaikan konfigurasi atau kebutuhan yang ada.

Static & Dynamic

Terminologi static dan dynamic pada NAT berhubungan dengan bagaimana service NAT dan/atau PAT mengkonversi addressdan/atau port-nya.

Pada static translation, atribut ip address atau IP:Port didefinisikan secara eksplisit pada konfigurasi. Hal ini berarti suatu ip atau IP:Port telah ditentukan secara awal (hardcoded) pada saat konfigurasi hanya akan dikonversi menjadi satu IP atau IP:Port saja. Atau dengan kata lain konversi dilakukan berdasarkan pemetaan secara one-to-one.

Pada dyanmic tranlsation, atribut hasil konversi IP address atau IP:Port ditentukan oleh device atau service nat berdasarkan konversi yang telah dibentuk. Pemetaan NAT dan/atau PAT tersebut biasanya dilakukan secara many-to-one atau one-to-many. Yang berarti banyak address akan dikonversi menjadi satu address saja ataupun satu address akan dikonversi menjadi banyak address. Pada dyanmicNAT konfigurasi yang biasa dilakukan adalah berdasarkan IP atau IP:Port pool range yang telah ditentukan.

Static NAT

Static NAT biasanya digunakan pada service atau server yang ingin terhubung dan terekspos di internet.

Sebagai contoh, suatu organisasi berkerja sama dengan service dari internet bernama CloudX dalam menjalankan service pada server internal mereka. Agar CloudX dapat mengakses service dari organisasi tersebut maka service tersebut memerlukan IP Public. Server internal telah memiliki IP Local yang telah ter-routing dengan core route perusahaan. Agar core router dapat meneruskan traffic ke internet atau menghubungkan traffic dari CloudX ke server maka dilakukanlah NAT dengan mentranslasi ipv4 address 192.168.43.1 menjadi 53.44.111.2.

Kelemahan dari static NAT ini terletak pada scalability yang mana diperlukan banyak IP Public apabila terdapat banyak service yang ingin dipublikasikan ke internet. Yang akan berdampak pada biaya operasional perusahaan yang meningkat dikarenakan meningkatnya jumlah ip public yang harus disewa. Hal ini juga akan bertentangan dengan tujuan utama dari NAT yaitu mengurangi penggunaan IPv4 address yang semakin lama ketersediaannya semakin sedikit.

Static PAT

Static PAT biasanya digunakan untuk mengekspos banyak service dengan port-port berbeda ke internet. Pada static PAT terjadi proses konversi one-to-one yang hampir serupa dengan static nat. Namun menyertakan port dalam tabel konversinya. Sehingga kombinasi yang diperhitungkan pada PAT adalah IP:Port alih-alih Ip address saja. Hal ini juga berarti IP 55.44.12.23:3322 akan dianggap berbeda dengan 55.44.12.23:443. Hal ini juga berarti akan terdapat lebih banyak kombinasi yang dapat dilakukan dalam translasi daripada NAT.

Sebagai contoh suatu organisasi ingin menghosting service ssh dan http mereka. Service organisasi tersebut terdeploy secara local pada 192.168.43.14:8822 dan website mereka terdeploy pada 192.168.43.30:8080. Perusahaan hanya memiliki satu IP public yang dapat digunakan untuk mengekspose kedua service tersebut. Untuk mengatasi hal tersebut digunakanlah static NAT.

Case lainnya dari static PAT adalah dengan mengkonversi IP address dan membiarkan port sesuai dengan apa yang terekspos pada local server. Seperti melakukan PAT pada 192.168.43.30:8080 menjadi 43.44.54.32:8080. Kondisi seperti ini sering juga dikenal sebagai port forwarding.

Dynamic PAT

Dyamic PAT umumnya digunakan pada pemakaian wifi router komersil atau wifi router rumahan. Teknik yang sering digunakan adalah dynamic nat overloading yaitu menambahkan port non publik acak tertentu untuk setiap host yang akan terhubung ke internet. Terdapat lebih dari 60,000 port yang tersedia karena hal ini juga dynamic PAT dipilih daripada dyamic NAT mengingat banyaknya kombinasi yang dapat terbentuk walau hanya dengan satu ip address public saja.3

Sebagai contoh di rumah client terdapat empat host yang ingin mengakses Google. Sebagai provider internet, hanya disediakan satu IP Public pada rumah client tersebut yaitu 54.44.111.2. Agar setiap client dapat terhubung ke Internet maka diterapkanlah PAT. Pada router, akan dilakukan pemilihan port secara acak (overload) kepada IP host sehingga ketika host mengakses internet akan terjadi translasi seperti 192.168.43.10:4444ke 54.44.111.2:4444. Dengan begitu, akan sangat memungkinkan untuk packet pada host tersebut untuk diteruskan ke IP google 8.8.8.8 ataupun mengakses service internet lainnya.

Dynamic NAT

Perlu diingat kembali bahwa translasi address pada NAT bekerja secara bidirectional. Artinya ketika suatu address IPv4 telah digunakan pada translasi NAT maka address tersebut tidak dapat digunakan untuk translasi lainnya.

Dengan sifat tersebut, maka dapat dilihat bahwa banyaknya translasi yang dapat dilakukan oleh dynamic NAT hanya sebanyak IP post translastion yang tersedia (yang pada umumnya adalah IP Public). Jumlah ini tak sebanyak kombinasi yang dapat dihasilkan oleh dynamic PAT.

Karena hal itu, dynamic NAT menjadi opsi yang jarang digunakan. Bahkan terminologi, dynamic NAT seringkali disamakan dengan proses dynamic PAT overload.

Daftar Istilah NAT

BrandStatic NATStatic PATDynamic PATDynamic NAT
RFC 2663Static Address AssignmentRealm Specific Address and Port IPNetwork Address Port Translation (NAPT)Basic NAT
WikipediaFull Cone NATFull Cone NATSymmetric NATAddress Restricted Cone NAT
Cisco RouterStatic NATStatic PATDynamic PATDynamic NAT
Cisco ASAStatic NATStatic PATDynamic PATDynamic NAT
  1. https://datatracker.ietf.org/doc/html/rfc1918 ↩︎
  2. https://www.practicalnetworking.net/series/nat/nat/ ↩︎
  3. https://www.practicalnetworking.net/series/nat/nat/ ↩︎

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *