Pertemuan 11: Network Address Translation (NAT) Theory

Minggu ke-11
Topik: NAT Theory & Operation
Dosen: Ir. H.A. Mooduto, M.Kom.

1. Pendahuluan: Masalah Keterbatasan Alamat IPv4

Latar Belakang Perlunya NAT

  • IPv4 Exhaustion: Hanya ~4.3 miliar alamat IPv4 tersedia di dunia
  • Growth Internet Eksponensial: Lebih banyak device butuh koneksi internet
  • Cost Public IP: Mahal dan terbatas untuk enterprise
  • Security Concerns: Perlindungan jaringan internal

Analogi NAT

NAT seperti resepsionis di perusahaan besar:

  • Penelepon dari luar (internet) hanya tahu nomor utama perusahaan (public IP)
  • Resepsionis (NAT) meneruskan panggilan ke ekstensi yang tepat (private IP)
  • Penelepon tidak perlu tahu nomor langsung setiap karyawan (private IP)

Solusi: NAT

NAT memungkinkan banyak device berbagai sedikit public IP addresses, mengatasi keterbatasan IPv4 dan meningkatkan keamanan.

2. Konsep Dasar NAT

Definisi NAT

Network Address Translation (NAT) adalah teknik untuk memetakan alamat IP private ke alamat IP public (atau sebaliknya) pada boundary antara jaringan internal dan internet.

Terminology NAT yang Wajib Dipahami

Terminologi Definisi Contoh
Inside Local Alamat IP private di jaringan internal 192.168.1.100
Inside Global Alamat IP public yang mewakili device internal 203.0.113.50
Outside Local Alamat IP seperti yang muncul di jaringan internal 93.184.216.34
Outside Global Alamat IP public sebenarnya di internet 93.184.216.34

NAT Operation Flow

1 Outbound Packet: PC mengirim packet ke internet
2 NAT Translation: Router mengganti source IP private dengan IP public
3 Internet Routing: Packet dikirim ke destination dengan source IP public
4 Inbound Packet: Response datang ke IP public
5 Reverse Translation: Router mengganti destination IP public dengan IP private asli

Contoh NAT Flow:

[PC: 192.168.1.100] → [NAT Router] → [Internet Server: 93.184.216.34]
(Inside Local) (Translation) (Outside Global)
↓ ↓ ↓
Source: 192.168.1.100 → Source: 203.0.113.50 → Source: 203.0.113.50
Dest: 93.184.216.34 → Dest: 93.184.216.34 → Dest: 93.184.216.34

3. Jenis-Jenis NAT dan Karakteristiknya

A. Static NAT (One-to-One Mapping)

Konsep Static NAT

Satu alamat private dipetakan ke satu alamat public secara permanent. Biasanya digunakan untuk server yang perlu diakses dari internet.

Konfigurasi Static NAT:

! Define static NAT mapping
ip nat inside source static 192.168.1.10 203.0.113.10
ip nat inside source static 192.168.1.11 203.0.113.11

! Configure interfaces
interface GigabitEthernet0/0
ip nat inside

interface GigabitEthernet0/1
ip nat outside
Aspect Kelebihan Kekurangan
Predictability Mapping predictable dan konsisten Boros public IP addresses
Management Mudah dikelola untuk sedikit mapping Management overhead untuk banyak mapping
Application Cocok untuk server hosting Tidak efisien untuk user internet access

B. Dynamic NAT (Pool-based Mapping)

Konsep Dynamic NAT

Pool alamat public dibagikan ke device internal secara dinamis berdasarkan first-come first-served basis.

Konfigurasi Dynamic NAT:

! Define NAT pool
ip nat pool MY-POOL 203.0.113.10 203.0.113.50 netmask 255.255.255.0

! Define access list for devices allowed to use NAT
access-list 1 permit 192.168.1.0 0.0.0.255

! Apply NAT configuration
ip nat inside source list 1 pool MY-POOL
Aspect Kelebihan Kekurangan
Efficiency Lebih efisien daripada Static NAT Butuh cukup public IP dalam pool
Mapping Masih mempertahankan one-to-one mapping Bisa kehabisan IP jika banyak concurrent users
Application Cocok untuk kantor dengan banyak user Kurang efisien untuk jaringan sangat besar

C. PAT (Port Address Translation) / NAT Overload

Konsep PAT

Banyak alamat private berbagai satu alamat public menggunakan port numbers yang berbeda. Ini adalah jenis NAT yang paling umum digunakan.

Konfigurasi PAT:

! Using interface IP for PAT (Most Common)
ip nat inside source list 1 interface GigabitEthernet0/1 overload

! Or using specific IP address
ip nat pool SINGLE-IP 203.0.113.10 203.0.113.10 netmask 255.255.255.0
ip nat inside source list 1 pool SINGLE-IP overload

! Access list definition
access-list 1 permit 192.168.1.0 0.0.0.255
Aspect Kelebihan Kekurangan
Efficiency Sangat efisien (ribuan users dengan satu IP) Beberapa aplikasi sensitive to IP changes
Management Mudah dikonfigurasi dan manage Complex debugging karena banyak session
Application Ideal untuk home networks dan small offices Limited untuk aplikasi yang butuh inbound connection

4. NAT Translation Table: Jantung Operasi NAT

Struktur NAT Table

Protocol Inside Local Inside Global Outside Global Outside Local
TCP 192.168.1.100:5432 203.0.113.10:12345 93.184.216.34:80 93.184.216.34:80
UDP 192.168.1.101:3210 203.0.113.10:54321 8.8.8.8:53 8.8.8.8:53
ICMP 192.168.1.102 203.0.113.10 8.8.4.4 -

Proses NAT Operation

1 Outbound Packet Processing:
  • Router menerima packet dari inside network
  • Mencatat mapping dalam NAT table
  • Mengganti source IP/port dengan global IP/port
2 Inbound Packet Processing:
  • Router menerima packet dari outside network
  • Mencari matching entry dalam NAT table
  • Mengganti destination IP/port dengan local IP/port
3 Session Management:
  • Entry dibuat untuk setiap new session
  • Timer mengatur lifetime setiap entry
  • Entry dihapus setelah timeout atau session termination

NAT Timeout Values

  • TCP Session: 24 jam (default)
  • UDP Session: 5 menit (default)
  • ICMP Session: 1 menit (default)
  • DNS Timeout: 1 menit

5. Advanced NAT Concepts

A. Port Forwarding (Static PAT)

Konsep Port Forwarding

Meneruskan traffic pada port tertentu ke server internal yang spesifik. Essential untuk hosting services behind NAT.

Konfigurasi Port Forwarding:

! Forward HTTP traffic to web server
ip nat inside source static tcp 192.168.1.10 80 203.0.113.10 80

! Forward SSH traffic to specific server
ip nat inside source static tcp 192.168.1.20 22 203.0.113.10 2222

! Forward multiple ports for same server
ip nat inside source static tcp 192.168.1.10 443 203.0.113.10 443

B. Policy-Based NAT

Konsep Policy-Based NAT

NAT berdasarkan policy tertentu seperti source/destination IP, protocol, atau port number.

Konfigurasi Policy-Based NAT:

! NAT hanya untuk traffic ke Google DNS
access-list 100 permit ip 192.168.1.0 0.0.0.255 host 8.8.8.8
ip nat inside source list 100 interface GigabitEthernet0/1 overload

! NAT dengan exclusion untuk specific subnet
access-list 101 deny ip 192.168.1.50 0.0.0.0 any
access-list 101 permit ip 192.168.1.0 0.0.0.255 any
ip nat inside source list 101 pool INTERNET-POOL overload

C. NAT Virtual Interface (NVI)

Konsep NVI

NAT tanpa perlu mendefinisikan inside/outside interfaces secara eksplisit. Lebih fleksibel untuk complex network designs.

Konfigurasi NAT Virtual Interface:

! Enable NAT on interfaces
interface GigabitEthernet0/0
ip nat enable

interface GigabitEthernet0/1
ip nat enable

! Configure NAT rules
ip nat source list 1 interface GigabitEthernet0/1 overload

6. Keuntungan dan Tantangan NAT

A. Keuntungan NAT

Keuntungan Deskripsi Impact
IPv4 Conservation Menghemat public IP addresses Mengatasi IPv4 exhaustion
Security Device internal tidak langsung terpapar internet Meningkatkan keamanan jaringan
Network Flexibility Mudah mengubah ISP tanpa renumbering Simplifikasi network management
Load Sharing Distribusi traffic ke multiple servers Meningkatkan availability

B. Tantangan dan Limitations NAT

Masalah dan Solusi NAT

Tantangan Deskripsi Solusi
Performance Impact Processing overhead pada router Hardware acceleration, proper sizing
Application Compatibility Beberapa protocol butuh NAT traversal ALG (Application Layer Gateway)
Troubleshooting Complexity Sulit melacak connection melalui NAT Proper logging, monitoring tools
End-to-End Connectivity Membatasi peer-to-peer applications IPv6, NAT traversal techniques

7. NAT untuk IPv6 Transition

A. NAT64/DNS64

Konsep NAT64

Teknologi yang memungkinkan IPv6-only clients mengakses IPv4 resources melalui translation mechanism.

1 DNS64 Translation: Mentranslasikan A record (IPv4) ke AAAA record (IPv6)
2 NAT64 Processing: Mentranslasikan packet antara IPv6 dan IPv4
3 Seamless Communication: IPv6 client bisa berkomunikasi dengan IPv4 server

B. Dual-Stack Implementation

Konsep Dual-Stack

Device memiliki kedua stack (IPv4 dan IPv6) secara bersamaan, memungkinkan komunikasi dengan kedua protocol tanpa NAT.

Konfigurasi Dual-Stack Interface:

interface GigabitEthernet0/0
ip address 192.168.1.1 255.255.255.0
ipv6 address 2001:db8:1::1/64
ipv6 enable
Approach Kelebihan Kekurangan
NAT64 Solusi transition yang smooth Complex configuration
Dual-Stack Native support untuk kedua protocol Higher resource requirements
Tunneling Connectivity melalui IPv4 infrastructure Performance overhead

8. Studi Kasus: Enterprise NAT Design

Scenario Perusahaan dengan 3 Segmen Jaringan

Network Requirements:

  • DMZ: Web server, mail server (butuh akses dari internet)
  • Employee LAN: 200 users butuh internet access
  • Guest WiFi: Public internet access terisolasi
  • Management: Separate network untuk network devices

Enterprise NAT Design:

! Static NAT untuk DMZ servers
ip nat inside source static 10.1.10.10 203.0.113.10 ! Web Server
ip nat inside source static 10.1.10.20 203.0.113.20 ! Mail Server

! PAT untuk employee LAN
ip nat inside source list EMPLOYEES interface GigabitEthernet0/1 overload
access-list EMPLOYEES permit 10.1.20.0 0.0.0.255

! PAT untuk guest WiFi dengan IP berbeda
ip nat inside source list GUEST pool GUEST-POOL overload
access-list GUEST permit 10.1.30.0 0.0.0.255
ip nat pool GUEST-POOL 203.0.113.30 203.0.113.30 netmask 255.255.255.0

! No NAT untuk management network (direct access)
access-list NO-NAT deny 10.1.40.0 0.0.0.255
access-list NO-NAT permit any

Security Considerations

Best Practices Security NAT

  • Gunakan separate public IP pools untuk different security zones
  • Implementasi proper ACL untuk control inbound traffic
  • Monitor NAT translations untuk suspicious activities
  • Gunakan NAT dalam kombinasi dengan firewall rules

9. Troubleshooting NAT Issues

Common NAT Problems dan Solusi

Problem Symptoms Solution
No Translation Users cannot access internet Cek ACL, interface designation, routing
Intermittent Connectivity Connection drops randomly Cek NAT table limits, timeouts, memory
Application Issues Specific apps don't work Cek是否需要 NAT traversal, ALG configuration
Performance Degradation Slow internet access Monitor CPU usage, optimize NAT rules

Useful Troubleshooting Commands

Cisco NAT Troubleshooting Commands:

! View active NAT translations
show ip nat translations

! View NAT statistics
show ip nat statistics

! Clear NAT translations
clear ip nat translation *

! Debug NAT operations
debug ip nat

! Show NAT configuration
show running-config | include nat

Troubleshooting Methodology

  1. Verifikasi NAT configuration dengan show running-config
  2. Cek active translations dengan show ip nat translations
  3. Monitor statistics dengan show ip nat statistics
  4. Gunakan debug untuk real-time analysis
  5. Test dengan different protocols dan applications

10. Kaitannya dengan Dunia Kerja Lulusan D3

Skill yang Dibutuhkan di Industri

Skill Deskripsi Relevansi
NAT Design Merancang skema NAT untuk berbagai kebutuhan bisnis High - Essential untuk semua jaringan
Configuration Konfigurasi dan troubleshooting NAT pada routers High - Daily operation task
Security Implementation Implementasi NAT dengan security best practices High - Critical untuk network security
IPv6 Transition Pemahaman NAT dalam konteks IPv6 migration Medium - Growing importance

Real-World Applications

Scenario Pekerjaan Nyata:

  • Internet Access Design: Merancang NAT untuk kantor cabang
  • Server Hosting: Konfigurasi port forwarding untuk web servers
  • Network Segmentation: Menggunakan NAT untuk security isolation
  • ISP Services: Implementasi CGNAT untuk residential customers

Tips Interview untuk Lulusan D3

Pertanyaan Interview Umum:

  • "Jelaskan perbedaan antara Static NAT, Dynamic NAT, dan PAT"
  • "Bagaimana cara troubleshoot ketika users tidak bisa access internet melalui NAT?"
  • "Kapan sebaiknya menggunakan port forwarding vs static NAT?"
  • "Apa keuntungan dan kerugian menggunakan NAT dalam jaringan?"

11. Latihan dan Evaluasi

Latihan Analisis Diagram

Scenario Jaringan:

[PC1: 192.168.1.10] --- [NAT Router] --- [Internet]
[PC2: 192.168.1.11] Inside: 192.168.1.1
Outside: 203.0.113.1
NAT Type: PAT dengan overload

Pertanyaan Latihan:

  1. Jika PC1 membuka koneksi ke web server 93.184.216.34:80, bagaimana NAT table-nya?
  2. Bagaimana jika PC2 membuka koneksi ke server yang sama secara bersamaan?
  3. Apa yang terjadi jika kita menggunakan static NAT vs PAT dalam scenario ini?
  4. Bagaimana konfigurasi untuk memungkinkan akses inbound ke web server di PC1?

Hands-On Configuration Exercise

Tugas Konfigurasi:

! Buat konfigurasi NAT untuk scenario berikut:
- Network: 192.168.100.0/24
- Public IP: 203.0.113.25
- Requirements:
* Web server di 192.168.100.10 accessible dari internet
* All users bisa access internet via PAT
* Guest network 192.168.200.0/24 isolated dengan IP berbeda

! Your configuration here: