Mengonfigurasi alamat IP internal statis


Halaman ini menunjukkan cara mengonfigurasi dan mengelola alamat IPv4 atau IPv6 internal statis untuk instance virtual machine (VM) Compute Engine.

Jika instance VM memerlukan alamat IP internal tetap yang tidak berubah, Anda bisa mendapatkan alamat IP internal statis untuk VM tersebut dengan menggunakan salah satu opsi berikut:

Untuk mempelajari cara mengelola alamat IP internal sekunder, baca Rentang IP alias.

Di Compute Engine, setiap instance VM dapat memiliki beberapa antarmuka jaringan. Setiap antarmuka dapat memiliki satu alamat IP eksternal, satu alamat IP internal utama, dan satu atau beberapa alamat IP internal sekunder. Untuk mempelajari alamat IP, baca dokumentasi alamat IP.

Dengan alamat IP internal statis, Anda selalu dapat menggunakan alamat IP yang sama untuk VM, meskipun Anda harus menghapus dan membuat ulang VM.

Untuk mengonfigurasi alamat IP eksternal statis, bukan alamat IP internal, lihat Mengonfigurasi alamat IP eksternal statis.

Sebelum memulai

  • Baca tentang alamat IP.
  • Siapkan autentikasi, jika Anda belum melakukannya. Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan region dan zona default.

    Terraform

    Untuk menggunakan contoh Terraform di halaman ini dari lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.

    1. Menginstal Google Cloud CLI.
    2. Untuk initialize gcloud CLI, jalankan perintah berikut:

      gcloud init
    3. Buat kredensial autentikasi lokal untuk Akun Google Anda:

      gcloud auth application-default login

    Untuk informasi selengkapnya, lihat Siapkan autentikasi untuk lingkungan pengembangan lokal.

    REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

      Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan guna mengonfigurasi dan mengelola alamat IP statis, minta administrator Anda untuk memberi Anda peran IAM berikut pada project Anda:

Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses.

Peran yang telah ditetapkan ini berisi izin yang diperlukan untuk mengonfigurasi dan mengelola alamat IP statis. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk mengonfigurasi dan mengelola alamat IP statis:

  • compute.instances.update pada instance VM
  • compute.instances.updateNetworkInterface pada instance VM
  • compute.instances.addAccessConfig pada instance VM
  • compute.instances.deleteAccessConfig pada instance VM
  • compute.networks.list di jaringan
  • compute.subnetworks.use di subnet
  • compute.subnetworks.list di subnet
  • Untuk membuat VM:
    • compute.instances.create pada project
    • Untuk menggunakan image kustom guna membuat VM: compute.images.useReadOnly pada image
    • Untuk menggunakan snapshot guna membuat VM: compute.snapshots.useReadOnly di snapshot
    • Untuk menggunakan template instance untuk membuat VM: compute.instanceTemplates.useReadOnly pada template instance
    • Untuk menetapkan jaringan lama ke VM: compute.networks.use di project
    • Untuk menentukan alamat IP statis untuk VM: compute.addresses.use di project
    • Untuk menetapkan alamat IP eksternal ke VM saat menggunakan jaringan lama: compute.networks.useExternalIp di project
    • Untuk menentukan subnet VM: compute.subnetworks.use di project atau subnet yang dipilih
    • Untuk menetapkan alamat IP eksternal ke VM saat menggunakan jaringan VPC: compute.subnetworks.useExternalIp di project atau di subnet yang dipilih
    • Untuk menetapkan metadata instance VM untuk VM: compute.instances.setMetadata di project
    • Untuk menetapkan tag untuk VM: compute.instances.setTags di VM
    • Untuk menetapkan label VM: compute.instances.setLabels di VM
    • Untuk menetapkan akun layanan agar VM dapat menggunakan: compute.instances.setServiceAccount di VM
    • Untuk membuat disk baru bagi VM: compute.disks.create di project
    • Untuk memasang disk yang ada dalam mode hanya baca atau baca-tulis: compute.disks.use di disk
    • Untuk memasang disk yang ada dalam mode hanya baca: compute.disks.useReadOnly pada disk

Anda mung juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaanlainnya.

Batasan

  • Anda tidak dapat membatalkan penetapan atau mengubah alamat IPv4 internal resource yang ada. Misalnya, Anda tidak dapat menetapkan alamat IP internal statis baru ke instance VM yang sedang berjalan atau instance VM yang dihentikan. Namun, Anda dapat mempromosikan alamat IP internal sementara dari sebuah resource menjadi alamat IP internal statis, sehingga alamat tersebut tetap dipertahankan bahkan setelah resource dihapus.

  • Jumlah alamat IP internal statis yang dapat dicadangkan tidak boleh melebihi kuota project Anda. Untuk mengetahui informasi lebih lanjut, lihat quotas per project dalam dokumentasi VPC.

  • Hanya satu resource dalam satu waktu yang dapat menggunakan alamat IP internal statis.

  • Pencadangan alamat IP internal statis hanya didukung untuk jaringan VPC. Layanan ini tidak didukung untuk jaringan mode lama.

  • Alamat IP internal statis tidak akan dilepas secara otomatis meski resource dihapus. Anda harus melepas alamat IP internal statis secara manual jika tidak lagi memerlukannya.

  • Anda tidak dapat mengubah nama alamat IP statis.

  • Alamat IP internal statis bersifat regional, yang berarti alamat tersebut dibatasi untuk region tempat alamat IP tersebut dicadangkan. Misalnya, jika ada alamat IP internal statis yang dicadangkan di Region A, Anda hanya dapat menggunakan alamat IP di Region A.

Cara mengonfigurasi alamat IP internal statis

Anda dapat mencadangkan alamat IP internal statis, lalu menentukan alamat yang dicadangkan saat membuat VM. Anda juga dapat membuat VM dengan alamat IP internal sementara, lalu mempromosikan alamat IP sementara tersebut ke alamat IP internal statis.

Untuk menggunakan alamat IP internal statis, Anda harus memiliki jaringan VPC untuk project Anda. Untuk melihat jaringan VPC di project Anda, baca artikel Melihat jaringan VPC.

Mencadangkan alamat IPv4 atau IPv6 internal statis, lalu mengaitkannya dengan VM tertentu

Dalam skenario ini, Anda mencadangkan alamat IP internal statis secara terpisah, lalu menetapkannya ke VM:

  1. Pilih subnet di jaringan VPC Anda. Untuk alamat IPv6, pastikan bahwa alamat tersebut merupakan subnet dual-stack.

  2. Cadangkan alamat IP internal dari rentang IP utama subnet. Langkah ini akan membuat resource alamat IP internal bernama yang berisi alamat IP internal spesifik tersebut. Dengan mereservasi alamat IP, Google Cloud tidak akan otomatis mengalokasikan alamat tersebut sebagai alamat sementara.

  3. Gunakan alamat IP internal yang dicadangkan dengan mengaitkannya ke instance VM saat membuat resource VM.

Tentukan alamat IPv4 atau IPv6 internal efemeral untuk VM, lalu promosikan alamat tersebut

Dalam skenario ini, Anda mempromosikan alamat IPv4 atau IPv6 internal efemeral yang masih terpasang ke VM:

  1. Pilih subnet di jaringan VPC Anda. Untuk alamat IPv6, pastikan bahwa alamat tersebut merupakan subnet dual-stack.

  2. Buat instance VM dengan alamat IPv4 atau IPv6 efemeral yang dialokasikan secara otomatis atau alamat IPv4 tertentu.

  3. Promosikan alamat IP internal efemeral ke alamat statis.

Kedua metode tersebut diuraikan dalam Gambar 1.

Status pencadangan alamat IP internal.
Gambar 1. Status pencadangan alamat IP internal (klik untuk memperbesar).

Lihat alamat IP internal statis yang tersedia

Untuk melihat semua alamat IP internal statis yang ada, selesaikan langkah-langkah berikut.

Konsol

  1. Di Konsol Google Cloud, buka halaman IP addresses.

    Buka alamat IP

  2. Klik Alamat IP internal.

gcloud

Gunakan perintah gcloud compute addresses list:

gcloud compute addresses list

API

Gunakan metode addresses.list:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses

Ganti kode berikut:

  • PROJECT_ID: project ID untuk permintaan ini
  • REGION: nama region untuk permintaan ini

Untuk menampilkan daftar semua alamat di semua region, gunakan metode addresses.aggregatedList:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/addresses

Mengonfigurasi alamat IP internal statis

Antarmuka VM diberi alamat IP dari subnet yang terhubung dengannya. Setiap antarmuka VM memiliki satu alamat IPv4 internal utama yang ditetapkan dari rentang IPv4 utama subnet. Jika VM terhubung ke subnet dual-stack dengan rentang IPv6 internal, Anda dapat menetapkan alamat IPv6 internal ke setiap antarmuka jaringan.

Alamat IPv4 internal dapat ditetapkan dengan cara berikut:

  • Compute Engine menetapkan satu alamat IPv4 dari rentang subnet IPv4 utama secara otomatis.
  • Anda dapat menetapkan alamat IPv4 internal tertentu saat membuat instance VM, atau Anda dapat mencadangkan alamat IPv4 internal statis untuk project Anda dan menetapkan alamat tersebut ke antarmuka jaringan VM.

Alamat IPv6 internal dapat ditetapkan dengan cara berikut:

Prosedur berikut memungkinkan Anda mengonfigurasi alamat IP internal statis untuk VM:

Membuat instance VM dengan alamat IPv4 atau IPv6 internal yang dicadangkan

Setelah mencadangkan alamat IP internal statis, Anda dapat menetapkan alamat yang dicadangkan ke instance VM saat membuat instance.

Saat Anda membuat VM yang terhubung ke subnet dual-stack dengan rentang IPv6 internal tanpa menentukan alamat IPv6 internal statis yang dicadangkan, Compute Engine akan otomatis menetapkan alamat IPv6 internal sementara ke VM dari rentang IPv6 subnet.

Konsol

  1. Di konsol Google Cloud, buka halaman Create an instance.

    Buka Buat instance

  2. Luaskan bagian Opsi lanjutan.

  3. Luaskan bagian Jaringan.

  4. Untuk menetapkan alamat IPv4 internal, lakukan hal berikut:

    1. Pilih jaringan dan subnetwork.
    2. Pilih alamat IPv4 internal yang dicadangkan dari daftar Alamat IPv4 internal utama.

    Atau, pilih Cadangkan alamat IP internal statis dan cadangkan alamat IPv4 internal statis baru.

  5. Untuk menetapkan alamat IPv6 internal, lakukan hal berikut:

    1. Pilih jaringan yang berisi subnet IPv6.
    2. Pilih subnet dual-stack dari daftar Subnetwork. Subnet harus memiliki jenis akses IPv6 INTERNAL.
    3. Untuk Jenis stack IP, pilih IPv4 and IPv6 (dual-stack).
    4. Pilih alamat IPv6 internal yang dicadangkan dari daftar Alamat IPv6 internal utama.

    Atau, pilih Cadangkan alamat IPv6 internal statis dan cadangkan alamat IPv6 internal statis baru.

  6. Untuk menyelesaikan modifikasi antarmuka jaringan default, klik Selesai.

  7. Lanjutkan dengan proses pembuatan VM.

  8. Klik Create.

gcloud

  • Untuk membuat instance dengan alamat IPv4 internal yang dicadangkan, gunakan flag --private-network-ip untuk menentukan alamat IPv4 internal yang dicadangkan saat Anda membuat instance:

    gcloud compute instances create VM_NAME
        --private-network-ip IP_ADDRESS
    

    Ganti kode berikut:

    • VM_NAME: nama VM yang ingin Anda buat.
    • IP_ADDRESS: alamat IP yang ingin Anda tetapkan.

    Jika menggunakan jaringan mode subnet kustom, Anda juga harus menentukan subnet menggunakan parameter --subnet SUBNET.

  • Untuk membuat instance dengan alamat IPv6 internal yang dicadangkan, gunakan flag --internal-ipv6-address untuk menentukan alamat IPv6 internal yang dicadangkan saat Anda membuat instance:

    gcloud compute instances create VM_NAME
        --subnet SUBNETWORK
        --stack-type IPV4_IPV6
        --internal-ipv6-address INTERNAL_IPV6_ADDRESS
        --zone ZONE
    

    Ganti kode berikut:

    • VM_NAME: nama VM yang ingin Anda buat.
    • SUBNETWORK: subnet untuk alamat IPv6 internal ini.
    • INTERNAL_IPV6_ADDRESS: alamat IPv6 /96, nama alamat IP, atau URI resource alamat. Alamat IP harus dicadangkan sebelum Anda dapat menggunakannya.
    • ZONE: zona untuk VM.

REST

Untuk membuat instance VM dengan alamat IP internal statis, gunakan metode instances.insert.

  • Untuk alamat IPv4 internal, berikan properti networkInterfaces[].networkIP secara eksplisit dengan alamat IPv4 internal yang ingin Anda tetapkan untuk VM.

    Contoh:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    
    {
    "name": "VM_NAME",
    "machineType": "zones/us-central1-f/machineTypes/e2-micro",
    "networkInterfaces": [{
      "accessConfigs": [{
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
      }],
      "network": "global/networks/default",
      "networkIP": "IPV4_ADDRESS"
    }],
    "disks": [{
      "autoDelete": "true",
      "boot": "true",
      "type": "PERSISTENT",
      "initializeParams": {
          "sourceImage": "projects/debian-cloud/global/images/v20150818"
      }
    }]
    }

    Ganti kode berikut:

    • PROJECT_ID: ID project untuk membuat VM.
    • ZONE: zona tempat VM dibuat.
    • VM_NAME: nama virtual machine.
    • IPV4_ADDRESS: alamat IPv4 internal yang akan ditetapkan ke VM.
  • Untuk alamat IPv6 internal, tentukan secara eksplisit nilai untuk properti berikut:

    • networkInterfaces[].stackType
    • networkInterfaces[].ipv6Address
    • networkInterfaces[].internalIpv6PrefixLength
    • networkInterfaces[].ipv6AccessType

    Contoh:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    {
    "name": "VM_NAME",
    "machineType": "zones/us-central1-f/machineTypes/e2-micro",
    "networkInterfaces": [{
      "accessConfigs": [{
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
      }],
      "network": "global/networks/default",
      "stackType": "IPV4_IPV6"
      "ipv6Address": ""IPV6_ADDRESS"",
      "internalIpv6PrefixLength": 96
      "ipv6AccessType": INTERNAL,
    }],
    "disks": [{
      "autoDelete": "true",
      "boot": "true",
      "type": "PERSISTENT",
      "initializeParams": {
          "sourceImage": "projects/debian-cloud/global/images/v20150818"
      }
    }]
    }

    Ganti kode berikut:

    • PROJECT_ID: ID project untuk membuat VM.
    • ZONE: zona tempat VM dibuat.
    • VM_NAME: nama VM.
    • IPV6_ADDRESS: alamat IPv6 internal yang akan ditetapkan ke VM.

Jika Anda menghapus instance dengan alamat IP yang ditentukan, alamat tersebut akan kembali ke kumpulan alamat yang tidak dialokasikan. Jika memerlukan alamat IP internal agar tetap ada setelah instance aktif, Anda dapat mencadangkan alamat IP internal statis.

Menggunakan alamat IPv4 atau IPv6 internal statis untuk antarmuka jaringan sekunder

Saat membuat instance VM dengan beberapa antarmuka jaringan, Anda dapat menggunakan alamat IPv4 atau IPv6 internal statis yang dicadangkan untuk antarmuka jaringan utama dan sekunder.

Untuk menggunakan alamat IPv4 atau IPv6 internal statis untuk antarmuka jaringan sekunder, lihat Membuat instance VM dengan beberapa antarmuka jaringan.

Mengubah atau menetapkan alamat IPv6 internal ke VM yang ada

Anda dapat mengubah atau menetapkan alamat IPv6 internal ke instance VM yang ada.

Jika alamat IPv6 internal sudah ditetapkan untuk sebuah instance, Anda harus membatalkan penetapan alamat tersebut terlebih dahulu. Kemudian, tetapkan alamat baru ke instance menggunakan antarmuka jaringan instance.

Untuk mengubah atau menetapkan alamat IPv6 internal statis ke instance VM yang ada, selesaikan langkah-langkah berikut.

Konsol

  1. Cadangkan alamat IPv6 internal statis.
  2. Di konsol Google Cloud, buka halaman instance VM.

    Buka instance VM

  3. Klik nama instance yang alamat IPv6 internalnya ingin Anda ubah.
  4. Di halaman detail Instance, selesaikan langkah-langkah berikut:

    1. Klik Edit.
    2. Perluas Antarmuka jaringan.
    3. Dalam daftar Alamat IPv6 intern utama, pilih Dialokasikan secara otomatis (/96) atau alamat IPv6 internal statis yang dicadangkan.
    4. Klik Done.
  5. Klik Save.

gcloud

Gunakan perintah compute instances network-interfaces update.

gcloud compute instances network-interfaces update VM_NAME \
    --network-interface NIC \
    --ipv6-network-tier PREMIUM \
    --stack-type IPV4_IPV6 \
    --internal-ipv6-address INTERNAL_IPV6_ADDRESS \
    --zone ZONE

Ganti kode berikut:

  • VM_NAME: nama VM yang ingin Anda buat.
  • NIC: nama antarmuka jaringan yang akan diperbarui.
  • INTERNAL_IPV6_ADDRESS: alamat IPv6 internal /96 yang akan ditetapkan ke antarmuka, nama alamat IP, atau URI resource alamat.
  • ZONE: zona untuk VM.

REST

Gunakan metode instances.update. Perbarui properti networkInterfaces[].ipv6Address dengan alamat IPv6 internal yang ingin Anda tetapkan.

Contoh:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
  {
    ...
    "networkInterfaces": [{
      "accessConfigs": [{
        "type": "ONE_TO_ONE_NAT",
        "name": "External NAT",
      }],
      "stackType": "IPV4_IPV6"
      "ipv6Address": "IPV6_ADDRESS",
      "internalIpv6PrefixLength": 96
      "subnetwork": "regions/REGION/subnetworks/SUBNETWORK",
    }],
    "disks": [{
      "autoDelete": "true",
      "boot": "true",
      "type": "PERSISTENT",
      "initializeParams": {
          "sourceImage": "projects/debian-cloud/global/images/v20150818"
      }
    }]
  }
 

Ganti kode berikut:

  • PROJECT_ID: ID project tempat VM berada.
  • ZONE: zona tempat VM dibuat.
  • VM_NAME: nama VM.
  • IPV6_ADDRESS: alamat IPv6 internal yang akan ditetapkan ke VM.

    Jika Anda menentukan URI resource alamat IPv6 internal atau rentang alamat IPv6 sebagai nilai untuk IPV6_ADDRESS, Anda harus mengosongkan nilai internalIpv6PrefixLength.

Mengelola alamat IP internal statis

Prosedur berikut memungkinkan Anda mengelola alamat IP internal statis untuk VM:

Menentukan apakah alamat IPv4 atau IPv6 internal bersifat sementara atau statis

Alamat IP internal statis dan sementara berperilaku dan tampak sama dalam sebagian besar konteks. Namun, dengan alamat IP internal statis, Anda dapat menggunakan alamat IP yang sama untuk resource yang sama sekalipun Anda menghapus dan membuat ulang resource. Secara umum, alamat IP sementara akan dirilis jika Anda menghentikan atau menghapus resource.

Untuk menentukan apakah alamat bersifat statis atau sementara, lakukan hal berikut:

  1. Di Konsol Google Cloud, buka halaman IP addresses.

    Buka alamat IP

  2. Temukan alamat dalam daftar dan periksa kolom Jenis untuk mengetahui jenis alamat IP.

Membatalkan penetapan alamat IPv6 internal statis

Anda dapat membatalkan penetapan alamat IPv6 internal statis dari instance VM dengan memperbarui antarmuka jaringan instance atau dengan menghapus instance yang menjadi tujuan penetapan alamat.

Jika Anda membatalkan penetapan alamat IPv6 internal, sistem akan menghapusnya dari resource, tetapi tetap menyimpan alamat tersebut untuk project Anda. Anda nanti dapat menetapkan ulang alamat tersebut ke resource lain.

Untuk membatalkan penetapan alamat IPv6 internal statis dari instance VM, selesaikan langkah-langkah berikut.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik nama instance yang alamat IPv6 internalnya ingin Anda batalkan penetapannya.
  3. Di halaman detail Instance, selesaikan langkah-langkah berikut:

    1. Klik Edit.
    2. Perluas Antarmuka jaringan.
    3. Untuk Jenis stack IP, pilih IPv4 (single-stack).
    4. Klik Done.
  4. Klik Save.

gcloud

Gunakan perintah compute instances network-interfaces update dengan flag --stack-type yang ditetapkan ke IPV4_ONLY:

gcloud compute instances network-interfaces update VM_NAME \
    --network-interface NIC \
    --stack-type IPV4_ONLY \
    --zone ZONE

Ganti kode berikut:

  • VM_NAME: nama VM yang antarmuka jaringannya ingin Anda update.
  • NIC: nama antarmuka jaringan yang akan diperbarui.
  • ZONE: zona untuk VM.

Pastikan alamat IPv6 internal statis Anda kini tersedia dan ditandai sebagai RESERVED, bukan IN_USE:

gcloud compute addresses list \
    --filter="region=REGION AND name=NAME"

REST

Update jenis stack instance antarmuka jaringan tempat alamat IPv6 internal terpasang:

  1. Buat permintaan PATCH ke metode instances.updateNetworkInterface.
  2. Dalam isi permintaan, perbarui nilai kolom stackType menjadi IPV4_ONLY.

    Contoh:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateNetworkInterface
    {
      "networkInterfaces": [{
        ...
        "stackType" : "IPV4_ONLY"
        ...
        }]
    }
    

    Ganti kode berikut:

    • PROJECT_ID: ID project tempat VM berada.
    • ZONE: zona tempat VM dibuat.
    • VM_NAME: nama VM.

Melepaskan alamat IP internal statis

Jika tidak lagi memerlukan alamat IPv4 atau IPv6 eksternal statis, Anda dapat melepas alamat IP dengan menghapus resource alamat IP. Menghapus VM tidak secara otomatis merilis alamat IP eksternal statis. Anda harus merilis alamat IP eksternal statis secara manual jika tidak lagi memerlukannya.

Untuk merilis alamat IP internal statis, lihat Merilis alamat IPv4 atau IPv6 internal statis dalam dokumentasi VPC.

Langkah selanjutnya