Penghentian IPv6 untuk HTTP(S), Proxy SSL, dan Load Balancer Jaringan proxy eksternal

Google Cloud mendukung klien IPv6 dengan load balancer proxy, seperti Load Balancer Aplikasi eksternal global dan Load Balancer Jaringan proxy eksternal. Load balancer menerima koneksi IPv6 dari pengguna Anda, lalu melakukan proxy pada koneksi tersebut ke backend Anda.

Anda dapat mengonfigurasi alamat IP eksternal IPv4 dan IPv6 untuk load balancer proxy berikut:

  • Load Balancer Aplikasi eksternal global
  • Load Balancer Aplikasi Klasik
  • Load Balancer Jaringan proxy eksternal
Load balancing IPv6 global.
Load balancing IPv6 global (klik untuk memperbesar).

Penghentian IPv6 memungkinkan Anda menangani permintaan IPv6 dari pengguna dan mem-proxy-kannya melalui IPv4 ke backend Anda. Dengan menggunakan IPv6, Anda dapat melakukan hal berikut:

  • Gunakan 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 data AAAA dan Anda tidak perlu melakukan load balancing di antara beberapa alamat IPv6. Menyimpan data AAAA ke dalam cache oleh klien tidak menjadi masalah karena hanya ada satu alamat untuk di-cache. Permintaan pengguna ke alamat IPv6 akan secara otomatis diseimbangkan bebannya ke backend responsif terdekat dengan kapasitas yang tersedia.

  • Melakukan load balancing terhadap traffic klien IPv6 HTTP, HTTPS, HTTP/2, TCP, dan SSL/TLS.

  • Overflow di berbagai 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. Jika region terdekat memiliki resource yang tersedia, load balancing global akan kembali ke penayangan berdasarkan region ini. Load balancing global mengharuskan Anda menggunakan Paket Premium Tingkat Layanan Jaringan.

  • Menjalankan dual stack. Untuk melayani klien IPv6 dan IPv4, buat dua resource IP load balancing—satu untuk IPv6 dan satu lagi untuk IPv4—dan kaitkan keduanya dengan instance aplikasi IPv4 yang sama. Klien IPv4 terhubung ke alamat IPv4, sedangkan klien IPv6 terhubung ke alamat IPv6. Klien ini kemudian akan secara otomatis melakukan load balancing ke backend yang responsif terdekat dengan kapasitas yang tersedia. Kami menyediakan aturan penerusan IPv6 tanpa biaya, sehingga Anda hanya membayar aturan IPv4.

    Mengarahkan traffic IPv4 dan IPv6 ke backend yang sama.
    Mengarahkan traffic IPv4 dan IPv6 ke backend yang sama (klik untuk memperbesar).

Penghentian dan proxy IPv6

Dengan mengonfigurasi penghentian IPv6 untuk load balancer, backend Anda akan muncul sebagai aplikasi IPv6 ke klien IPv6, seperti yang ditunjukkan pada gambar berikut.

Penghentian IPv6 untuk load balancing.
Penghentian IPv6 untuk load balancing (klik untuk memperbesar).

Saat pengguna terhubung ke load balancer melalui IPv6, hal berikut akan terjadi:

  1. Load balancer Anda, dengan alamat IPv6 dan aturan penerusannya, menunggu koneksi pengguna.
  2. Klien IPv6 terhubung ke load balancer melalui IPv6.
  3. Load balancer bertindak sebagai reverse proxy dan menghentikan koneksi klien IPv6. Klien menempatkan permintaan ke dalam koneksi IPv4 ke backend.
  4. Di jalur balik, load balancer menerima respons IPv4 dari backend, lalu menempatkannya ke dalam koneksi IPv6 kembali ke klien asli.

Alokasi alamat IPv6 untuk aturan penerusan load balancer

Saat mengonfigurasi load balancer eksternal, Anda memberinya satu atau beberapa aturan penerusan global, masing-masing dengan alamat IP IPv4 atau IPv6 eksternal yang dirutekan secara publik (atau keduanya). Anda dapat menggunakan alamat IP ini di data DNS untuk situs Anda.

Saat membuat aturan penerusan, Anda dapat menggunakan alamat IP statis yang dicadangkan untuk project atau menyetel agar aturan penerusan otomatis mendapatkan alamat IP sementara saat membuat aturan. Alamat IP statis disediakan untuk project Anda, dan Anda dapat menyimpannya sampai Anda sengaja melepaskannya. Alamat sementara termasuk dalam aturan penerusan selama aturan penerusan ada. Jika Anda menghapus aturan penerusan, alamat sementara akan dikembalikan ke kumpulan Google Cloud.

Jika memerlukan alamat IPv4 dan IPv6 untuk load balancer, Anda dapat membuat dua aturan penerusan, yang mengaitkan alamat IPv4 dengan satu alamat dan satu alamat IPv6 dengan alamat lainnya. Selanjutnya, Anda dapat mengaitkan kedua aturan tersebut dengan load balancer yang sama.

Format alamat IPv6

Google Cloud mengalokasikan rentang alamat IPv6 /64 untuk aturan penerusan IPv6. Google Cloud CLI mencantumkan alamat IPv6 dengan 64 bit paling tidak signifikan yang ditetapkan ke 0, tetapi load balancer menerima traffic dalam rentang penuh. Oleh karena itu, Anda mungkin melihat alamat IPv6 load balancer lain dalam rentang yang dialokasikan di header X-Forwarded-For, bergantung pada alamat IP server IPv6 yang terhubung ke klien.

Saat memformat alamat IPv6, Google Cloud mengikuti rekomendasi dalam RFC 5952,bagian 4.

Header IP klien dengan penghentian IPv6 untuk Load Balancer Aplikasi eksternal

Saat load balancer melakukan 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, untuk pengambilan keputusan, atau untuk tujuan lainnya. Google Cloud menyediakan header HTTP yang disebarkan ke backend yang menyertakan alamat IP klien IPv6 asli.

{i>Header<i} HTTP untuk IPv6 mirip dengan {i>header<i} untuk IPv4. Format permintaan adalah sebagai berikut:

  • X-Forwarded-For: CLIENT_IP_ADDRESS, GLOBAL_FORWARDING_RULE_EXTERNAL_IP_ADDRESSES

Elemen terakhir menampilkan alamat IP load balancer. Elemen kedua hingga terakhir menampilkan alamat IP klien seperti yang terlihat oleh load balancer. Mungkin ada elemen lain dalam header X-Forwarded-For saat klien atau proxy yang mengintervensi menambahkan header X-Forwarded-For lain 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.

Harga

Aturan penerusan untuk penghentian IPv6 disediakan tanpa biaya tambahan. Anda tidak dikenai biaya untuk alamat IPv6 sementara. Alamat IPv6 yang dicadangkan dikenai biaya berdasarkan tarif yang ada, terlepas dari apakah alamat tersebut digunakan atau tidak. Jika tidak, harga untuk load balancing IPv6 sama dengan harga untuk load balancing IPv4. Untuk mengetahui detail harga load balancing, lihat Harga jaringan.

Batasan

  • Traffic IPv6 tidak didukung dengan Load Balancer Aplikasi eksternal regional, Load Balancer Aplikasi internal lintas region, Load Balancer Aplikasi internal regional, Load Balancer Jaringan proxy internal regional, Load Balancer Jaringan proxy internal lintas region, Load Balancer Jaringan proxy eksternal regional, dan Load Balancer Jaringan passthrough internal.

Langkah selanjutnya