Perbedaan antara SNAT dan Masquerade
Saya bingung apa sebenarnya perbedaan antara SNAT dan Masquerade?
Jika saya ingin berbagi koneksi internet di jaringan lokal, apakah saya harus memilih SNAT atau Masquerade?
38
2
Target
SNAT
mengharuskan Anda untuk memberikan alamat IP untuk diterapkan pada semua paket keluar. TargetMASQUERADE
memungkinkan Anda untuk memberikan sebuah interface, dan alamat apa pun yang ada pada interface tersebut adalah alamat yang diterapkan pada semua paket keluar. Sebagai tambahan, denganSNAT
, pelacakan koneksi kernel melacak semua koneksi ketika interface diturunkan dan dinaikkan kembali; hal yang sama tidak berlaku untuk targetMASQUERADE
.Dokumen yang bagus termasuk HOWTO di situs Netfilter dan man page
iptables
.Pada dasarnya
SNAT
danMASQUERADE
melakukan hal yang sama dengan NAT sumber dalam tabel nat dalam rantai POSTROUTING.Perbedaan
MASQUERADE
tidak memerlukan--to-source
karena dibuat untuk bekerja dengan IP yang ditetapkan secara dinamisSNAT
hanya bekerja dengan IP statis, itu sebabnya ia memiliki--to-source
MASQUERADE
memiliki overhead ekstra dan lebih lambat dariSNAT
karena setiap kali targetMASQUERADE
terkena sebuah paket, ia harus memeriksa alamat IP yang akan digunakan.CATATAN: Kasus penggunaan umum untuk
MASQUERADE
: AWS EC2 instance dalam VPC, ia memiliki IP pribadi dalam CIDR VPC (mis. 10.10.1.0/24) - 10.10.1.100 misalnya, ia juga memiliki IP publik sehingga dapat berkomunikasi dengan Internet (asumsikan ia berada di subnet publik) yang melaluinya IP privat 1:1 NAT. IP publik dapat berubah setelah instance reboot (jika BUKAN EIP),MASQUERADE
adalah pilihan yang lebih baik dalam kasus ini.Penting: Masih memungkinkan untuk menggunakan target
MASQUERADE
dengan IP statis, namun perlu diperhatikan adanya overhead tambahan.Referensi
Tutorial iptables
Tutorial NAT