Dokumen ini menunjukkan cara traffic IPv6 ditangani oleh Load Balancer Aplikasi dan Load Balancer Jaringan proxy. Load balancer ini adalah load balancer proxy, yang berarti koneksi klien yang masuk dihentikan di load balancer. Load balancer kemudian memulai koneksi baru untuk meneruskan permintaan klien ke backend. Bergantung pada jenis load balancer, Anda dapat mengaktifkan IPv6 untuk salah satu atau kedua koneksi ini.
Mengaktifkan IPv6 untuk load balancer memiliki manfaat berikut:
- Menggunakan satu alamat IPv6 anycast untuk deployment multi-region. Anda hanya memerlukan satu alamat IPv6 load balancer untuk instance aplikasi yang berjalan di beberapa region. Artinya, server DNS Anda memiliki satu AAAA data dan Anda tidak perlu melakukan load balancing di antara beberapa alamat IPv6. Penayangan data AAAA dalam cache oleh klien tidak menjadi masalah karena hanya ada satu alamat yang dapat di-cache. Permintaan pengguna ke alamat IPv6 secara otomatis di-load balance ke backend responsif terdekat dengan kapasitas yang tersedia.
Menjalankan deployment dual-stack. Untuk melayani klien IPv6 dan IPv4, buat dua alamat IP load balancer—satu untuk IPv6 dan yang lainnya untuk IPv4. Klien IPv4 terhubung ke alamat IPv4, sedangkan klien IPv6 terhubung ke alamat IPv6. Klien ini kemudian secara otomatis di-load balance ke backend dual-stack IPv4 atau IPv6 responsif terdekat dengan kapasitas yang tersedia. Untuk melihat load balancer mana yang mendukung backend dual-stack, lihat Tabel: Layanan backend dan jenis backend yang didukung.
Melakukan load balancing traffic klien IPv6 HTTP, HTTPS, HTTP/2, TCP, dan SSL/TLS. Dukungan protokol bergantung pada jenis load balancer yang Anda gunakan dan protokol aturan penerusan.
- Overflow di seluruh region dengan satu alamat load balancer IPv6. Jika backend di satu region kehabisan resource atau tidak responsif, load balancer global akan otomatis mengarahkan permintaan dari pengguna ke region terdekat berikutnya dengan resource yang tersedia. Saat region terdekat memiliki resource yang tersedia, load balancing global akan kembali melayani dari region ini. Load balancing global mengharuskan Anda menggunakan Paket Premium Tier dari Network Service Tiers.
Dukungan load balancer
Untuk load balancer berbasis proxy seperti Load Balancer Aplikasi dan Load Balancer Jaringan Proxy, koneksi dari klien ke load balancer dan koneksi kedua dari load balancer ke backend dapat dikonfigurasi secara terpisah. Misalnya, load balancer dapat menerima traffic IPv4 dan IPv6 dari klien, menghentikan koneksi, lalu meneruskan permintaan dari load balancer ke backend melalui koneksi IPv6 baru, selama backend adalah backend dual-stack yang dilengkapi untuk menangani koneksi IPv6.
Untuk mengaktifkan load balancer agar dapat menerima koneksi IPv6 dari klien, Anda harus menggunakan alamat IPv6 untuk aturan penerusan load balancer. Koneksi berikutnya dari load balancer ke backend menggunakan IPv4 secara default. Namun, Anda dapat mengaktifkan load balancer tertentu untuk menggunakan IPv6 dengan mengonfigurasi opsi kebijakan pemilihan alamat IP di layanan backend.
Tabel berikut menjelaskan jenis koneksi yang didukung oleh semua load balancer berbasis proxy:
| Load balancer | Koneksi dari klien ke load balancer | Koneksi dari load balancer ke backend |
|---|---|---|
| Load Balancer Aplikasi eksternal global Load Balancer Jaringan proxy eksternal global |
Koneksi IPv4 dan IPv6 dapat dihentikan. | Salah satu dari hal berikut:
|
| Load Balancer Aplikasi klasik Load Balancer Jaringan proxy klasik |
Koneksi IPv4 dan IPv6 dapat dihentikan. | Hanya koneksi IPv4 |
| Load Balancer Aplikasi eksternal regional Load Balancer Jaringan proxy eksternal regional Load Balancer Aplikasi internal regional Load Balancer Jaringan proxy internal regional Load Balancer Aplikasi internal lintas region Load Balancer Jaringan proxy internal lintas region |
Koneksi IPv4 dan IPv6 (Pratinjau) dapat dihentikan. | Salah satu dari hal berikut:
|
GCE_VM_IP_PORT endpoint) yang dapat dikonfigurasi sebagai dual-stack.
Cara kerja penghentian IPv6
Penghentian IPv6 didukung oleh Load Balancer Aplikasi dan Load Balancer Jaringan proxy. Mengonfigurasi penghentian IPv6 untuk load balancer ini memungkinkan backend Anda muncul sebagai aplikasi IPv6 ke klien IPv6 Anda, seperti yang ditunjukkan pada gambar berikut:
Saat pengguna terhubung ke load balancer melalui IPv6, hal berikut akan terjadi:
- Load balancer Anda, dengan alamat IPv6 dan aturan penerusannya, menunggu koneksi pengguna.
- Klien IPv6 terhubung ke load balancer menggunakan IPv6.
- Load balancer bertindak sebagai reverse proxy dan menghentikan koneksi klien IPv6. Berdasarkan kebijakan pemilihan alamat IP layanan backend , load balancer menempatkan permintaan ke koneksi IPv4 atau IPv6 ke backend.
- Di jalur balik, load balancer menerima respons dari backend, lalu menempatkannya ke koneksi IPv6 kembali ke klien asli.
Alokasi alamat IPv6 untuk aturan penerusan load balancer
Saat mengonfigurasi load balancer eksternal atau internal, Anda akan memberikannya satu atau beberapa aturan penerusan, masing-masing dengan alamat IP IPv4 atau IPv6 (atau keduanya). Load balancer eksternal menggunakan alamat IP eksternal yang dirutekan secara publik, sedangkan load balancer internal menggunakan alamat IP internal pribadi yang tidak dapat diakses dari internet. Anda dapat menggunakan alamat IP ini dalam data DNS untuk situs Anda.
Saat membuat aturan penerusan, Anda dapat menggunakan alamat IP statis yang dicadangkan untuk project Anda atau Anda dapat meminta aturan penerusan untuk otomatis mendapatkan alamat IP sementara saat Anda membuat aturan. Alamat IP statis dicadangkan untuk project Anda, dan Anda dapat menyimpannya hingga Anda sengaja melepaskannya. Alamat sementara dimiliki oleh aturan penerusan selama aturan penerusan ada. Jika Anda menghapus aturan penerusan, alamat sementara akan dilepaskan kembali ke Google Cloud pool.
Jika memerlukan alamat IPv4 dan IPv6 untuk load balancer, Anda dapat membuat dua aturan penerusan, mengaitkan alamat IPv4 dengan satu aturan dan alamat IPv6 dengan aturan lainnya. Kemudian, Anda dapat mengaitkan kedua aturan dengan load balancer yang sama.
Format alamat IPv6
Saat Anda membuat aturan penerusan, bergantung pada jenis load balancer, perilaku alokasi alamat IPv6 adalah sebagai berikut:
Untuk Load Balancer Aplikasi eksternal global dan Load Balancer Jaringan proxy eksternal global, Google Cloud mengalokasikan rentang alamat IPv6
/64ke aturan penerusan IPv6. Google Cloud CLI mencantumkan alamat IPv6 dengan 64 bit paling tidak signifikan yang ditetapkan ke 0, tetapi load balancer menerima traffic pada rentang penuh. Untuk Load Balancer Aplikasi eksternal global, Anda mungkin melihat alamat IPv6 load balancer lainnya dalam rentang yang dialokasikan di headerX-Forwarded-For, bergantung pada alamat IP server IPv6 yang terhubung dengan klien.Untuk Load Balancer Aplikasi internal dan Load Balancer Jaringan proxy internal, dengan yang
--ip-versionditetapkan keIPV6, Google Cloud membuat rentang alamat IPv6/96awalan acak untuk aturan penerusan. Alamat aturan penerusan ini dialokasikan dari subnet dual-stack mode kustom atau subnet khusus IPv6/64yang harus dikonfigurasi dengan--ipv6-access-typeINTERNALdan--stack-typeIPV4_IPV6atauIPV6_ONLY.Untuk Load Balancer Aplikasi eksternal regional dan Load Balancer Jaringan proxy eksternal regional, dengan yang
--ip-versionditetapkan keIPV6, Google Cloud membuat rentang alamat IPv6/96awalan acak untuk aturan penerusan. Alamat aturan penerusan ini dialokasikan dari subnet dual-stack mode kustom atau subnet/64khusus IPv6 yang harus dikonfigurasi denganipv6-access-typeEXTERNALdanstack-typeIPV4_IPV6atauIPV6_ONLY. Alamat IPv6 eksternal hanya dapat dicadangkan di tingkat jaringan premium. Flag--endpoint-typeharus ditetapkan sebagaiNETLBagar dapat digunakan untuk aturan penerusan.
Saat memformat alamat IPv6, Google Cloud ikuti rekomendasi di RFC 5952, bagian 4.
Header IP klien dengan penghentian IPv6 untuk Load Balancer Aplikasi
Saat load balancer mem-proxy koneksi IPv6 dari klien ke koneksi IPv4 ke backend Anda, alamat IP sumber asli akan diganti dengan alamat IP load balancer. Namun, backend sering kali perlu mengetahui alamat IP sumber asli untuk logging, pengambilan keputusan, atau tujuan lainnya. Google Cloud menyediakan header HTTP yang disebarkan ke backend yang menyertakan alamat IP klien IPv6 asli.
Header HTTP untuk IPv6 mirip dengan header untuk IPv4. Format untuk permintaan adalah sebagai berikut:
X-Forwarded-For: CLIENT_IP_ADDRESS, GLOBAL_FORWARDING_RULE_EXTERNAL_IP_ADDRESSES
Elemen terakhir menunjukkan alamat IP load balancer. Elemen kedua dari terakhir menunjukkan alamat IP klien seperti yang terlihat oleh load balancer. Mungkin ada elemen lain di header X-Forwarded-For saat klien atau proxy perantara menambahkan header X-Forwarded-For lainnya sebelum mengirim permintaan ke load balancer.
Contoh header X-Forwarded-For mungkin terlihat seperti ini:
X-Forwarded-For: 2001:db8:abcd:1::1234, 2607:f8b0:4005:801::200e
2001:db8:abcd:1::1234 adalah alamat IPv6 klien. 2607:f8b0:4005:801::200e
adalah alamat IPv6 Load Balancer Aplikasi eksternal.
Mengonversi dari khusus IPv4 ke dual-stack
Anda dapat mengonversi resource load balancer yang menggunakan khusus IPv4 (single-stack) ke IPv4 dan IPv6 (dual-stack). Dengan memperbarui resource load balancer, Anda dapat otomatis merutekan traffic IPv6 ke backend.
Untuk mengetahui petunjuk cara mengonversi resource load balancer dan backend ke dual-stack, lihat dokumentasi berikut:
| Load balancer | Dokumentasi |
|---|---|
|
Load Balancer Aplikasi eksternal global Load Balancer Aplikasi internal lintas region Load Balancer Aplikasi eksternal regional Load Balancer Aplikasi internal regional |
Mengonversi Load Balancer Aplikasi ke IPv6 |
|
Load Balancer Jaringan proxy eksternal global Load Balancer Jaringan proxy internal lintas region Load Balancer Jaringan proxy eksternal regional Load Balancer Jaringan proxy internal regional |
Mengonversi Load Balancer Jaringan proxy ke IPv6 |
Harga
Untuk mengetahui harga alamat IP, lihat Harga jaringan: Virtual Private Cloud.
Untuk mengetahui detail harga load balancing, lihat Harga jaringan: Cloud Load Balancing.
Batasan
- Load Balancer Jaringan proxy klasik dan Load Balancer Aplikasi klasik tidak mendukung backend dual-stack; traffic IPv6 dihentikan oleh load balancer, lalu di-proxy-kan melalui koneksi IPv4 ke backend.
Saat aturan penerusan IPv6 dibuat, rentang alamat IPv6
/96akan otomatis dialokasikan dari subnet. Namun, hanya alamat pertama dalam rentang /96 ini (misalnya, yang diakhiri dengan:0:0) yang dapat dijangkau oleh klien. Pastikan klien dan data DNS Anda dikonfigurasi untuk menggunakan alamat pertama tertentu ini. Hal ini berlaku untuk Load Balancer Aplikasi eksternal regional, Load Balancer Aplikasi internal regional, Load Balancer Jaringan proxy internal regional, Load Balancer Jaringan proxy internal lintas region, Load Balancer Aplikasi internal lintas region, dan Load Balancer Jaringan proxy eksternal regional (Pratinjau).Hanya backend grup instance VM dan grup endpoint jaringan (NEG) zona dengan endpoint
GCE_VM_IP_PORTyang mendukung backend dual-stack (IPv4 dan IPv6).