Alamat IP dan port
Halaman ini menjelaskan cara gateway Cloud NAT menggunakan alamat IP dan cara mengalokasikan port sumber ke instance virtual machine (VM) Compute Engine dan node Google Kubernetes Engine (GKE) yang menggunakan gateway tersebut.
Sebelum meninjau informasi ini, pahami Ringkasan Cloud NAT.
Alamat IP NAT publik
Alamat IP NAT Publik adalah alamat IP eksternal regional yang dapat dirutekan di internet. VM tanpa alamat IP eksternal, yang berada di subnetwork (subnet) yang dilayani oleh gateway NAT Publik, menggunakan alamat IP NAT Publik saat mengirim paket ke tujuan di internet.
Untuk menetapkan alamat IP penafsiran alamat jaringan (NAT) ke gateway NAT Publik, gunakan salah satu metode berikut:
Alokasi alamat IP NAT otomatis. Jika Anda memilih metode ini, atau memilih default, NAT Publik akan otomatis menambahkan alamat IP eksternal regional ke gateway Anda berdasarkan hal berikut: Trusted Cloud by S3NS
- Tingkat jaringan yang Anda pilih
- Jumlah VM yang menggunakan gateway
- Jumlah port yang dicadangkan untuk setiap VM
NAT publik juga otomatis menghapus alamat IP NAT jika tidak lagi memerlukan port sumber pada alamat IP NAT tersebut.
Berikut adalah karakteristik alokasi alamat IP NAT otomatis:
Saat menambahkan alamat IP NAT, gateway NAT Publik akan membuat alamat IP eksternal regional statis (dicadangkan) di tingkat jaringan yang telah Anda pilih saat mengonfigurasi gateway. Misalnya, jika Anda telah memilih Paket Premium, gateway NAT Publik akan membuat alamat IP di paket tersebut. Tingkat jaringan yang didukung adalah Paket Premium (opsi default) dan Paket Standar.
Alamat IP NAT yang ditambahkan secara otomatis dapat dilihat di daftar alamat IP eksternal statis. Alamat ini tidak diperhitungkan dalam kuota per project.
- Jika Anda mengubah tingkat jaringan gateway NAT Publik, alamat IP yang ada untuk gateway tersebut akan dilepaskan, dan serangkaian alamat IP baru dari tingkat yang dipilih akan ditetapkan.
- Dengan alokasi otomatis, Anda tidak dapat memprediksi alamat IP berikutnya yang dialokasikan. Jika Anda bergantung pada pengetahuan tentang kumpulan alamat IP NAT yang mungkin sebelumnya (misalnya, untuk membuat daftar yang diizinkan), Anda harus menggunakan penetapan alamat IP NAT manual.
Jika tidak lagi digunakan, alamat IP NAT yang ditambahkan secara otomatis akan dihapus. Namun, NAT Publik hanya membatalkan alokasi alamat jika VM terakhir yang ditetapkan ke alamat tersebut tidak lagi menggunakan port apa pun. Oleh karena itu, saat jumlah VM yang menggunakan NAT Publik berkurang, Anda mungkin tidak melihat pengurangan IP . Alasannya adalah Cloud NAT tidak mengalokasikan ulang VM secara dinamis dari satu alamat IP ke alamat IP lain karena pengalokasian ulang akan mengganggu koneksi yang sudah dibuat. Selama setidaknya satu VM menggunakan alamat IP, alamat IP tersebut tetap aktif dan VM baru dapat ditetapkan ke alamat IP tersebut.
Jika Anda ingin dapat mengalokasikan ulang VM secara manual dari satu alamat IP ke alamat IP lain untuk meminimalkan penggunaan alamat IP, gunakan penetapan alamat IP NAT manual. Penetapan alamat IP NAT manual memungkinkan pengurasan alamat IP NAT Publik.
Jika Anda beralih ke penetapan alamat IP NAT manual nanti, alamat IP eksternal regional yang dicadangkan secara otomatis akan dihapus. Untuk mengetahui informasi selengkapnya, lihat Mengalihkan metode penetapan.
Penetapan alamat IP NAT manual. Jika memilih opsi ini, Anda akan membuat dan menetapkan alamat IP eksternal regional statis (dicadangkan) secara manual ke gateway NAT Publik. Anda dapat menetapkan alamat IP secara manual dari Paket Premium, dari Paket Standar, atau dari keduanya, dengan tunduk pada kondisi.
- Anda dapat menambah atau mengurangi jumlah alamat IP NAT yang ditetapkan secara manual dengan mengedit gateway Cloud NAT.
- Saat menggunakan penetapan alamat IP NAT manual, Anda harus menghitung jumlah alamat IP eksternal regional yang diperlukan untuk gateway NAT Publik. Jika gateway Anda kehabisan alamat IP NAT, NAT Publik akan membuang paket. Paket yang di-drop dicatat dalam log saat Anda menggunakan logging Cloud NAT untuk mengaktifkan logging error.
- Untuk contoh perhitungan, lihat contoh reservasi port.
Untuk mengetahui jumlah maksimum alamat IP NAT yang dialokasikan secara otomatis atau ditetapkan secara manual, lihat Batas Cloud NAT.
Menetapkan campuran alamat IP Paket Premium dan Paket Standar secara manual
Saat membuat gateway NAT Publik dengan metode penetapan alamat IP NAT manual, Anda dapat menetapkan campuran alamat IP Paket Premium dan Paket Standar selama alamat IP dari tingkat jaringan yang berbeda tidak termasuk dalam aturan yang sama (termasuk aturan default).
Di dalam aturan (termasuk aturan default), semua alamat IP yang ditetapkan ke rentang aktif harus memiliki tingkat jaringan yang sama. Jika Anda mencoba menggunakan alamat IP dari tingkat yang berbeda sebagai bagian dari aturan yang sama, Trusted Cloud akan menolak konfigurasi.
Mengalihkan metode penetapan
Anda dapat mengalihkan gateway NAT Publik dari alokasi alamat IP NAT otomatis ke penetapan alamat IP NAT manual; namun, alamat IP NAT tidak dapat dipertahankan. Meskipun dialokasikan secara otomatis, alamat IP NAT bersifat statis dan tidak dapat dipindahkan ke penetapan alamat IP NAT manual. Misalnya, Anda tidak dapat mulai menggunakan gateway NAT Publik dengan alamat IP NAT yang dialokasikan secara otomatis, lalu menggunakan alamat yang sama saat Anda beralih ke alamat IP NAT yang ditetapkan secara manual.
Kumpulan alamat IP eksternal regional yang digunakan NAT Publik untuk alokasi alamat IP NAT otomatis berbeda dengan kumpulan alamat IP eksternal regional yang dapat Anda pilih secara manual.
Menguras alamat IP NAT Publik
Saat mengonfigurasi gateway NAT Publik dengan penetapan alamat IP NAT manual, Anda dapat memilih apa yang terjadi saat Anda perlu mengurangi jumlah alamat IP NAT yang digunakan gateway:
Jika Anda menghapus alamat IP NAT yang ditetapkan secara manual, koneksi NAT yang sudah dibuat akan langsung terputus.
Anda dapat memilih untuk menguras alamat IP NAT yang ditetapkan secara manual. Pengurasan menginstruksikan gateway NAT Publik untuk berhenti menggunakan alamat IP NAT untuk koneksi baru, tetapi terus menggunakannya untuk koneksi yang sudah dibuat. Koneksi yang sudah dibuat diizinkan untuk ditutup secara normal, bukan dihentikan secara tiba-tiba. Untuk menguras alamat IP yang terkait dengan gateway NAT Publik yang tidak menggunakan aturan NAT, lihat Menguras alamat IP eksternal yang terkait dengan NAT. Untuk menguras alamat IP yang terkait dengan gateway NAT yang menggunakan aturan NAT, lihat Memperbarui aturan NAT.
Alamat IP NAT pribadi
Alamat Private NAT adalah alamat IPv4 internal regional yang
berasal dari rentang alamat IPv4 utama subnet Private NAT yang berada di region dan jaringan VPC yang sama dengan gateway Private NAT. Alamat IP NAT Pribadi tidak dapat dirutekan di internet. Alamat IP dari rentang alamat IPv4 utama subnet NAT Pribadi hanya dapat digunakan oleh gateway NAT Pribadi. Untuk membuat subnet Private NAT, tambahkan subnet khusus IPv4 menggunakan Google Cloud CLI dan flag --purpose=PRIVATE_NAT
.
Setelah Anda mengonfigurasi gateway Private NAT untuk menyediakan layanan NAT bagi subnet di jaringan VPC, VM dengan antarmuka jaringan di subnet tersebut dapat mengirim paket ke resource yang berada di jaringan lain seperti jaringan VPC yang terhubung ke hub Network Connectivity Center yang sama dengan jaringan yang menghosting gateway Private NAT atau jaringan di luar yang terhubung ke melalui Cloud Interconnect atau Cloud VPN. Trusted Cloud Trusted Cloud Saat keluar, Trusted Cloud mengubah alamat IP sumber menjadi alamat IP dari subnet NAT Pribadi yang terkait dengan gateway.
Berikut adalah karakteristik alamat IP NAT Pribadi:
- Anda tidak dapat menetapkan alamat IP NAT Pribadi secara otomatis ke gateway NAT Pribadi. Sebagai gantinya, saat membuat aturan di gateway NAT Pribadi, Anda menentukan subnet atau subnet NAT Pribadi secara manual. Subnet NAT pribadi harus berada di jaringan VPC dan region yang sama dengan gateway. Gateway hanya menggunakan alamat IP dari rentang alamat IPv4 utama subnet NAT Pribadi.
- Untuk menentukan jumlah alamat IP NAT yang dapat disediakan oleh setiap subnet NAT Pribadi, gunakan formula berikut:
2(32 - PREFIX_LENGTH) - 4
, denganPREFIX_LENGTH
adalah panjang mask subnet dari rentang alamat IPv4 utama subnet NAT Pribadi. Empat alamat IP tidak dapat digunakan di setiap rentang alamat IPv4 utama subnet.
Port
Setiap alamat IP NAT di gateway Cloud NAT (baik NAT Publik maupun NAT Pribadi) menawarkan 64.512 port sumber TCP dan 64.512 port sumber UDP. TCP dan UDP masing-masing mendukung 65.536 port per alamat IP. Cloud NAT tidak menggunakan port terkenal (dengan hak istimewa) (0 hingga 1.023).
Saat gateway Cloud NAT melakukan penafsiran alamat jaringan sumber (SNAT) pada paket yang dikirim oleh VM, gateway tersebut akan mengubah alamat IP sumber NAT dan port sumber paket.
Saat membuat gateway Cloud NAT, Anda memilih apakah akan menggunakan alokasi port statis atau alokasi port dinamis. Anda dapat mengubah metode alokasi port setelah membuat gateway. Untuk mengetahui informasi tentang pengaruh perubahan metode alokasi port untuk gateway Cloud NAT terhadap koneksi yang sudah dibuat, lihat Mengalihkan metode alokasi port.
Jika Anda telah menetapkan beberapa alamat IP eksternal regional statis (yang dicadangkan) secara manual ke gateway NAT Publik, satu VM yang menggunakan gateway tersebut dapat memperoleh port yang diperlukan dari salah satu alamat IP NAT yang ditetapkan—bahkan dari beberapa alamat IP NAT secara bersamaan.
Alokasi port statis
Saat mengonfigurasi alokasi port statis, Anda menentukan jumlah minimum port per instance VM. Jika Anda tidak menentukan jumlah minimum port per VM,Trusted Cloud akan menggunakan nilai default.
Alokasi port statis diaktifkan secara default untuk NAT Publik. Sebaliknya, NAT Pribadi menggunakan alokasi port dinamis secara default.
Karena semua VM dialokasikan jumlah port yang sama, alokasi port statis paling cocok jika semua VM memiliki penggunaan egress yang serupa. Jika alokasi port statis dikonfigurasi, jumlah port yang dialokasikan ke setiap VM bersifat tetap dan tidak berubah jika beberapa VM menggunakan lebih banyak port daripada yang lain atau jika VM menghabiskan semua portnya. Jika penggunaan keluar bervariasi, pertimbangkan untuk mengonfigurasi alokasi port dinamis.
Jika ingin mengonfigurasi Pemetaan Independen Endpoint di gateway NAT Publik, Anda harus menggunakan alokasi port statis. Pemetaan Independen Endpoint tidak tersedia untuk gateway NAT Pribadi.
Alokasi port dinamis
Saat mengonfigurasi alokasi port dinamis, Anda menentukan jumlah minimum port per instance VM dan jumlah maksimum port per instance VM.
Alokasi port dinamis diaktifkan secara default untuk NAT Pribadi. NAT Publik menggunakan alokasi port statis secara default.
Mengonfigurasi alokasi port dinamis memungkinkan gateway Cloud NAT yang sama mengalokasikan jumlah port yang berbeda per VM, berdasarkan penggunaan VM. Awalnya, VM dialokasikan jumlah minimum port per instance VM. Jika VM hampir kehabisan semua port yang dialokasikan untuknya, jumlah port yang ditetapkan ke VM akan digandakan. VM dapat berulang kali meminta lebih banyak port hingga jumlah maksimum port per instance VM. Jika penggunaan port menurun secara signifikan, port akan dibatalkan alokasinya dan dapat dialokasikan ke VM lain yang menggunakan gateway NAT yang sama.
Alokasi port dinamis memiliki manfaat berikut:
Jumlah port yang dialokasikan tetapi tidak digunakan akan dikurangi.
Gateway NAT memantau penggunaan port setiap VM dan mengubah jumlah port yang dialokasikan ke setiap VM, berdasarkan kebutuhan. Anda tidak perlu memantau penggunaan port atau menyesuaikan konfigurasi gateway NAT.
Sebelum menggunakan alokasi port dinamis, pertimbangkan hal berikut:
Jika Pemetaan Independen Endpoint diaktifkan di gateway Cloud NAT, Anda tidak dapat mengonfigurasi alokasi port dinamis. Jika Anda memerlukan Pemetaan Independen Endpoint, gunakan alokasi port statis.
Saat port tambahan dialokasikan ke VM, Anda mungkin melihat timeout atau latensi koneksi. Untuk mengetahui strategi yang dapat membantu mencegah koneksi terputus, lihat Mengurangi koneksi terputus dengan alokasi port dinamis.
Mengalihkan metode alokasi port
Anda dapat beralih antara alokasi port statis dan alokasi port dinamis untuk gateway Cloud NAT tertentu.
Beralih ke metode alokasi port dinamis akan mengganggu koneksi NAT yang ada hanya jika salah satu kondisi berikut terpenuhi:
Anda menetapkan jumlah maksimum port per VM ke nilai yang kurang dari jumlah minimum port per VM yang ditentukan dalam konfigurasi NAT sebelumnya (dengan alokasi port statis).
Jika dalam konfigurasi sebelumnya, jumlah minimum port per VM ditetapkan ke lebih dari
1024
, dan jika Anda menentukan1024
sebagai jumlah maksimum port per VM dalam konfigurasi baru, maka koneksi yang ada akan terputus karena kondisi pertama lebih diutamakan.Anda menetapkan jumlah maksimum port per VM ke nilai yang kurang dari
1024
.
Kecuali jika salah satu kondisi sebelumnya terpenuhi, beralih ke alokasi port dinamis tidak akan mengganggu koneksi NAT yang ada.
Menonaktifkan alokasi port dinamis dan beralih ke alokasi port statis akan mengganggu, dan akan menghentikan semua koneksi NAT yang aktif.
Prosedur reservasi port
Cloud NAT menggunakan prosedur berikut untuk menyediakan tuple alamat IP sumber dan port sumber NAT untuk setiap VM yang dilayani oleh gateway Cloud NAT (baik NAT Publik maupun NAT Pribadi).
Cloud NAT menentukan alamat IP internal VM yang harus menjalankan NAT. Alamat IP internal VM ditentukan oleh rentang alamat IP subnet yang telah dikonfigurasi untuk ditayangkan oleh gateway.
Jika gateway NAT Publik dikonfigurasi untuk menjalankan NAT untuk rentang alamat IP utama subnet yang digunakan oleh antarmuka jaringan VM, gateway akan menjalankan NAT untuk kedua alamat IP internal utama VM dan rentang IP alias VM dari rentang alamat IP utama subnet.
Jika gateway NAT Publik dikonfigurasi untuk melakukan NAT untuk rentang alamat IP sekunder subnet yang digunakan oleh antarmuka jaringan VM, gateway akan melakukan NAT untuk rentang IP alias dari rentang alamat IP sekunder subnet tersebut.
Karena gateway NAT Pribadi dikonfigurasi untuk melakukan NAT untuk semua rentang alamat IP subnet yang digunakan oleh antarmuka jaringan VM, gateway tersebut melakukan NAT untuk semua rentang IP dari subnet tersebut.
Cloud NAT menyesuaikan port minimum per instance VM jika diperlukan. Jika alokasi port statis dikonfigurasi, dan gateway melakukan NAT untuk rentang IP alias yang memiliki lebih dari satu alamat (masker jaringan lebih kecil dari
/32
), Cloud NAT akan menyesuaikan port minimum per VM menjadi nilai maksimum dari kedua nilai ini:Port minimum per instance VM yang Anda tentukan
Angka 1.024
Dalam semua situasi lainnya, termasuk saat alokasi port dinamis dikonfigurasi, gateway Cloud NAT melanjutkan ke langkah berikutnya dengan menggunakan port minimum yang ditentukan per instance VM sebagai input. Jika Anda tidak menentukan port minimum per instance VM, nilai default akan digunakan:
64
untuk alokasi port statis dan32
untuk alokasi port dinamis.Cloud NAT mencadangkan tuple port sumber dan alamat IP sumber NAT untuk setiap VM. Gateway Cloud NAT menggunakan jumlah port minimum per instance VM yang diberikan atau disesuaikan dari langkah sebelumnya untuk menghitung jumlah tuple alamat IP sumber dan port sumber NAT yang akan ditetapkan ke VM.
Untuk NAT Publik, Trusted Cloud mengalokasikan tuple port sumber dan alamat IP sumber NAT menggunakan kelipatan pangkat dua, sehingga jumlah tuple port sumber dan alamat IP sumber NAT lebih besar dari atau sama dengan jumlah port minimum per instance VM yang Anda tentukan.
Untuk NAT Pribadi, Trusted Cloud mengalokasikan dua kali jumlah port minimum yang diperlukan per VM untuk keandalan. Pastikan subnet tempat Private NAT menetapkan alamat IP dan port memiliki ukuran yang sesuai.
Jika gateway Cloud NAT menggunakan dua atau lebih alamat IP NAT, maka tupel port sumber dan alamat IP sumber NAT dapat mencakup lebih dari satu alamat IP NAT. Satu alamat IP NAT mungkin tidak memiliki cukup port sumber yang tersedia untuk mengakomodasi jumlah tuple alamat IP sumber dan port sumber NAT yang dibutuhkan VM.
Gateway Cloud NAT mengalokasikan tuple alamat IP sumber dan port sumber ke setiap VM.
Jika Anda telah mengonfigurasi alokasi port statis, jumlah tuple port sumber dan alamat IP sumber akan tetap. Setiap VM dapat menggunakan tidak lebih dari jumlah tupel port sumber dan alamat IP sumber yang dialokasikan, bahkan selama lonjakan traffic.
Jika Anda telah mengonfigurasi alokasi port dinamis, jumlah tuple port sumber dan alamat IP sumber dapat berubah berdasarkan permintaan. Jika VM hampir kehabisan alokasi port saat ini, Cloud NAT akan mengalokasikan port tambahan, hingga nilai port maksimum per instance VM yang ditentukan. Setelah penggunaan port VM berkurang di bawah nilai minimum, port akan dilepaskan dan dapat dialokasikan ke VM lain.
Meningkatkan port per VM
Jika Anda telah mengonfigurasi gateway Cloud NAT dengan alokasi port statis, saat Anda meningkatkan jumlah minimum port per VM di gateway, tidak akan ada gangguan pada traffic.
Jika Anda telah mengonfigurasi gateway Cloud NAT dengan alokasi port dinamis, maka peningkatan jumlah port minimum, maksimum, atau keduanya per VM tidak akan mengganggu koneksi NAT yang ada atau mengganggu traffic yang mengalir melalui gateway NAT.
Pertimbangkan hal berikut saat Anda menambah jumlah port per VM:
Saat menggunakan Public NAT dengan penetapan alamat IP NAT manual, Anda harus menghitung jumlah alamat IP sumber NAT yang Anda butuhkan. Sebelum menambah jumlah port minimum per VM, tetapkan setidaknya sejumlah alamat IP NAT tersebut ke gateway NAT Publik.
Saat menggunakan Public NAT dengan alokasi alamat IP NAT otomatis, peningkatan jumlah minimum port per VM akan menyebabkan gateway Public NAT mendapatkan dan mengalokasikan lebih banyak alamat IP eksternal regional secara otomatis.
Saat menggunakan NAT Pribadi, pastikan subnet tempat gateway mengalokasikan alamat IP memiliki jumlah alamat IP yang memadai.
Mengurangi port per VM
Jika Anda telah mengonfigurasi gateway Cloud NAT dengan alokasi port statis, dan Anda mengurangi port minimum per VM di gateway, tidak ada pengurasan koneksi. Koneksi NAT yang sudah dibuat akan langsung terputus dan klien harus membuat koneksi TCP baru.
Jika Anda telah mengonfigurasi gateway Cloud NAT dengan alokasi port dinamis, pernyataan berikut benar:
- Mengurangi jumlah minimum port per VM tidak akan mengganggu koneksi NAT yang ada atau mengganggu traffic yang mengalir melalui gateway NAT.
- Mengurangi jumlah maksimum port per VM akan menghentikan semua koneksi NAT yang ada secara langsung, dan jumlah port yang dialokasikan untuk semua VM akan direset sementara ke nilai yang ditentukan untuk jumlah minimum port per VM.
Port dan koneksi
Jumlah tupel alamat IP sumber NAT dan port sumber yang dicadangkan gateway Cloud NAT untuk VM membatasi jumlah koneksi yang dapat dibuat VM ke tujuan unik:
Tujuan unik berarti 3-tuple unik yang terdiri dari alamat IP tujuan, port tujuan, dan protokol IP (seperti TCP atau UDP).
Koneksi berarti 5-tuple unik yang terdiri dari tuple alamat IP sumber dan port sumber NAT yang digabungkan dengan 3-tuple tujuan unik. Karena protokol UDP tidak memiliki koneksi, konsep koneksi direduksi menjadi 5-tuple yang terkait dengan datagram UDP unik.
Misalkan gateway Cloud NAT menghitung 1.024 untuk jumlah port tetap VM dengan mengikuti prosedur reservasi port. Gateway Cloud NAT mencadangkan 1.024 kombinasi unik dari tuple alamat IP sumber NAT dan port sumber untuk VM. Gateway Cloud NAT dapat memproses 1.024 koneksi simultan ke setiap tuple 3 tujuan unik. Namun, Cloud NAT menganggap koneksi tertutup sebagai tidak dapat digunakan selama 120 detik setelah koneksi ditutup, yang dapat memengaruhi jumlah koneksi yang digunakan dalam satu waktu.
Contoh:
Gateway mendukung 1.024 koneksi simultan ke alamat IP tujuan
203.0.113.99
di port80
menggunakan protokol TCP.Gateway mendukung 1.024 koneksi simultan lainnya ke alamat IP tujuan yang sama di port
443
, juga menggunakan protokol TCP.Gateway mendukung 1.024 koneksi simultan lainnya ke alamat IP tujuan yang berbeda di port
80
, juga menggunakan protokol TCP.
Penggunaan ulang port secara bersamaan dan Pemetaan Independen Endpoint
Selama setidaknya satu informasi dalam 3-tuple tujuan berubah—alamat IP tujuan, port tujuan, protokol—tuple alamat IP sumber dan port sumber NAT yang sama dapat digunakan secara bersamaan untuk banyak koneksi yang berbeda.
NAT publik menggunakan Pemetaan Independen Endpoint, seperti yang ditentukan dalam Bagian 2.3 RFC 5128. Akibatnya, jumlah koneksi simultan yang dapat dibuat VM klien ke tupel 3 tujuan unik dapat berkurang jika NAT Publik menetapkan tupel port sumber dan alamat IP sumber NAT yang sama ke lebih dari satu alamat IP internal dan port sumber sementara VM klien. Kemungkinan hal ini terjadi meningkat jika VM klien memiliki sejumlah besar alamat IP sumber internal dan membuat sejumlah besar koneksi ke 3-tuple tujuan yang sama. Saat pertama kali VM klien mengirim paket dari alamat IP internal dan port sumber temporer, NAT Publik akan membuat pemetaan Endpoint-Independent many-to-one antara berikut ini:
- Tuple alamat IP internal dan port sumber sementara
- Tuple port sumber dan alamat IP sumber NAT yang unik
Misalnya, saat VM klien mengirim paket dari alamat IP internalnya
10.0.0.2
menggunakan port sumber sementara 10001
, NAT Publik akan menetapkan
10.0.0.2:10001
. Tupel port sumber dan alamat IP sumber NAT ini kemudian digunakan
untuk semua koneksi berikutnya dari 10.0.0.2:10001
ke 3-tupel tujuan mana pun.
Jika VM yang sama menggunakan port sumber sementara yang berbeda untuk mengirim paket, misalnya,
10.0.0.2:20002
, NAT Publik juga menetapkan tuple alamat IP sumber NAT dan
port sumber untuk semua koneksi berikutnya dari 10.0.0.2:20002
ke tuple 3 tujuan
mana pun. Ada kemungkinan bahwa NAT Publik dapat menetapkan tuple alamat IP sumber NAT dan port sumber yang sama ke kedua tuple alamat IP internal dan port sumber sementara ini, sehingga menyebabkan konflik independen endpoint dalam situasi tertentu.
Untuk contoh yang lebih mendetail, lihat Contoh konflik Pemetaan Independen Endpoint.
Mengurangi konflik independen endpoint
Anda dapat melakukan perubahan konfigurasi untuk mengurangi konflik independen endpoint. Untuk mengetahui informasi selengkapnya, lihat Paket yang dihentikan dengan alasan konflik endpoint independen.
Penundaan untuk penggunaan kembali port sumber TCP
Setelah gateway Cloud NAT menutup koneksi TCP, Trusted Cloud gateway akan menerapkan penundaan sebelum dapat menggunakan kembali tupel port sumber dan alamat IP sumber NAT yang sama dengan tujuan yang sama (alamat IP tujuan, port tujuan, dan protokol). Durasi penundaan dikontrol oleh setelan TCP TIME_WAIT Timeout.
Jika perlu, Anda dapat mengurangi penundaan ini dengan mengubah nilai default Waktu Tunggu TCP TIME_WAIT. Untuk mengetahui informasi tentang cara mengubah waktu tunggu NAT, lihat Mengubah waktu tunggu NAT. Atau, Anda dapat melakukan salah satu perubahan berikut:
Tingkatkan jumlah minimum port per instance VM sehingga prosedur pemesanan port menetapkan lebih banyak tuple alamat IP sumber dan port sumber NAT untuk VM.
Jika VM perlu membuka dan menutup koneksi TCP dengan cepat ke alamat IP tujuan dan port tujuan yang sama menggunakan protokol yang sama, maka alih-alih Cloud NAT, tetapkan alamat IP eksternal ke VM dan gunakan aturan firewall untuk membatasi koneksi masuk yang tidak diminta.
Port sumber dan keamanan
Jika Anda mengandalkan perandoman port sumber sebagai langkah keamanan, Anda perlu mempertimbangkan hal berikut:
Tingkatkan jumlah minimum port per instance VM sehingga prosedur pemesanan port menetapkan lebih banyak tuple alamat IP sumber dan port sumber NAT untuk VM. Meningkatkan jumlah minimum port per instance VM akan menetapkan rentang port secara acak ke setiap VM; namun, port sumber yang dipilih dari rentang tersebut bersifat berurutan.
Tetapkan alamat IP eksternal ke VM daripada menggunakan Public NAT.
Contoh
Contoh berikut menunjukkan cara Cloud NAT mencadangkan alamat IP sumber NAT dan port sumber untuk VM serta cara Cloud NAT melakukan NAT untuk paket yang dikirim ke internet.
Reservasi port
Contoh berikut menunjukkan penerapan prosedur reservasi port.
Misalkan Anda mengonfigurasi gateway NAT Publik untuk menyediakan NAT bagi rentang alamat IP utama subnet, dan VM yang menggunakan subnet tersebut tidak memiliki rentang IP alias dari rentang alamat IP utama subnet. Membulatkan ke bawah hasil operasi pembagian ke bilangan bulat terdekat. ⌊⌋ adalah fungsi floor (bilangan bulat terbesar), yang berarti membuang hasil pembagian pecahan.
Jika Anda mengonfigurasi gateway NAT Publik dengan satu alamat IP NAT menggunakan penetapan manual, dan Anda menyetel jumlah minimum port per instance VM ke 64, gateway dapat menyediakan layanan NAT untuk hingga 1.008 VM:
⌊(1 alamat IP NAT) × (64.512 port per alamat) / (64 port per VM)⌋ = 1.008 VM
Jika Anda perlu mendukung lebih dari 1.008 VM, Anda dapat menetapkan alamat IP NAT kedua ke gateway Cloud NAT. Dengan dua alamat IP NAT, dan tetap mempertahankan jumlah minimum port per VM di 64, Anda dapat mendukung 2.016 VM:
⌊(2 alamat IP NAT) × (64.512 port per alamat) / (64 port per VM)⌋ = 2.016 VM
Jika Anda menetapkan jumlah minimum port per VM ke 4.096, setiap alamat IP NAT dapat mendukung 15 VM. Penghitungan ini dibulatkan ke bawah ke bilangan bulat terdekat:
⌊(1 alamat IP NAT) × (64.512 port per alamat) / (4.096 port per VM)⌋ = 15 VM
Misalkan Anda mengonfigurasi gateway NAT Pribadi untuk menyediakan NAT bagi semua alamat IP subnet:
Ukuran subnet minimum yang dapat Anda buat adalah delapan alamat IPv4, yang merupakan subnet mask
/29
. Jika Anda mengonfigurasi gateway NAT Pribadi dengan subnet NAT berukuran minimum, dan Anda menyetel jumlah minimum port per instance VM ke 64, gateway dapat menyediakan layanan NAT untuk hingga 2.016 VM:⌊(2(32-29) - 4) alamat IP NAT × (64.512 port per alamat) / (64 port per VM × 2)⌋ = 2.016 VM
Pada contoh sebelumnya, jika Anda menetapkan jumlah minimum port per instance VM menjadi 1024, gateway dapat menyediakan layanan NAT untuk hingga 126 VM:
⌊(2(32-29) - 4) alamat IP NAT × (64.512 port per alamat) / (1024 port per VM × 2)⌋ = 126 VM
Jika Anda mengonfigurasi gateway Private NAT dengan mask subnet NAT
/28
, dan Anda menetapkan jumlah minimum port per instance VM ke 64, gateway dapat menyediakan layanan NAT untuk hingga 6.048 VM:⌊(2(32-28) - 4) alamat IP NAT × (64.512 port per alamat) / (64 port per VM × 2)⌋ = 6.048 VM
Konflik Pemetaan Independen Endpoint
Contoh berikut menggambarkan bagaimana Pemetaan Independen Endpoint dapat mengurangi jumlah koneksi simultan dari VM klien ke 3-tuple tujuan yang sama, meskipun ada cukup banyak tuple alamat IP sumber dan port sumber NAT gratis yang tersedia untuk VM klien.
Misalkan Anda telah mengonfigurasi gateway NAT Publik untuk menyediakan NAT bagi rentang alamat IP utama subnet. Anda telah membuat VM klien dengan satu
antarmuka jaringan yang alamat IP internal utamanya adalah 10.0.0.2
di
subnet tersebut. Contoh VM tidak memiliki alamat IP eksternal yang ditetapkan ke antarmuka
jaringannya.
VM membuka koneksi dengan karakteristik berikut:
- Alamat IP dan port internal sumber:
10.0.0.2:10001
- Tuple 3 tujuan:
203.0.113.1:80
menggunakan TCP - NAT publik menggunakan tuple alamat IP sumber dan port sumber NAT berikut:
192.0.2.10:30009
- Alamat IP dan port internal sumber:
VM membuka koneksi kedua dengan karakteristik berikut:
- Alamat IP dan port internal sumber:
10.0.0.2:10002
- Tuple 3 tujuan:
203.0.113.2:80
menggunakan TCP - NAT publik dapat memilih untuk menggunakan tuple port sumber dan alamat IP sumber NAT yang sama,
192.0.2.10:30009
, untuk koneksi ini juga. Menggunakan tupel port sumber dan alamat IP sumber NAT yang sama untuk alamat IP klien dan port sumber sementara yang berbeda dapat dilakukan.
- Alamat IP dan port internal sumber:
Saat koneksi pertama dan kedua aktif, NAT Publik tidak dapat membuka koneksi TCP ketiga dengan karakteristik berikut:
- Alamat IP dan port internal sumber yang sama dengan koneksi pertama:
10.0.0.2:10001
- Tuple 3 tujuan yang sama dengan koneksi kedua:
203.0.113.2:80
menggunakan TCP
Upaya koneksi ketiga ini dibatalkan dengan error konflik independen endpoint karena Pemetaan Independen Endpoint yang dibuat oleh koneksi pertama mewajibkan semua koneksi dari
10.0.0.2:10001
menggunakan tuple port sumber dan alamat IP sumber NAT yang sama,192.0.2.10:30009
. Namun,192.0.2.10:30009
sudah digunakan oleh koneksi TCP kedua ke203.0.113.2:80
.- Alamat IP dan port internal sumber yang sama dengan koneksi pertama:
Untuk menghilangkan ambiguitas, upaya koneksi berikutnya dalam contoh ini berhasil selama salah satu hal berikut benar:
- Koneksi TCP pertama telah ditutup. Menutup koneksi akan menghapus
Pemetaan Independen Endpoint antara
10.0.0.2:10001
dan192.0.2.10:30009
, sehingga koneksi ketiga dapat dipetakan ke tuple alamat IP sumber dan port sumber NAT yang berbeda untuk berkomunikasi dengan203.0.113.2:80
menggunakan TCP. - Koneksi TCP kedua telah ditutup. Menutup koneksi akan membebaskan
10.0.0.2:10001
untuk menggunakan alamat IP sumber NAT dan port sumber192.0.2.10:30009
untuk berkomunikasi dengan203.0.113.2:80
menggunakan TCP. - Upaya koneksi ketiga memilih port sumber ephemeral (internal) yang berbeda. Dalam contoh ini, Pemetaan Independen Endpoint menetapkan pemetaan banyak-ke-satu untuk alamat IP sumber NAT internal dan port sumber
10.0.0.2:10001
dan10.0.0.2:10002
untuk menggunakan192.0.2.10:30009
saat berkomunikasi dengan203.0.113.2:80
menggunakan TCP. Jika upaya koneksi ketiga menggunakan port sumber sementara yang berbeda dari10001
dan10002
, ada kemungkinan alamat IP sumber NAT dan port sumber yang berbeda dapat digunakan untuk berkomunikasi dengan203.0.113.2:80
menggunakan TCP. - Menonaktifkan independensi endpoint. Penonaktifan ini memungkinkan koneksi baru dari
10.0.0.2:10001
tidak perlu menggunakan192.0.2.10:30009
, sehingga dapat menggunakan alamat IP dan port sumber NAT yang berbeda.
- Koneksi TCP pertama telah ditutup. Menutup koneksi akan menghapus
Pemetaan Independen Endpoint antara
Untuk mengetahui teknik yang dapat Anda gunakan untuk menghindari konflik, lihat Mengurangi konflik independen endpoint.
Langkah berikutnya
- Siapkan gateway Public NAT.
- Siapkan gateway Private NAT.
- Buat contoh penyiapan Compute Engine.
- Buat contoh penyiapan GKE.
- Memecahkan masalah umum.