Public NAT
Public NAT memungkinkan instance virtual machine (VM) Anda berkomunikasi dengan internet dengan mengalokasikan kumpulan alamat IPv4 eksternal dan port sumber bersama ke setiap VM yang menggunakan Public NAT untuk membuat koneksi keluar ke internet. Google Cloud
Dengan NAT Publik, instance VM yang tidak memiliki alamat IPv4 eksternal dapat berkomunikasi dengan tujuan IPv4 di internet. NAT publik juga memungkinkan instance VM Anda dengan alamat IPv6 eksternal atau internal terhubung ke tujuan IPv4 di internet (Pratinjau).
Spesifikasi
NAT publik mendukung penafsiran alamat jaringan (NAT) untuk hal berikut:
Dari IPv4 ke IPv4, atau NAT44. Untuk mengetahui informasi selengkapnya, lihat NAT44 di NAT Publik.
Dari IPv6 ke IPv4, atau NAT64 (Pratinjau). Public NAT mendukung NAT64 untuk instance VM Compute Engine. Untuk node GKE, traffic serverless, dan NEG internet regional, NAT Publik hanya menerjemahkan traffic IPv4. Untuk mengetahui informasi selengkapnya, lihat NAT64 di NAT Publik.
Spesifikasi umum
Untuk paket sumber IPv4, Anda dapat mengonfigurasi NAT Publik untuk menyediakan NAT bagi paket yang dikirim dari:
Alamat IP internal utama antarmuka jaringan VM Compute Engine, asalkan antarmuka jaringan tidak memiliki alamat IP eksternal yang ditetapkan. Jika antarmuka jaringan memiliki alamat IP eksternal yang ditetapkan, Google Cloud akan otomatis melakukan NAT one-to-one untuk paket yang sumbernya cocok dengan alamat IP internal utama antarmuka karena antarmuka jaringan memenuhi Google Cloud persyaratan akses internet. Keberadaan alamat IP eksternal di antarmuka selalu diprioritaskan dan selalu melakukan NAT satu-ke-satu, tanpa menggunakan NAT Publik.
Rentang IP alias yang ditetapkan ke antarmuka jaringan VM. Meskipun antarmuka jaringan memiliki alamat IP eksternal yang ditetapkan, Anda dapat mengonfigurasi gateway Cloud NAT untuk NAT Publik guna menyediakan NAT untuk paket yang sumbernya berasal dari rentang IP alias antarmuka. Alamat IP eksternal di antarmuka tidak pernah melakukan NAT satu-ke-satu untuk alamat IP alias.
Untuk cluster Google Kubernetes Engine (GKE), NAT Publik dapat menyediakan layanan meskipun cluster memiliki alamat IP eksternal dalam situasi tertentu. Untuk mengetahui detailnya, lihat Interaksi GKE.
Untuk paket sumber IPv6, Anda dapat mengonfigurasi NAT Publik untuk menyediakan
NAT bagi paket yang dikirim dari
rentang alamat /96
eksternal atau internal antarmuka jaringan khusus IPv6 VM (Pratinjau).
NAT publik memungkinkan koneksi keluar dan respons masuk ke koneksi tersebut. Setiap gateway Cloud NAT untuk NAT Publik menjalankan NAT sumber pada traffic keluar, dan NAT tujuan untuk paket respons yang telah ditetapkan.
NAT publik tidak mengizinkan permintaan masuk yang tidak diminta dari internet, meskipun aturan firewall mengizinkan permintaan tersebut. Untuk mengetahui informasi selengkapnya, lihat RFC yang berlaku.
Setiap gateway Cloud NAT untuk NAT Publik dikaitkan dengan satu jaringan, region, dan Cloud Router VPC. Gateway Cloud NAT dan Cloud Router menyediakan bidang kontrol—tidak terlibat dalam bidang data—sehingga paket tidak melewati gateway Cloud NAT atau Cloud Router.
Rute dan aturan firewall
NAT publik mengandalkan rute yang next hop-nya adalah gateway internet default. Rute default biasanya memenuhi persyaratan ini. Untuk mengetahui informasi selengkapnya, lihat interaksi rute.
NAT publik tidak memiliki persyaratan aturan Cloud NGFW. Aturan firewall diterapkan langsung ke antarmuka jaringan VM Compute Engine, bukan gateway Cloud NAT untuk NAT Publik.
Anda tidak perlu membuat aturan firewall khusus yang mengizinkan koneksi ke atau dari alamat IP NAT. Saat gateway Cloud NAT untuk NAT Publik menyediakan NAT untuk antarmuka jaringan VM, aturan firewall keluar yang berlaku dievaluasi sebagai paket untuk antarmuka jaringan tersebut sebelum NAT. Aturan firewall masuk dievaluasi setelah paket diproses oleh NAT.
Penerapan rentang alamat IP subnet
Anda dapat mengonfigurasi gateway Cloud NAT untuk NAT Publik
guna menyediakan NAT untuk rentang alamat subnet IPv4, rentang alamat subnet IPv6,
atau keduanya. Untuk rentang alamat subnet IPv4, gateway menerjemahkan traffic dari alamat IP internal utama antarmuka jaringan VM, rentang IP alias, atau keduanya. Untuk rentang alamat subnet IPv6, gateway menerjemahkan traffic dari
rentang alamat IPv6 /96
eksternal atau internal dari antarmuka jaringan
(Pratinjau).
Untuk rentang alamat subnet IPv4, Anda dapat mengonfigurasi gateway Cloud NAT untuk menyediakan NAT untuk hal berikut:
-
Rentang alamat IPv4 utama dan sekunder dari semua subnet di wilayah. Satu gateway Cloud NAT menyediakan NAT untuk alamat IP internal utama dan semua rentang IP alias VM yang memenuhi syarat yang antarmuka jaringannya menggunakan subnet IPv4 di region.
-
Rentang alamat IPv4 utama dari semua subnet di region. Satu gateway Cloud NAT menyediakan NAT untuk alamat IP internal utama dan rentang IP alias dari rentang alamat IP utama subnet VM yang memenuhi syarat yang antarmuka jaringannya menggunakan subnet IPv4 di region. Anda dapat membuat gateway Cloud NAT tambahan untuk NAT Publik di region tersebut guna menyediakan NAT untuk rentang IP alias dari rentang alamat IP sekunder subnet VM yang memenuhi syarat.
-
Daftar subnet kustom. Satu gateway Cloud NAT menyediakan NAT untuk alamat IP internal utama dan semua rentang IP alias VM yang memenuhi syarat, yang antarmuka jaringannya menggunakan subnet IPv4 dari daftar subnet yang ditentukan.
-
Rentang alamat IPv4 subnet kustom. Anda dapat membuat gateway Cloud NAT untuk Public NAT sebanyak yang diperlukan, sesuai dengan kuota dan batas Public NAT. Anda memilih rentang alamat IP utama atau sekunder subnet yang akan ditayangkan oleh setiap gateway.
Untuk rentang alamat subnet IPv6, Anda dapat mengonfigurasi gateway Cloud NAT untuk menyediakan NAT untuk hal berikut (Pratinjau):
- Rentang alamat IPv6 eksternal dan internal dari semua subnet di region. Satu gateway Cloud NAT menyediakan NAT untuk semua rentang alamat IPv6 eksternal dan internal di region.
- Daftar subnet kustom. Satu gateway Cloud NAT menyediakan NAT untuk rentang alamat IPv6 eksternal dan internal dari subnet yang Anda tentukan.
Beberapa gateway Cloud NAT
Anda dapat memiliki beberapa gateway Cloud NAT untuk NAT Publik di region jaringan VPC yang sama jika salah satu kondisi berikut berlaku:
Setiap gateway dikonfigurasi untuk subnet yang berbeda.
Dalam satu subnet, setiap gateway dikonfigurasi untuk rentang alamat IP yang berbeda. Anda dapat memetakan gateway Cloud NAT untuk Public NAT ke subnet atau rentang alamat IP tertentu menggunakan pemetaan Cloud NAT kustom.
Selama gateway NAT yang dipetakan tidak tumpang-tindih, Anda dapat membuat gateway Cloud NAT untuk NAT Publik sebanyak yang diperlukan, tunduk pada kuota dan batas NAT Publik. Untuk informasi selengkapnya, lihat Batasan gateway Cloud NAT.
Bandwidth
Menggunakan gateway Cloud NAT untuk Public NAT tidak mengubah jumlah bandwidth keluar atau masuk yang dapat digunakan VM. Untuk spesifikasi bandwidth, yang bervariasi menurut jenis mesin, lihat Bandwidth jaringan dalam dokumentasi Compute Engine.
VM dengan beberapa antarmuka jaringan
Jika Anda mengonfigurasi VM agar memiliki beberapa antarmuka jaringan, setiap antarmuka harus berada di jaringan VPC yang terpisah. Oleh karena itu, hal berikut berlaku:
- Gateway Cloud NAT untuk NAT Publik hanya dapat diterapkan ke satu antarmuka jaringan VM. Gateway Cloud NAT terpisah untuk NAT Publik dapat menyediakan NAT ke VM yang sama, dengan setiap gateway berlaku untuk antarmuka terpisah.
- Satu antarmuka dari beberapa VM antarmuka jaringan dapat memiliki alamat IPv4 eksternal, yang membuat antarmuka tersebut tidak memenuhi syarat untuk NAT Publik, sementara antarmuka lainnya dapat memenuhi syarat untuk NAT jika antarmuka tersebut tidak memiliki alamat IPv4 eksternal dan Anda telah mengonfigurasi gateway Cloud NAT agar NAT Publik diterapkan ke rentang alamat IP subnet yang sesuai. Untuk IPv6, alamat IPv6 eksternal dan internal didukung (Pratinjau).
Alamat IP dan port NAT
Saat membuat gateway Cloud NAT untuk NAT Publik, Anda dapat memilih agar gateway secara otomatis mengalokasikan alamat IP eksternal regional. Atau, Anda dapat menetapkan sejumlah alamat IP eksternal regional secara manual ke gateway.
Untuk gateway Cloud NAT untuk Public NAT dengan pengalokasian alamat IP NAT otomatis, pertimbangkan hal berikut:
- Anda dapat memilih Tingkat Layanan Jaringan (Tingkat Premium atau Tingkat Standar) tempat gateway Cloud NAT mengalokasikan alamat IP.
Saat Anda mengubah paket untuk gateway Cloud NAT untuk Public NAT yang telah mengalokasikan alamat IP NAT secara otomatis, Google Cloud akan merilis semua alamat IP yang ditetapkan untuk gateway tersebut dan menghentikan semua alokasi port.
Kumpulan alamat IP baru dari tingkat yang baru dipilih akan dialokasikan secara otomatis, dan alokasi port baru diberikan ke semua endpoint.
Untuk gateway Cloud NAT tertentu untuk Public NAT, Anda juga dapat menetapkan alamat IP dari Paket Premium atau Paket Standar atau keduanya secara manual, dengan tunduk pada kondisi tertentu.
Untuk mengetahui detail tentang penetapan alamat IP NAT, lihat Alamat IP NAT publik.
Anda dapat mengonfigurasi jumlah port sumber yang dicadangkan oleh setiap gateway Cloud NAT untuk NAT Publik di setiap VM yang akan menyediakan layanan NAT. Anda dapat mengonfigurasi alokasi port statis, dengan jumlah port yang sama direservasi untuk setiap VM, atau alokasi port dinamis, dengan jumlah port yang direservasi dapat bervariasi antara batas minimum dan maksimum yang Anda tentukan.
VM yang akan disediakan NAT ditentukan oleh rentang alamat IP subnet yang dikonfigurasi gateway untuk ditayangkan.
Untuk mengetahui informasi selengkapnya tentang port, lihat Port.
RFC yang berlaku
NAT publik mendukung Pemetaan Independen Endpoint dan Pemfilteran Dependen Endpoint seperti yang ditentukan dalam RFC 5128. Anda dapat mengaktifkan atau menonaktifkan Pemetaan Independen Endpoint. Secara default, Pemetaan Independen Endpoint dinonaktifkan saat Anda membuat gateway NAT.
Pemetaan Independen Endpoint berarti bahwa jika VM mengirim paket dari alamat IP internal dan pasangan port tertentu ke beberapa tujuan yang berbeda, gateway akan memetakan semua paket tersebut ke alamat IP NAT dan pasangan port yang sama, terlepas dari tujuan paket. Untuk mengetahui detail dan implikasi yang berkaitan dengan Pemetaan Independen Endpoint, lihat Penggunaan kembali port secara serentak dan Pemetaan Independen Endpoint.
Pemfilteran Bergantung Endpoint berarti paket respons dari internet hanya diizinkan masuk jika berasal dari alamat IP dan port yang telah dikirimi paket oleh VM. Pemfilteran bergantung pada endpoint, terlepas dari jenis Pemetaan Endpoint. Fitur ini selalu aktif dan tidak dapat dikonfigurasi pengguna.
Untuk mengetahui informasi selengkapnya tentang hubungan antara port dan koneksi, lihat Port dan koneksi serta contoh alur NAT.
NAT publik adalah Port Restricted Cone NAT seperti yang dijelaskan dalam RFC 3489.
NAT traversal
Jika Pemetaan Independen Endpoint diaktifkan, NAT Publik kompatibel dengan protokol NAT traversal umum seperti STUN dan TURN jika Anda men-deploy server STUN atau TURN Anda sendiri:
- STUN (Session Traversal Utilities for NAT, RFC 5389) memungkinkan komunikasi langsung antara VM di balik NAT saat saluran komunikasi dibuat.
- TURN (Traversal Using Relays around NAT, RFC 5766) mengizinkan komunikasi antara VM di balik NAT melalui server ketiga tempat server tersebut memiliki alamat IP eksternal. Setiap VM terhubung ke alamat IP eksternal server, dan server tersebut meneruskan komunikasi antara dua VM. TURN lebih andal, tetapi menggunakan lebih banyak bandwidth dan resource.
Waktu tunggu NAT
NAT publik menetapkan waktu tunggu untuk koneksi protokol. Untuk mengetahui informasi tentang waktu tunggu ini dan nilai default-nya, lihat Waktu tunggu NAT.
NAT44 di Public NAT
Diagram berikut menunjukkan konfigurasi NAT Publik dasar untuk traffic IPv4:
Dalam contoh ini:
Gateway
nat-gw-us-east
dikonfigurasi untuk diterapkan ke rentang alamat IP utamasubnet-1
di regionus-east1
. VM yang antarmuka jaringannya tidak memiliki alamat IP eksternal dapat mengirim traffic ke internet menggunakan alamat IP internal utamanya atau rentang IP alias dari rentang alamat IP utamasubnet-1
,10.240.0.0/16
.VM yang antarmuka jaringannya tidak memiliki alamat IP eksternal dan alamat IP internal primernya berada di
subnet-2
tidak dapat mengakses internet karena tidak ada gateway Cloud NAT yang berlaku untuk rentang alamat IP subnet tersebut.Gateway
nat-gw-eu
dikonfigurasi untuk diterapkan ke rentang alamat IP utamasubnet-3
di regioneurope-west1
. VM yang antarmuka jaringannya tidak memiliki alamat IP eksternal dapat mengirim traffic ke internet menggunakan alamat IP internal utamanya atau rentang IP alias dari rentang alamat IP utamasubnet-3
,192.168.1.0/24
.
Contoh alur kerja
Pada diagram sebelumnya, VM dengan alamat IP internal primer 10.240.0.4
, tanpa alamat IP eksternal, perlu mendownload update dari alamat IP eksternal 203.0.113.1
. Dalam diagram, gateway nat-gw-us-east
dikonfigurasi
sebagai berikut:
- Port minimum per instance:
64
- Menetapkan dua alamat IP NAT secara manual:
192.0.2.50
dan192.0.2.60
- Menyediakan NAT untuk rentang alamat IP utama
subnet-1
NAT publik mengikuti prosedur reservasi port
untuk mencadangkan alamat IP sumber NAT berikut
dan tuple port sumber untuk setiap VM di jaringan. Misalnya, gateway Cloud NAT untuk NAT Publik mencadangkan 64 port sumber untuk VM dengan alamat IP internal 10.240.0.4
. Alamat IP NAT 192.0.2.50
memiliki 64 port yang tidak dicadangkan, sehingga gateway mencadangkan kumpulan 64 tuple alamat IP sumber dan port sumber NAT berikut untuk VM tersebut:
192.0.2.50
:34000
hingga192.0.2.50
:34063
Saat VM mengirim paket ke server update 203.0.113.1
di port tujuan
80
, menggunakan protokol TCP, hal berikut akan terjadi:
VM mengirimkan paket permintaan dengan atribut berikut:
- Alamat IP sumber:
10.240.0.4
, alamat IP internal utama VM - Port sumber:
24000
, port sumber ephemeral yang dipilih oleh sistem operasi VM - Alamat tujuan:
203.0.113.1
, alamat IP eksternal server update - Port tujuan:
80
, port tujuan untuk traffic HTTP ke server update - Protokol:
TCP
- Alamat IP sumber:
Gateway
nat-gw-us-east
melakukan penafsiran alamat jaringan sumber (SNAT) pada traffic keluar, dengan menulis ulang alamat IP sumber NAT dan port sumber paket permintaan. Paket yang diubah dikirim ke internet jika jaringan Virtual Private Cloud (VPC) memiliki rute untuk tujuan203.0.113.1
yang next hop-nya adalah gateway internet default. Rute default biasanya memenuhi persyaratan ini.- Alamat IP sumber NAT:
192.0.2.50
, dari salah satu alamat IP sumber NAT VM yang dicadangkan dan tuple port sumber - Port sumber:
34022
, port sumber yang tidak digunakan dari salah satu tuple port sumber VM yang direservasi - Alamat tujuan:
203.0.113.1
, tidak berubah - Port tujuan:
80
, tidak berubah - Protokol:
TCP
, tidak berubah
- Alamat IP sumber NAT:
Saat server update mengirim paket respons, paket tersebut akan tiba di gateway
nat-gw-us-east
dengan atribut berikut:- Alamat IP sumber:
203.0.113.1
, alamat IP eksternal server update - Port sumber:
80
, respons HTTP dari server update - Alamat tujuan:
192.0.2.50
, yang cocok dengan alamat IP sumber NAT asli dari paket permintaan - Port tujuan:
34022
, yang cocok dengan port sumber paket permintaan - Protokol:
TCP
, tidak berubah
- Alamat IP sumber:
Gateway
nat-gw-us-east
menjalankan terjemahan alamat jaringan tujuan (DNAT) pada paket respons, menulis ulang alamat tujuan dan port tujuan paket respons sehingga paket dikirim ke VM:- Alamat IP sumber:
203.0.113.1
, tidak berubah - Port sumber:
80
, tidak berubah - Alamat tujuan:
10.240.0.4
, alamat IP internal utama VM - Port tujuan:
24000
, yang cocok dengan port sumber sementara asli paket permintaan - Protokol:
TCP
, tidak berubah
- Alamat IP sumber:
NAT64 di Public NAT
NAT64 memungkinkan instance VM khusus IPv6 berkomunikasi dengan tujuan IPv4 di internet. NAT publik mendukung NAT64 untuk alamat IPv6 eksternal dan internal. Jika ingin mengonfigurasi NAT64, Anda juga harus mengonfigurasi DNS64.
Mengonfigurasi DNS64 di Cloud DNS akan mengaktifkan perilaku berikut:
- Saat instance VM khusus IPv6 membuat permintaan ke internet, Cloud DNS akan memeriksa apakah data
AAAA
ada untuk tujuan permintaan. Jika data tersebut ada, alamat IPv6 akan ditampilkan dan instance VM khusus IPv6 dapat terhubung ke tujuan IPv6. Jika DNS64 diaktifkan dan data
AAAA
tidak ditemukan, server DNS64 akan mencari dataA
. Setelah dataA
ditemukan, server DNS64 akan menyintesis alamat IPv6 dengan menambahkan awalan64:ff9b::/96
ke alamat IPv4 yang diperoleh dari dataA
.Misalnya, jika alamat IPv4 tujuan adalah
203.0.113.1
, server akan menampilkan64:ff9b::cb00:7101
, dengancb00:7101
adalah representasi heksadesimal203.0.113.1
.
Saat permintaan mencapai gateway Cloud NAT dengan NAT64 diaktifkan, gateway akan melakukan SNAT dengan melakukan tindakan berikut:
- Mengganti alamat dan port IPv6 sumber dengan salah satu alamat dan port IPv4 eksternal yang dialokasikan ke gateway.
Menerjemahkan alamat IPv6 tujuan yang disintesis, misalnya,
64:ff9b::cb00:7101
, ke alamat IPv4 asli menggunakan 32 bit terakhir alamat yang disintesis.Gateway Cloud NAT juga menggunakan 32 bit terakhir dari alamat IPv6 yang disintesis untuk menentukan cara paket permintaan dirutekan ke internet. Saat instance VM khusus IPv6 mengirim paket ke tujuan yang dimulai dengan awalan
64:ff9b::/96
, gateway akan menerapkan tabel pemilihan rute IPv4 jaringan VPC ke alamat IPv4 tujuan. Jika tabel pemilihan rute IPv4 memiliki rute untuk alamat IPv4 tujuan yang next hop-nya adalah gateway internet default, paket yang dimodifikasi akan dikirim ke internet.
Saat respons diterima, gateway Cloud NAT akan melakukan DNAT dengan melakukan hal berikut:
- Menambahkan awalan
64:ff9b::/96
ke alamat IP sumber paket respons. - Menulis ulang alamat tujuan dan port tujuan paket respons sehingga paket dikirim ke VM.
Langkah berikutnya
- Pelajari interaksi produk Cloud NAT.
- Pelajari alamat dan port Cloud NAT.
- Siapkan Public NAT.
- Pelajari aturan Cloud NAT.
- Buat contoh penyiapan Compute Engine.
- Buat contoh penyiapan Google Kubernetes Engine.
- Memecahkan masalah umum.