NAT
Seperti yang kita ketahui, alamat IPv4 publik tidak cukup untuk memberikan alamat unik ke setiap perangkat yang terhubung ke internet. Jaringan biasanya diimplementasikan menggunakan alamat IPv4 privat, seperti yang didefinisikan dalam RFC 1918. Rentang alamat yang termasuk dalam RFC 1918 termasuk dalam tabel berikut. Sangat mungkin bahwa komputer yang anda gunakan untuk melihat kursus ini diberi alamat pribadi.
Seperti yang kita ketahui, alamat IPv4 publik tidak cukup untuk memberikan alamat unik ke setiap perangkat yang terhubung ke internet. Jaringan biasanya diimplementasikan menggunakan alamat IPv4 privat, seperti yang didefinisikan dalam RFC 1918. Rentang alamat yang termasuk dalam RFC 1918 termasuk dalam tabel berikut. Sangat mungkin bahwa komputer yang anda gunakan untuk melihat kursus ini diberi alamat pribadi.
Tabel 12 Tabel IP Private
Class |
Rentang Alamat Internal RFC 1918 |
Prefix |
A |
10.0.0.0 - 10.255.255.255 |
10.0.0.0/8 |
B |
172.16.0.0 - 172.31.255.255 |
172.16.0.0/12 |
C |
192.168.0.0 - 192.168.255.255 |
192.168.0.0/16 |
Alamat privat ini digunakan di dalam organisasi atau situs untuk memungkinkan perangkat berkomunikasi secara lokal. Namun, karena alamat-alamat ini tidak mengidentifikasi satu perusahaan atau organisasi, alamat IPv4 privat tidak dapat dirutekan melalui internet. Untuk mengizinkan perangkat dengan alamat IPv4 privat mengakses perangkat dan sumber daya di luar jaringan lokal, alamat privat harus diterjemahkan terlebih dahulu ke alamat publik.
Gambar 22 NAT
NAT menyediakan penerjemahan alamat privat ke alamat publik, seperti yang ditunjukkan pada gambar. Hal ini memungkinkan perangkat dengan alamat IPv4 privat untuk mengakses sumber daya di luar jaringan privat mereka, seperti yang ditemukan di internet. NAT, dikombinasikan dengan alamat IPv4 privat, telah menjadi metode utama untuk menjaga alamat IPv4 publik. Satu alamat IPv4 publik dapat digunakan bersama oleh ratusan, bahkan ribuan perangkat, masing-masing dikonfigurasi dengan alamat IPv4 privat yang unik.
NAT mempunyai banyak kegunaan, tetapi kegunaan utamanya adalah untuk menghemat alamat IPv4 publik. NAT melakukan ini dengan mengizinkan jaringan untuk menggunakan alamat IPv4 pribadi secara internal dan menyediakan terjemahan ke alamat publik hanya bila diperlukan. NAT memiliki manfaat yang dirasakan untuk menambahkan tingkat privasi dan keamanan ke jaringan, karena NAT menyembunyikan alamat IPv4 internal dari jaringan luar.
Router yang mendukung NAT dapat dikonfigurasi dengan satu atau lebih alamat IPv4 publik yang valid. Alamat publik ini dikenal sebagai NAT pool. Ketika sebuah perangkat internal mengirim lalu lintas keluar dari jaringan, Router yang mendukung NAT menerjemahkan alamat IPv4 internal perangkat ke alamat publik dari kumpulan NAT. Untuk perangkat luar, semua lalu lintas yang masuk dan keluar jaringan tampaknya memiliki alamat IPv4 publik dari kumpulan alamat yang disediakan.
Router NAT biasanya beroperasi di perbatasan jaringan stub. Jaringan stub adalah satu atau lebih jaringan dengan koneksi tunggal ke jaringan tetangganya, satu arah masuk dan satu arah keluar dari jaringan. Dalam contoh pada gambar, R2 adalah Router perbatasan. Seperti yang terlihat dari ISP, R2 membentuk jaringan stub.
Gambar 23 Skenario NAT
Ketika sebuah perangkat di dalam jaringan rintisan ingin berkomunikasi dengan perangkat di luar jaringannya, paket diteruskan ke Router perbatasan. Router perbatasan melakukan proses NAT, menerjemahkan alamat pribadi internal perangkat ke alamat publik, luar, yang dapat dirutekan. NAT terbagi menjadi beberapa jenis, yaitu:
Statis NAT
NAT Statis menggunakan pemetaan one-to -one dari alamat lokal dan global. Pemetaan ini dikonfigurasi oleh administrator jaringan dan tetap konstan. Dalam gambar 23, R2 dikonfigurasi dengan pemetaan statis untuk alamat lokal dalam Svr1, PC2, dan PC3. Ketika perangkat-perangkat ini mengirim trafik ke internet, alamat lokal dalam mereka diterjemahkan ke alamat global dalam yang dikonfigurasi. Untuk jaringan luar, perangkat-perangkat ini tampak memiliki alamat IPv4 publik.
Gambar 24 Statis NAT
NAT statis sangat berguna untuk server web atau perangkat yang harus memiliki alamat yang konsisten yang dapat diakses dari internet, seperti server web perusahaan. Ini juga berguna untuk perangkat yang harus dapat diakses oleh personil yang berwenang ketika berada di luar kantor, tetapi tidak oleh masyarakat umum di internet. Misalnya, administrator jaringan dari PC4 bisa menggunakan SSH untuk mendapatkan akses ke alamat global dalam Svr1 (209.165.200.226). R2 menerjemahkan alamat global dalam ini ke alamat lokal dalam 192.168.10.10 dan menghubungkan sesi ke Svr1.
Berikut ini contoh skenari implementasi statis NAT dan konfigurasinya
Gambar 25 Skenario NAT Statis
Langkah 1. Tugas pertama adalah membuat pemetaan antara alamat lokal dalam dan alamat global dalam. Misalnya, 192.168.10.254 alamat lokal dalam dan 209.165.201.5 alamat global dalam pada gambar dikonfigurasi sebagai terjemahan NAT statis.
Langkah 2. Setelah pemetaan dikonfigurasi, antarmuka yang berpartisipasi dalam terjemahan dikonfigurasi sebagai di dalam atau di luar relatif terhadap NAT. Dalam contoh, antarmuka R2 Serial 0/1/0 adalah antarmuka di dalam dan Serial 0/1/1 adalah antarmuka luar.
Dengan konfigurasi ini, paket-paket yang tiba pada antarmuka dalam R2 (Serial 0/1/0) dari alamat IPv4 lokal dalam yang dikonfigurasi (192.168.10.254) diterjemahkan dan kemudian diteruskan ke jaringan luar. Paket yang tiba pada antarmuka luar R2 (Serial 0/1/1), yang dialamatkan ke alamat IPv4 global dalam yang dikonfigurasi di dalam (209.165.201.5), diterjemahkan ke alamat lokal di dalam (192.168.10.254) dan kemudian diteruskan ke jaringan dalam.
NAT Dinamis
NAT Dinamis menggunakan kumpulan alamat publik dan memberikannya berdasarkan siapa cepat dia dapat, siapa cepat dia dapat. Ketika sebuah perangkat di dalam meminta akses ke jaringan luar, NAT dinamis memberikan alamat IPv4 publik yang tersedia dari pool. Pada gambar 26, PC3 telah mengakses internet menggunakan alamat pertama yang tersedia di dalam pool NAT dinamis. Alamat-alamat lain masih tersedia untuk digunakan. Mirip dengan NAT statis, NAT dinamis memerlukan alamat publik yang cukup tersedia untuk memenuhi jumlah total sesi pengguna simultan.
Gambar 26 Dinamis NAT
Berikut ini contoh skenario implementasi Dinamis NAT dan konfigurasinya
Gambar 27 Skenario Dinamis NAT
Gambar 27 menunjukkan contoh topologi di mana konfigurasi NAT memungkinkan terjemahan untuk semua host pada jaringan 192.168.0.0/16. Ini termasuk LAN 192.168.10.0 dan 192.168.11.0 ketika host menghasilkan lalu lintas yang memasuki antarmuka S0/1/0 dan keluar dari S0/1/1. Ini termasuk LAN 192.168.10.0 dan 192.168.11.0 ketika host menghasilkan lalu lintas yang masuk ke antarmuka S0/1/0 dan keluar dari S0/1/1. Host di dalam alamat lokal diterjemahkan ke alamat pool yang tersedia dalam kisaran 209.165.200.226 hingga209.165.200.240.
Langkah 1. Tentukan kumpulan alamat yang akan digunakan untuk terjemahan menggunakan perintah ip NAT pool. Kumpulan alamat ini biasanya merupakan kelompok alamat publik. Alamat didefinisikan dengan menunjukkan alamat IPv4 awal dan alamat IPv4 akhir dari kumpulan alamat tersebut. Kata kunci netmask atau prefix-length menunjukkan bit alamat mana yang termasuk jaringan dan bit mana yang termasuk host untuk rentang alamat tersebut. Dalam skenario, tentukan kumpulan alamat IPv4 publik di bawah nama kumpulan NAT-POOL1.
Langkah 2. Konfigurasikan ACL standar untuk mengidentifikasi (mengizinkan) hanya alamat-alamat yang akan diterjemahkan. ACL yang terlalu permisif dapat menyebabkan hasil yang tidak dapat diprediksi. Ingatlah bahwa ada pernyataan deny all yang implisit di akhir setiap ACL. Dalam skenario, tentukan alamat-alamat mana yang memenuhi syarat untuk diterjemahkan.
Langkah 3. Ikat ACL ke pool, menggunakan sintaks perintah berikut:
Router(config)# ip nat inside source list {access-list-number | access-list-name} pool pool-name
Konfigurasi ini digunakan oleh Router untuk mengidentifikasi perangkat mana (daftar) yang menerima alamat mana (pool). Dalam skenario, mengikat NAT-POOL1 dengan ACL 1.
Langkah 4. Identifikasi interface mana yang berada di dalam, dalam kaitannya dengan NAT; ini akan menjadi interface apa pun yang terhubung ke jaringan dalam. Dalam skenario, identifikasi interface serial 0/1/0 sebagai interface NAT di dalam.
Langkah 5. Identifikasi interface mana yang berada di luar, dalam kaitannya dengan NAT; ini akan menjadi interface apa pun yang terhubung ke jaringan luar. Dalam skenario, identifikasi interface serial 0/1/1 sebagai interface NAT luar.
PAT
Port Address Translation (PAT), juga dikenal sebagai NAT overload, memetakan beberapa alamat IPv4 privat ke satu alamat IPv4 publik atau beberapa alamat. Inilah yang dilakukan oleh sebagian besar Router rumah. ISP memberikan satu alamat ke Router, namun beberapa anggota rumah tangga dapat mengakses internet secara bersamaan. Ini adalah bentuk NAT yang paling umum untuk rumah dan perusahaan. Dengan PAT, beberapa alamat dapat dipetakan ke satu atau beberapa alamat, karena setiap alamat pribadi juga dilacak oleh nomor port. Ketika perangkat memulai sesi TCP / IP, ia menghasilkan nilai port sumber TCP atau UDP, atau ID kueri yang ditetapkan secara khusus untuk ICMP, untuk mengidentifikasi sesi secara unik. Ketika router NAT menerima paket dari klien, ia menggunakan nomor port sumbernya untuk secara unik mengidentifikasi terjemahan NAT tertentu. PAT memastikan bahwa perangkat menggunakan nomor port TCP yang berbeda untuk setiap sesi dengan server di internet. Ketika respons kembali dari server, nomor port sumber, yang menjadi nomor port tujuan pada perjalanan pulang, menentukan ke perangkat mana Router meneruskan paket. Proses PAT juga memvalidasi bahwa paket yang masuk diminta, sehingga menambahkan tingkat keamanan pada sesi. Saat R2 memproses setiap paket, R2 menggunakan nomor port (1331 dan 1555, dalam contoh ini) untuk mengidentifikasi perangkat dari mana paket tersebut berasal. Alamat sumber (SA) adalah alamat lokal di dalam dengan nomor port yang ditetapkan TCP / UDP ditambahkan. Alamat tujuan (DA) adalah alamat global luar dengan nomor port layanan yang ditambahkan. Dalam contoh ini, port layanan adalah 80, yaitu HTTP. Untuk alamat sumber, R2 menerjemahkan alamat lokal dalam ke alamat global dalam dengan nomor port yang ditambahkan. Alamat tujuan tidak berubah tetapi sekarang disebut sebagai alamat IPv4 global luar. Ketika server web membalas, jalurnya dibalik. NAT memecahkan masalah kita karena tidak memiliki alamat IPv4 yang cukup, tetapi NAT juga dapat menimbulkan masalah lain. Sehingga NAT dapat memberikan keuntungan dan kerugian NAT. NAT memberikan banyak manfaat, yaitu:
- NAT melestarikan skema pengalamatan yang terdaftar secara hukum dengan memungkinkan privatisasi intranet. NAT melestarikan alamat melalui multiplexing tingkat port aplikasi. Dengan NAT overload (PAT), host internal dapat berbagi satu alamat IPv4 publik tunggal untuk semua komunikasi eksternal. Dalam jenis konfigurasi ini, sangat sedikit alamat eksternal yang diperlukan untuk mendukung banyak host internal.
- NAT meningkatkan fleksibilitas koneksi ke jaringan publik. Beberapa pool, pool cadangan, dan pool load-balancing dapat diimplementasikan untuk memastikan koneksi jaringan publik yang handal.
- NAT menyediakan konsistensi untuk skema pengalamatan jaringan internal. Pada jaringan yang tidak menggunakan alamat IPv4 privat dan NAT, merubah skema alamat IPv4 publik memerlukan penataan ulang semua host di jaringan yang ada. Biaya penataan ulang host dapat menjadi signifikan. NAT memungkinkan skema alamat IPv4 privat yang ada untuk tetap ada sementara memungkinkan perubahan yang mudah ke skema pengalamatan publik yang baru. Ini berarti sebuah organisasi dapat mengubah ISP dan tidak perlu mengubah klien di dalamnya.
- Dengan menggunakan alamat IPv4 RFC 1918, NAT menyembunyikan alamat IPv4 pengguna dan perangkat lain. Beberapa orang menganggap ini sebagai fitur keamanan; namun, sebagian besar ahli setuju bahwa NAT tidak menyediakan keamanan. Firewall stateful adalah apa yang menyediakan keamanan di tepi jaringan.
Selain itu NAT juga memiliki kekurangan. Fakta bahwa host di internet tampak berkomunikasi langsung dengan perangkat yang mendukung NAT, bukan dengan host yang sebenarnya di dalam jaringan pribadi, menciptakan sejumlah masalah. Salah satu kelemahan dari penggunaan NAT berhubungan dengan kinerja jaringan, khususnya untuk protokol real time seperti VoIP. NAT meningkatkan penundaan penerusan karena penerjemahan setiap alamat IPv4 di dalam header paket membutuhkan waktu. Paket pertama selalu diproses- switched melalui jalur yang lebih lambat. Router harus melihat setiap paket untuk memutuskan apakah paket itu perlu diterjemahkan. Router harus mengubah header IPv4, dan mungkin mengubah header TCP atau UDP. Checksum header IPv4, bersama dengan checksum TCP atau UDP harus dihitung ulang setiap kali terjemahan dilakukan. Paket yang tersisa akan melalui jalur fast- switched jika ada entri cache; jika tidak, paket-paket tersebut juga tertunda.
Penundaan penerusan yang disebabkan oleh proses NAT menjadi lebih banyak masalah karena kumpulan alamat IPv4 publik untuk ISP menjadi habis. Banyak ISP yang harus memberikan alamat IPv4 pribadi kepada pelanggan, bukan alamat IPv4 publik. Ini berarti Router pelanggan menerjemahkan paket dari alamat IPv4 privatnya ke alamat IPv4 privat ISP. Sebelum meneruskan paket ke penyedia lain, ISP kemudian akan melakukan NAT lagi, menerjemahkan alamat IPv4 pribadinya ke salah satu alamat IPv4 publiknya yang jumlahnya terbatas. Proses dua lapisan terjemahan NAT ini dikenal sebagai Carrier Grade NAT (CGN).
Kerugian lain dari penggunaan NAT adalah bahwa pengalamatan end-to-end hilang. Ini dikenal sebagai prinsip end-to-end. Banyak protokol dan aplikasi internet bergantung pada pengalamatan end-to-end dari sumber ke tujuan. Beberapa aplikasi tidak bekerja dengan NAT. Misalnya, beberapa aplikasi keamanan, seperti tanda tangan digital, gagal karena alamat IPv4 sumber berubah sebelum mencapai tujuan. Aplikasi yang menggunakan alamat fisik, bukan nama domain yang memenuhi syarat, tidak mencapai tujuan yang diterjemahkan melintasi Router NAT. Kadang-kadang, masalah ini dapat dihindari dengan menerapkan pemetaan NAT statis.
Keterlacakan IPv4 ujung ke ujung juga hilang. Menjadi jauh lebih sulit untuk melacak paket yang mengalami banyak perubahan alamat paket melalui beberapa lompatan NAT, membuat pemecahan masalah menjadi menantang. Menggunakan NAT juga mempersulit penggunaan protokol tunneling, seperti IPsec, karena NAT memodifikasi nilai di header, menyebabkan pemeriksaan integritas gagal.
Layanan yang memerlukan inisiasi koneksi TCP dari jaringan luar, atau protokol stateless, seperti yang menggunakan UDP, dapat terganggu. Kecuali jika Router NAT telah dikonfigurasi untuk mendukung protokol tersebut, paket yang masuk tidak dapat mencapai tujuannya. Beberapa protokol dapat mengakomodasi satu contoh NAT antara host yang berpartisipasi (mode pasif FTP, misalnya), tetapi gagal ketika kedua sistem dipisahkan dari internet oleh NAT.
Mengkonfigurasi PAT untuk Menggunakan Alamat IPv4 Tunggal, berikut ini merupakan gambar 28 skenario PAT dengan alamat tunggal
Gambar 28 Skenario PAT
Untuk mengkonfigurasi PAT untuk menggunakan alamat IPv4 tunggal, cukup tambahkan kata kunci overload ke perintah ip nat inside source. Konfigurasi lainnya mirip dengan konfigurasi NAT statis dan dinamis kecuali bahwa dengan PAT, beberapa host dapat menggunakan alamat IPv4 publik yang sama untuk mengakses internet. Dalam contoh, semua host dari jaringan 192.168.0.0/16 (cocok dengan ACL 1) yang mengirim lalu lintas melalui Router R2 ke internet akan diterjemahkan ke alamat IPv4 209.165.200.225 (alamat IPv4 dari antarmuka S0/1/1). Arus lalu lintas akan diidentifikasi oleh nomor port dalam tabel NAT karena kata kunci overload dikonfigurasi.
Mengkonfigurasi PAT untuk Menggunakan Kumpulan Alamat
ISP dapat mengalokasikan lebih dari satu alamat IPv4 publik ke suatu organisasi. Dalam skenario ini organisasi dapat mengkonfigurasi PAT untuk menggunakan kumpulan alamat publik IPv4 untuk terjemahan. Jika sebuah situs telah mengeluarkan lebih dari satu alamat IPv4 publik, alamat ini dapat menjadi bagian dari kumpulan yang digunakan oleh PAT. Kumpulan kecil alamat dibagi di antara sejumlah besar perangkat, dengan beberapa host menggunakan alamat IPv4 publik yang sama untuk mengakses internet. Untuk mengkonfigurasi PAT untuk kumpulan alamat NAT dinamis, cukup tambahkan kata kunci overload ke perintah ip nat inside source. Topologi untuk skenario ini diulangi pada gambar untuk kenyamanan Anda.
Gambar 29 Skenario PAT 2
Dalam contoh, NAT-POOL2 terikat ke ACL untuk mengizinkan 192.168.0.0/16 untuk diterjemahkan. Host-host ini dapat berbagi alamat IPv4 dari pool karena PAT diaktifkan dengan kata kunci overload.