Membuat VM dengan beberapa antarmuka jaringan

Secara default, setiap instance mesin virtual (VM) di jaringan Virtual Private Cloud (VPC) memiliki satu antarmuka jaringan. Namun, Anda dapat mengonfigurasi instance dengan beberapa antarmuka jaringan. Saat menggunakan beberapa antarmuka jaringan dari instance, setiap antarmuka harus dipasangkan ke subnet yang ada di jaringan VPC yang berbeda. Anda tidak dapat memasang beberapa antarmuka jaringan ke subnet yang sama atau ke subnet yang berada di jaringan VPC yang sama.

Anda dapat mengonfigurasi antarmuka VM dengan alamat IPv4 saja (single-stack) atau alamat IPv4 dan IPv6 (dual-stack).

Jika Anda tidak memerlukan beberapa antarmuka jaringan, ikuti prosedur guna Membuat dan memulai instance untuk membuat instance dengan konfigurasi jaringan default.

Untuk mengetahui informasi selengkapnya tentang beberapa antarmuka jaringan dan cara kerjanya, lihat Beberapa antarmuka jaringan.

Spesifikasi

  • Anda hanya dapat mengonfigurasi antarmuka jaringan saat membuat instance.
  • Jika Anda membuat instance dengan beberapa antarmuka jaringan, setiap antarmuka harus terhubung ke jaringan VPC yang berbeda. Jaringan dapat berupa jaringan VPC mandiri atau jaringan VPC Bersama.
  • Antarmuka jaringan harus terhubung ke subnet yang rentang alamat IP-nya tidak tumpang tindih dengan rentang alamat IP antarmuka lain pada instance yang sama.
  • Jika Anda ingin membuat VM yang terpasang ke subnet di beberapa jaringan VPC, semua jaringan dan subnet harus ada sebelum Anda membuat instance. Untuk informasi lebih lanjut tentang cara membuat jaringan dan subnet, baca Membuat dan mengelola jaringan VPC.
  • Anda tidak dapat menghapus antarmuka jaringan tanpa menghapus instance tempatnya dipasang.
  • Setiap instance harus memiliki minimal satu dan maksimal delapan antarmuka jaringan, bergantung pada jenis mesin instance:

    • nic0 diperlukan dan harus dikonfigurasi pada saat pembuatan instance.
    • nic1 ke nic7 bersifat opsional, tetapi juga harus dikonfigurasi saat pembuatan instance.

    Untuk mengetahui informasi selengkapnya, lihat Jumlah maksimum antarmuka.

  • Secara opsional, setiap antarmuka dapat memiliki alamat IPv4 eksternal.

  • Jika Anda menghubungkan VM ke subnet yang memiliki rentang subnet IPv6 internal atau eksternal, Anda dapat secara opsional mengonfigurasi alamat IPv6 internal atau eksternal.

  • Server DHCP Google Cloud mengirimkan rute default (RFC 3442, "classless static route") hanya ke antarmuka jaringan default, nic0. Jika rute default diperlukan di antarmuka jaringan lain, Anda harus mengonfigurasi perutean kebijakan pada instance.

  • Semua antarmuka jaringan VM harus terhubung ke subnet di jaringan yang ada dalam project yang sama dengan VM, atau ke jaringan VPC Bersama yang digunakan bersama project tersebut.

Batasan

  • Anda tidak dapat menambahkan atau menghapus antarmuka jaringan dari VM yang ada.

  • Penerusan IP diaktifkan di level VM dan tidak dapat diterapkan ke antarmuka individual.

Izin, IAM, dan instance dengan beberapa antarmuka jaringan

Untuk membuat instance dengan beberapa antarmuka jaringan, Anda harus memiliki salah satu peran berikut:

Membuat serta menghapus instance dan template instance dengan beberapa antarmuka dalam project yang tidak menggunakan lingkungan VPC Bersama: Pengguna dengan peran Pemilik, Editor, atau Compute Instance Admin (v1) di level project dapat membuat instance dengan beberapa antarmuka yang terkait ke jaringan dan subnet VPC yang merupakan bagian dari project yang sama.

Membuat dan menghapus instance serta template instance dengan beberapa antarmuka di lingkungan VPC Bersama: Pengguna dengan peran Pemilik, Editor, atau Compute Instance Admin (v1) pada project dapat membuat instance dengan beberapa antarmuka. Jika salah satu antarmuka dipasangkan ke subnet dalam project host VPC Bersama, Anda juga harus memiliki Peran Compute Network User (roles/compute.networkUser ) pada level project host VPC Bersama atau pada level subnet VPC Bersama.

Untuk mempelajari izin lebih lanjut, baca dokumentasi IAM Compute Engine.

Menggunakan beberapa antarmuka jaringan dengan jenis jaringan VPC yang berbeda

  • Beberapa antarmuka jaringan tidak didukung dengan jaringan lama.
  • Saat mengonfigurasi beberapa antarmuka jaringan, pasangkan setiap antarmuka ke jaringan VPC mode otomatis atau jaringan VPC mode kustom.

Alokasi alamat IP antarmuka jaringan

  • Anda harus mengonfigurasi setiap antarmuka jaringan dengan alamat IP internal utama yang dialokasikan dari rentang alamat IP utama subnet.
    • Alamat internal utama yang dialokasikan ke setiap antarmuka dalam satu instance harus berbeda.
  • Anda dapat memilih untuk mengonfigurasi setiap antarmuka virtual (NIC) dengan alamat IP eksternal yang unik. Alamat eksternal dapat bersifat sementara atau dicadangkan.

Jumlah maksimum antarmuka jaringan

Jumlah antarmuka jaringan virtual disesuaikan dengan jumlah vCPU dengan minimal 2 dan maksimal 8.

Gunakan tabel berikut untuk menentukan jumlah antarmuka jaringan yang dapat dipasang ke instance:

Jumlah vCPU Jumlah vNIC
2 atau kurang 2
4 Maksimum 4
6 Maksimum 6
8 atau lebih Maksimum 8

Sebelum memulai

Membuat instance VM dengan beberapa antarmuka jaringan

Untuk mengetahui petunjuk umum mengenai pembuatan instance, baca bagian Membuat dan memulai instance VM.

Anda dapat menambahkan beberapa antarmuka jaringan saat membuat instance:

  • Di Konsol Google Cloud, Anda menambahkan antarmuka jaringan pada halaman Create an Instance, di bagian Networking > Network interface.
  • Di gcloud CLI, gunakan perintah instances create. Sertakan flag --network-interface untuk setiap antarmuka, diikuti dengan kunci jaringan yang sesuai, seperti ([network | subnet], private-network-ip, address, external-ipv6-address).

Antarmuka pertama selalu dibuat sebagai nic0, dan selalu menjadi antarmuka default. Hal ini penting untuk beberapa aspek jaringan Google Cloud lainnya. Misalnya, load balancer Google Cloud (kecuali untuk Load Balancer Jaringan passthrough) hanya mendistribusikan traffic ke nic0.

Konsol

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

    Buka Buat instance

  2. Di kolom Name, masukkan nama untuk instance.

  3. Di kolom Region, pilih region.

  4. Di kolom Zone, pilih zona.

  5. Di bagian Advanced options, luaskan Networking, lalu lakukan hal berikut:

    1. Di bagian Network interfaces, luaskan antarmuka jaringan untuk mengeditnya.

    2. Untuk Network dan Subnetwork, pilih jaringan dan subnetwork yang ingin digunakan.

    Jika Anda ingin mengonfigurasi alamat IPv6 pada antarmuka, pilih subnet yang memiliki rentang alamat IPv6 yang telah dikonfigurasi. Jenis akses subnet IPv6 menentukan apakah VM akan menerima alamat IPv6 internal atau alamat IPv6 eksternal.

    1. Pilih IP stack type: IPv4 (single-stack) atau IPv4 and IPv6 (dual-stack)

    2. Untuk Primary internal IPv4, pilih salah satu opsi berikut:

      • Ephemeral untuk menetapkan alamat IPv4 efemeral baru
      • Alamat IPv4 internal statis yang dicadangkan dari daftar
      • Reserve static internal IPv4 address untuk mencadangkan dan menetapkan alamat IPv4 internal statis yang baru
    3. Untuk Primary internal IPv6 address, pilih salah satu opsi berikut:

      • Auto-allocated untuk menetapkan alamat IPv6 internal statis yang baru secara otomatis
      • Alamat IPv6 internal statis yang dicadangkan dari daftar
      • Reserve static internal IPv6 address untuk mencadangkan dan menetapkan alamat IPv6 internal statis yang baru
    4. Untuk External IPv4 address, pilih salah satu opsi berikut:

      • Ephemeral untuk menetapkan alamat IPv4 efemeral baru
      • None untuk tidak menetapkan alamat IPv4 eksternal
      • Alamat IPv4 yang dicadangkan dari daftar
      • Reserve static external IP address untuk mencadangkan dan menetapkan alamat IPv4 eksternal statis yang baru
    5. Untuk External IPv6 address, pilih salah satu opsi berikut:

      • Auto-Allocate untuk menetapkan alamat IPv6 eksternal statis yang baru secara otomatis
      • Alamat IPv6 eksternal statis yang dicadangkan dari daftar
      • Reserve static external IPv6 address untuk mencadangkan dan menetapkan alamat IPv6 eksternal statis yang baru
    6. Untuk menyelesaikan modifikasi antarmuka jaringan, klik Done.

  6. Untuk menambahkan antarmuka lain, klik Add network interface.

  7. Lanjutkan dengan proses pembuatan VM.

  8. Klik Create.

gcloud

Untuk membuat antarmuka jaringan pada instance baru, gunakan perintah instances create.

Sertakan flag --network-interface untuk setiap antarmuka, diikuti dengan kunci jaringan yang sesuai, seperti network, subnet, private-network-ip, address, dan external-ipv6-address. Untuk melihat contoh cara membuat VM dengan beberapa antarmuka, baca Contoh konfigurasi.

Cuplikan ini hanya mengilustrasikan flag --network-interface, salah satu dari banyaknya kemungkinan parameter yang dapat Anda tentukan saat membuat instance.

Untuk mengetahui jenis mesin yang mendukung jumlah antarmuka jaringan yang Anda butuhkan, lihat tabel Jumlah maksimum antarmuka jaringan.

gcloud compute instances create INSTANCE_NAME \
    --zone ZONE \
    --network-interface \
        network=NETWORK,subnet=SUBNET, \
        stack-type=STACK_TYPE, \
        address=EXTERNAL_IPV4_ADDRESS | no-address, \
        private-network-ip=INTERNAL_IPV4_ADDRESS \
        internal-ipv6-address=INTERNAL_IPV6_ADDRESS \
    ...
    --network-interface \
        network=NETWORK,subnet=SUBNET, \
        stack-type=STACK_TYPE, \
        external-ipv6-address=EXTERNAL_IPV6_ADDRESS, \
        external-ipv6-prefix-length=96 \
        ipv6-network-tier=PREMIUM \
    ...

Ganti kode berikut:

  • INSTANCE_NAME: nama instance VM yang akan dibuat.
  • ZONE: zona tempat instance dibuat.
  • NETWORK: jaringan tempat antarmuka dipasang.
  • SUBNET: subnet tempat antarmuka dipasang.
  • STACK_TYPE: jenis tumpukan untuk antarmuka.

    Nilai defaultnya adalah IPV4_ONLY. Tentukan IPV4_IPV6 untuk mengonfigurasi antarmuka dual-stack.

  • EXTERNAL_IPV4_ADDRESS: menetapkan alamat IPv4 eksternal bernama ke antarmuka.

    Anda sebelumnya harus sudah mencadangkan alamat IPv4 eksternal. Tentukan "no-address", bukan address=EXTERNAL_IPV4_ADDRESS, jika Anda tidak ingin antarmuka memiliki alamat IP eksternal. Tentukan address='' jika Anda ingin antarmuka menerima alamat IP eksternal sementara.

  • INTERNAL_IPV4_ADDRESS: alamat IPv4 internal yang Anda inginkan untuk dimiliki antarmuka di subnet target. Abaikan jika Anda hanya ingin menetapkan alamat yang valid.

  • INTERNAL_IPV6_ADDRESS: alamat IPv6 internal yang Anda inginkan untuk dimiliki antarmuka di subnet target. Jika Anda menghilangkan flag ini, alamat IPv6 internal tidak akan ditetapkan.

  • EXTERNAL_IPV6_ADDRESS: menetapkan alamat IPv4 eksternal bernama ke antarmuka.

    Anda harus sudah memesan alamat IPv6 eksternal sebelumnya. Tentukan "no-address", bukan external-ipv6-address=EXTERNAL_IPV6_ADDRESS jika Anda tidak ingin antarmuka memiliki alamat IPv6 eksternal. Tentukan external-ipv6-address='' jika Anda ingin antarmuka menerima alamat IPv6 eksternal sementara.

API

Gunakan metode instances.insert untuk membuat instance VM dengan beberapa antarmuka jaringan.

  • Untuk membuat instance VM dengan alamat IPv4 internal, lakukan hal berikut:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    {
    ....
    
    "networkInterfaces": [
      {
        "networkIP": "IPV4_ADDRESS",
        "subnetwork": "regions/REGION/subnetworks/SUBNETWORK"
      },
        for each interface, specify a network...
    ],
    other instance settings...
    }
    

    Ganti kode berikut:

    • SUBNET: subnet tempat antarmuka jaringan berada.
    • REGION: region yang berisi instance.
    • PROJECT_ID: ID project yang berisi instance.
    • ZONE: zona yang berisi instance.
    • IPV4_ADDRESS: alamat IPv4 internal yang ingin Anda tetapkan ke antarmuka jaringan.
  • Untuk membuat instance VM dengan alamat IPv6 internal, lakukan hal berikut:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    {
    ....
    
    "networkInterfaces": [
      {
        "subnetwork": "regions/REGION/subnetworks/SUBNETWORK"
        "ipv6Address": "IPV6_ADDRESS",
        "internalIpv6PrefixLength": 96,
        "stackType": IPV4_IPV6,
        "ipv6AccessType": INTERNAL
      },
        for each interface, specify a network...
    ],
    other instance settings...
    }
    

    Ganti kode berikut:

    • SUBNET: subnet tempat antarmuka jaringan berada.
    • REGION: region yang berisi instance.
    • PROJECT_ID: ID project yang berisi instance.
    • ZONE: zona yang berisi instance.
    • IPV6_ADDRESS: alamat IPv6 internal yang ingin Anda tetapkan ke antarmuka jaringan.

Terraform

Anda dapat menggunakan resource Terraform untuk membuat instance VM dengan beberapa antarmuka jaringan.

Argumen Terraform memiliki nilai contoh yang dapat Anda ubah.

resource "google_compute_instance" "default" {
  project      = var.project_id # Replace with your project ID in quotes
  zone         = "us-central1-b"
  name         = "backend-instance"
  machine_type = "e2-medium"
  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-9"
    }
  }
  network_interface {
    subnetwork = var.subnet_1 # Replace with self link to a subnetwork in quotes
    network_ip = "10.0.0.14"
  }
  network_interface {
    subnetwork = var.subnet_2 # Replace with self link to a subnetwork in quotes
    network_ip = "10.10.20.14"
  }
}

Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.

Contoh konfigurasi

Bagian berikut menunjukkan cara membuat VM dengan beberapa antarmuka.

Mengonfigurasi beberapa antarmuka jaringan dengan alamat IPv4

Contoh perintah berikut membuat instance dengan tiga antarmuka jaringan.

 gcloud compute instances create vm1 --machine-type=n1-standard-4 \
    --network-interface '' \
    --network-interface network=net1,subnet=subnet-a,private-network-ip=10.10.10.2,address=EXTERNAL_IPV4_ADDRESS \
    --network-interface network=net2,subnet=subnet-b,private-network-ip=10.10.20.2,no-address

Antarmuka dibuat sebagai berikut:

  • nic0 dibuat dengan setelan default. Antarmuka ini terpasang ke subnet di jaringan VPC default, dengan alamat IP internal yang dialokasikan secara otomatis dan alamat IP eksternal sementara.

  • nic1 ditambahkan ke subnet subnet-a di jaringan net1, dengan alamat IPv4 internal 10.10.10.2 dan alamat IPv4 eksternal statis, EXTERNAL_IPV4_ADDRESS.

  • nic2 dilampirkan ke subnet subnet-b di jaringan net2, dengan alamat IPv4 internal 10.10.20.2 dan tanpa alamat IP eksternal.

Untuk deskripsi lengkap tentang perintah gcloud compute instances create dan flag --network-interface, baca dokumentasi untuk perintah.

Anda dapat menggunakan alamat IP dari antarmuka jaringan yang telah ditambahkan untuk menyiapkan penerusan DNS. Untuk mempelajari lebih lanjut cara mengonfigurasi zona penerusan Cloud DNS, lihat Zona penerusan.

Mengonfigurasi beberapa antarmuka jaringan dengan alamat IPv4 dan IPv6

Contoh perintah berikut membuat instance dual-stack dengan dua antarmuka jaringan.

gcloud compute instances create vm1 \
--network-interface network=dual-int,subnet=int-subnet,stack-type=IPV4_IPV6 \
--network-interface network=dual-ext,subnet=ext-subnet,stack-type=IPV4_IPV6,ipv6-network-tier=PREMIUM \
--machine-type=n1-standard-4 --zone=us-west2-a

Antarmuka dibuat sebagai berikut:

  • nic0 dilampirkan ke subnet int-subnet di jaringan dual-int, dengan alamat IPv4 internal sementara sdan alamat IPv6 internal sementara.

  • nic1 dilampirkan ke subnet ext-subnet di jaringan dual-ext, dengan alamat IPv4 internal sementara dan alamat IPv6 eksternal sementara.

Mengonfigurasi beberapa antarmuka jaringan untuk grup instance

Anda dapat menggunakan instance dengan beberapa antarmuka jaringan dalam grup instance yang tidak dikelola dan grup instance terkelola.

Untuk grup instance tidak terkelola, buat setiap instance secara terpisah, untuk memastikan bahwa antarmuka jaringan nic0 untuk setiap VM terpasang ke subnet yang sama. Kemudian, tambahkan instance VM ke grup instance tidak terkelola.

Guna mengonfigurasi beberapa antarmuka jaringan untuk grup instance terkelola, Anda harus menentukan konfigurasi jaringan untuk setiap antarmuka dalam template instance, dengan menetapkan flag --network-interface satu kali untuk setiap antarmuka. Contoh berikut membuat template instance dengan tiga antarmuka jaringan:

gcloud compute instance-templates create template-1 \
    --network-interface subnet=net0-subnet-a \
    --network-interface subnet=net1-subnet-b,no-address \
    --network-interface subnet=net2-subnet-c,no-address \
    --region us-central1

Karena nama subnet di setiap region project harus unik, penetapan subnet berdasarkan nama akan mengaitkan setiap antarmuka dengan jaringan VPC secara implisit. Setiap antarmuka harus menggunakan subnet yang ada di jaringan VPC unik:

  • nic0 menggunakan subnet net0-subnet-a
  • nic1 menggunakan subnet net1-subnet-b
  • nic2 menggunakan subnet net2-subnet-c

Opsi no-address dalam flag --network-interface menunjukkan bahwa antarmuka dikonfigurasi tanpa alamat IP eksternal. Alamat IP internal berasal dari subnet yang digunakan oleh antarmuka. Untuk mengetahui informasi selengkapnya tentang flag dan sintaksis, lihat flag --network-interface untuk perintah instance-templates create.

Mengonfigurasi perutean kebijakan

Untuk gambar yang didukung Google, saat Anda membutuhkan antarmuka jaringan sekunder (antarmuka selain nic0) untuk berkomunikasi dengan alamat IP apa pun yang tidak bersifat lokal ke rentang subnet primer subnet dari antarmuka sekunder subnet yang terkait, Anda perlu mengonfigurasi perutean kebijakan untuk memastikan bahwa paket yang keluar akan keluar melalui antarmuka yang benar. Dalam kasus semacam ini, Anda harus mengonfigurasi tabel perutean terpisah untuk setiap antarmuka jaringan menggunakan perutean kebijakan.

Pemilihan rute kebijakan berbasis sumber tidak didukung oleh sistem operasi Windows.

Temukan gateway default untuk antarmuka

Anda dapat menemukan gateway default untuk antarmuka VM dengan membuat kueri server metadata.

  • Guna menemukan gateway default untuk alamat IPv4 antarmuka, buat permintaan berikut dari VM:

    curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway -H "Metadata-Flavor: Google"
    

    Ganti INTERFACE_NUMBER dengan nomor antarmuka. Misalnya, guna menemukan gateway default untuk nic1, gunakan 1.

  • Guna menemukan gateway default untuk alamat IPv6 antarmuka, buat permintaan berikut dari VM:

    curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway-ipv6 -H "Metadata-Flavor: Google"
    

    Ganti INTERFACE_NUMBER dengan nomor antarmuka. Misalnya, guna menemukan gateway default untuk nic1, gunakan 1.

Mengonfigurasi pemilihan rute berbasis kebijakan pada VM Linux

Agar tidak kehilangan konektivitas ke VM saat Anda mengubah rute default, gunakan konsol serial.

  • Konfigurasikan perutean kebijakan untuk setiap antarmuka sekunder dengan ifconfig. Jangan mengonfigurasi antarmuka utama (nic0), karena rutenya telah dikonfigurasi.

    sudo ifconfig NIC IP_ADDRESS netmask NETMASK broadcast IP_ADDRESS mtu 1430
    echo "1 rt1" | sudo tee -a /etc/iproute2/rt_tables
    sudo ip route add GATEWAY src IP_ADDRESS dev NIC table rt1
    sudo ip route add default via GATEWAY dev NIC table rt1
    sudo ip rule add from IP_ADDRESS/PREFIX_LENGTH table rt1
    sudo ip rule add to IP_ADDRESS/PREFIX_LENGTH  table rt1
    

    Ganti kode berikut:

    • NIC: antarmuka yang ingin Anda tambahi rute. Contoh, eth1.
    • IP_ADDRESS: alamat IP yang dikonfigurasi di antarmuka.
    • NETMASK: netmask antarmuka. Contoh, 255.255.255.255.
    • GATEWAY: alamat IP gateway default antarmuka.
    • PREFIX_LENGTH: panjang awalan untuk alamat IP yang dikonfigurasi.

Mengonfigurasi pemilihan rute berbasis kebijakan di Ubuntu versi 18.04 atau yang lebih baru

Dengan peralihan dari ifupdown ke Netplan sebagai utilitas konfigurasi jaringan default untuk Ubuntu 18.04 LTS atau yang lebih baru, paket ifconfig belum diinstal sebelumnya. Selain itu, perubahan yang Anda buat pada file konfigurasi jaringan Netplan tidak akan dipertahankan selama reboot VM Compute Engine.

  1. Buat skrip startup yang menetapkan tabel perutean untuk setiap antarmuka jaringan saat memulai VM. Pelajari lebih lanjut cara membuat skrip startup.

    Skrip startup tidak dapat digunakan jika Anda memasang fitur berbagi file di VM karena skrip tersebut hanya berjalan setelah partisi dipasang. Hal ini akan menyebabkan fitur berbagi file Anda selalu terpasang di antarmuka default sebelum pembuatan tabel perutean oleh skrip startup Anda.

  2. Untuk memasang berbagi file di VM melalui jaringan sekunder, yaitu antarmuka selain nic0, Anda harus mengonfigurasi kebijakan perutean VM klien untuk memastikan bahwa fitur berbagi file dipasang melalui antarmuka jaringan. Untuk melakukannya, ubah file berikut:

    • Di /etc/default/instance_configs.cfg, tetapkan flag setup untuk NetworkInterfaces ke false:

      [NetworkInterfaces]
      dhclient_script = /sbin/google-dhclient-script
      dhcp_command =
      ip_forwarding = true
          setup = false
      

    • Di /etc/network/interfaces, tambahkan baris berikut ke antarmuka yang diinginkan:

      auto eth1
      iface eth1 inet dhcp
          up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
      

    Ganti kode berikut:

    • filestore-reserved-address-range adalah rentang alamat IP yang dicadangkan untuk digunakan oleh instance Compute Engine.
    • default-gateway-of-nic-to-filestore adalah alamat IP gateway default dari NIC yang terhubung ke jaringan VPC yang digunakan bersama dengan instance Compute Engine.

    Untuk mengetahui informasi selengkapnya tentang memasang fitur berbagi file di instance VM, lihat Memasang fitur berbagi file di Compute Engine.

Pemecahan masalah

Saya tidak bisa membuat VM dengan beberapa antarmuka

Anda mungkin melihat salah satu pesan error berikut:

  • Invalid value for field 'resource': ''. Too many network interfaces. The maximum number of network interfaces allowed for this machine type is.

    Jika mendapatkan pesan error ini, berarti Anda mencoba membuat antarmuka melebihi jumlah maksimum yang didukung oleh jenis mesin instance Anda. Lihat tabel jumlah maksimum antarmuka.

  • Networks must be distinct for NICs attached to a VM.

    Jika mendapatkan pesan ini, berarti Anda mencoba membuat lebih dari satu antarmuka dalam jaringan yang sama. Setiap antarmuka jaringan harus terpasang ke jaringan VPC yang berbeda.

  • Subnetwork CIDR ranges must be non-overlapping for NICs attached to a VM.

    Jika Anda mendapatkan pesan ini, rentang CIDR yang terkait dengan antarmuka VM Anda saling tumpang-tindih. Rentang CIDR ini mencakup semua rentang subnet utama yang terkait dengan antarmuka VM serta rentang sekunder yang digunakan untuk rentang IP alias. Setiap antarmuka terpasang ke subnet, masing-masing dalam jaringan VPC berbeda, yang tidak boleh tumpang tindih dengan subnet antarmuka lain. Misalnya, jika Anda mencoba membuat instance di region us-west1, Anda dapat memeriksa rentang CIDR utama subnet menggunakan perintah berikut atau Konsol Google Cloud.

    gcloud compute networks subnets list --regions us-west1
    NAME                REGION    NETWORK          RANGE
    default             us-west1  default          10.138.0.0/20
    overlapping-subnet  us-west1  test-network     10.138.8.0/24
    

    Untuk memeriksa rentang CIDR subnet sekunder, gunakan perintah berikut atau Konsol Google Cloud .

    gcloud compute networks subnets describe overlapping-subnet --region us-west1
    
    ...
    ipCidrRange: 10.128.8.0/24
    ...
    secondaryIpRanges:
    - ipCidrRange: 10.138.8.0/24
      rangeName: conflicting-range
    
  • Multiple network interfaces are not supported on legacy networks.

    Jika mendapatkan pesan ini, berarti Anda mencoba membuat instance di jaringan lama. Instance dengan beberapa antarmuka tidak didukung dengan jaringan lama. Anda dapat memeriksa apakah suatu jaringan adalah jaringan lama menggunakan perintah berikut atau Konsol Google Cloud. Kolom Mode menunjukkan jenis jaringan.

    gcloud compute networks list
    NAME             MODE    IPV4_RANGE     GATEWAY_IPV4
    default          auto
    legacy-network   legacy  10.240.0.0/16  10.240.0.1
    test-network     custom
    

  • Required 'compute.instances.create' permission for 'projects/PROJECT_ID/zones/ZONE/instances/test-inst'

    Jika Anda mendapatkan pesan ini, artinya akun yang digunakan untuk login tidak memiliki izin IAM yang diperlukan untuk membuat instance. Lihat Izin IAM untuk mengetahui informasi mendetail tentang peran yang diperlukan untuk membuat instance. Anda dapat memeriksa apakah kebijakan IAM yang terkait dengan project memberikan salah satu peran berikut: OWNER, EDITOR, atau compute.instanceAdmin.v1. Untuk membuat instance di VPC Bersama, Anda juga memerlukan peran compute.networkUser. Pada contoh di bawah ini, akun email2@gmail.com tidak memiliki izin IAM yang memadai untuk membuat instance. Untuk petunjuk yang lebih mendetail, lihat panduan IAM tentang Memberikan, Mengubah, dan Mencabut Akses ke Resource.

    gcloud projects get-iam-policy PROJECT_ID
    bindings:
    - members:
      - user:email1@gmail.com
        role: roles/owner
    - members:
      - serviceAccount:our-project-123@appspot.gserviceaccount.com
      - serviceAccount:123456789012-compute@developer.gserviceaccount.com
        role: roles/editor
    - members:
      - user:email2@gmail.com
        role: roles/viewer
    etag: BwUjMhXbSPU=
    version: 1
    

    Anda dapat meminta owner atau editor project untuk memberi Anda peran OWNER, EDITOR, atau compute.instanceAdmin.v1. Anda juga akan memerlukan peran compute.networkUser jika ingin mengaitkan antarmuka apa pun dengan subnet yang dimiliki oleh VPC Bersama.

    gcloud projects set-iam_policy --member user:email2@gmail.com --role roles/editor
    

Saya tidak dapat tersambung ke alamat IP internal antarmuka sekunder

  • Periksa aturan firewall untuk melihat bahwa aturan tersebut mengizinkan konektivitas ke antarmuka sekunder VM. Anda dapat memeriksanya dengan melihat aturan firewall untuk jaringan yang dipasang ke antarmuka sekunder, dengan membuka Konsol Google Cloud dan mengklik jaringan VPC yang sesuai atau menggunakan perintah gcloud berikut.

    gcloud compute firewall-rules list --filter='network:NETWORK_NAME'
    
  • Periksa apakah Anda mencoba terhubung ke antarmuka sekunder dari alamat internet atau dari luar jaringan antarmuka sekunder. Anda hanya dapat terhubung ke IP internal antarmuka dari dalam jaringannya. Jika perlu menjangkau antarmuka tersebut dari luar jaringan, Anda dapat menetapkan alamat IP eksternal ke antarmuka sekunder.

  • Periksa apakah Anda mencoba terhubung ke IP internal antarmuka sekunder dari luar subnet tempat antarmuka sekunder dipasang, baik dari subnet lain dalam jaringan yang sama atau dari jaringan yang di-peer. Multiple Network Interfaces menjelaskan interaksi antara Peering VPC dan instance VM dengan beberapa antarmuka. Agar dapat menjangkau antarmuka sekunder dari luar subnet antarmuka, Anda mungkin harus mengonfigurasi rute pada VM. Lihat Perilaku DHCP dengan beberapa antarmuka jaringan untuk mengetahui detail tentang cara program DHCP melakukan perutean secara default di VM.

  • Jika Anda mencoba mengakses alamat IPv6, lihat juga Saya tidak dapat terhubung ke alamat IPv6 antarmuka sekunder.

Saya tidak dapat tersambung ke antarmuka sekunder menggunakan alamat IP eksternal

Server DHCP memprogram rute default hanya pada antarmuka jaringan utama VM. Jika Anda ingin terhubung ke antarmuka sekunder menggunakan IP eksternal, terdapat dua opsi. Jika hanya perlu terhubung di luar jaringan pada antarmuka jaringan sekunder, Anda dapat menetapkan rute default pada antarmuka jaringan tersebut. Jika tidak, Anda dapat menggunakan Mengonfigurasi Perutean Kebijakan untuk mengonfigurasi tabel perutean terpisah menggunakan perutean kebijakan berbasis sumber di VM Anda.

Jika Anda mencoba mengakses alamat IPv6, lihat juga Saya tidak dapat terhubung ke alamat IPv6 antarmuka sekunder.

Saya tidak dapat tersambung ke alamat IPv6 antarmuka sekunder

Jika Anda mencoba mengakses alamat IPv6, pastikan VM memiliki google-guest-agent versi 20220603.00 atau yang lebih baru. Untuk mengetahui informasi selengkapnya tentang mengelola versi google-guest-agent, lihat Lingkungan tamu.

Jika Anda memiliki google-guest-agent versi sebelumnya, antarmuka sekunder tidak menerima rute subnet IPv6. Sebaiknya perbarui agen tamu agar rute dikonfigurasi dengan benar.

Namun, sebagai solusinya, Anda dapat membuat skrip startup guna melakukan perubahan konfigurasi berikut bagi setiap antarmuka sekunder.

sudo sysctl -w net.ipv6.conf.INTERFACE_NAME.accept_ra_rt_info_max_plen=128

Ganti INTERFACE_NAME dengan nama antarmuka, misalnya eth1 atau ens5.

Saya mengalami masalah konektivitas saat menggunakan netmask selain /32

Secara default, server metadata instance hanya merespons permintaan ARP untuk gateway default.

Untuk mengonfigurasi antarmuka dengan netmask selain /32, Anda harus membuat gambar menggunakan flag --guest-os-features MULTI_IP_SUBNET dan menggunakannya untuk membuat instance. Misalnya, jika menggunakan image berbasis debian-9, Anda dapat membuat image menggunakan perintah berikut:

gcloud compute images create debian-9-multi-ip-subnet \
     --source-disk debian-9-disk \
     --source-disk-zone us-west1-a \
     --guest-os-features MULTI_IP_SUBNET

Untuk melihat fitur tamu yang dikonfigurasi pada image, jalankan perintah gcloud compute images describe pada image tamu.

gcloud compute images describe debian-9-multi-ip-subnet

Untuk mengetahui informasi selengkapnya tentang cara membuat image kustom, lihat Membuat, Menghapus, dan Menghentikan Penggunaan Image Kustom.

Saya tidak dapat me-resolve nama host internal VM dengan beberapa antarmuka jaringan

Saat kueri DNS dijalankan dengan hostname internal, kueri akan beralih ke antarmuka jaringan utama (nic0) dari instance.

Jika nic0 terpasang ke jaringan VPC yang berbeda dengan jaringan VPC dari instance yang mengeluarkan kueri DNS, kueri DNS akan gagal. DNS internal hanya di-resolve dalam jaringan VPC yang ditentukan. Untuk mengetahui informasi selengkapnya, lihat Resolusi DNS dengan beberapa antarmuka jaringan.

Memecahkan masalah menggunakan konsol serial

Sebaiknya aktifkan konsol serial di VM untuk men-debug masalah terkait konfigurasi. Anda dapat mengaktifkan konsol serial untuk proses debug interaktif dengan mengikuti langkah-langkah di Memecahkan masalah menggunakan konsol serial.