Layanan alamat IP publik

Dengan layanan jaringan alamat IP publik (eksternal), Anda dapat terhubung dari internet ke virtual machine (VM) workload, perangkat pengelolaan, atau load balancer yang berjalan di cloud pribadi. Misalnya, jika menjalankan server web di VM workload, Anda dapat menyalurkan traffic web menggunakan alamat IP publik melalui internet. Secara default, layanan jaringan IP publik dinonaktifkan.

Mengalokasikan alamat IP publik ke resource juga memberikan manfaat berikut:

  • Pencegahan serangan {i>Distributed denial of service<i} (DDoS). Perlindungan ini diaktifkan secara otomatis untuk alamat IP publik.
  • Pemantauan traffic yang selalu aktif dan mitigasi real-time untuk serangan tingkat jaringan yang umum.
  • Perlindungan dan mitigasi serangan di seluruh skala jaringan global. Jaringan dapat digunakan untuk mendistribusikan dan memitigasi traffic serangan di seluruh region.

Perilaku

Alamat IP publik hanya dapat ditetapkan ke satu alamat IP pribadi, dan alamat IP publik dikhususkan untuk alamat IP pribadi tersebut sampai Anda membatalkan penetapannya. Resource yang terkait dengan alamat IP publik selalu menggunakan alamat IP publik untuk akses internet. Anda dapat mencadangkan hingga 100 alamat IP publik untuk jaringan VPC utama yang terhubung ke VMware Engine.

Secara default, traffic masuk di alamat IP publik ditolak, dan hanya akses internet keluar yang diizinkan. Untuk mengizinkan traffic masuk, buat aturan firewall untuk alamat IP publik ke port tertentu.

gcloud dan prasyarat API

Untuk menggunakan alat command line gcloud atau API guna mengelola resource VMware Engine, sebaiknya konfigurasikan alat seperti yang dijelaskan di bawah.

gcloud

  1. Setel ID project default Anda:

    gcloud config set project PROJECT_ID
    
  2. Menetapkan region dan/atau zona default:

    gcloud config set compute/region REGION
    gcloud config set compute/zone ZONE

Untuk mengetahui informasi selengkapnya tentang alat gcloud vmware, meninjau dokumen referensi Cloud SDK.

API

Contoh API dalam kumpulan dokumentasi ini menggunakan alat command line cURL untuk membuat kueri API. Token akses yang valid diperlukan sebagai bagian dari permintaan cURL. Ada banyak cara untuk mendapatkan token akses yang valid. Langkah berikut akan menggunakan alat gcloud untuk membuat token akses:

  1. Login ke Google Cloud

    gcloud auth login
    
  2. Buat token akses dan ekspor ke TOKEN

    export TOKEN=`gcloud auth print-access-token`
    
  3. Memverifikasi bahwa TOKEN telah disetel dengan benar

    echo $TOKEN
    
    Output:
    TOKEN
    

Sekarang, gunakan token otorisasi dalam permintaan Anda ke API. Contoh:

curl -X GET -H "Authorization: Bearer \"$TOKEN\""  -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations

Python

Contoh kode Python dalam dokumentasi ini menggunakan library VMware Engine untuk berkomunikasi dengan API. Agar dapat menggunakan pendekatan ini, library perlu diinstal dan Kredensial Default Aplikasi harus dikonfigurasi.

  1. Mendownload dan menginstal library Python

     pip install google-cloud-vmwareengine
    
  2. Konfigurasikan informasi ADC dengan menjalankan perintah tersebut di shell Anda

      gcloud auth application-default login
    

    atau gunakan file kunci Akun Layanan

      export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

Untuk mengetahui informasi selengkapnya tentang library ini, kunjungi halaman referensi atau lihat contoh kode di GitHub.

Mengaktifkan layanan jaringan IP publik dalam suatu region

Sebelum dapat mengalokasikan alamat IP publik ke VM workload, Anda harus mengaktifkan layanan jaringan IP publik di region:

Konsol

  1. Akses portal VMware Engine.
  2. Buka Jaringan > Setelan regional.
  3. Di baris yang sesuai dengan wilayah minat, pilih Edit. Jika wilayah tidak tercantum dalam tabel ringkasan, tambahkan wilayah dengan mengklik Tambahkan wilayah.
  4. Alihkan Public IP Service ke Enabled.
    • Untuk mengaktifkan layanan IP publik, Anda juga harus mengaktifkan layanan jaringan akses internet.
    • Anda dapat mengaktifkan layanan akses internet dan membiarkan layanan IP publik dinonaktifkan. Jika Anda melakukannya, VPN point-to-site dan alokasi IP publik tidak akan tersedia.
  5. Di kolom Edge Services CIDR, masukkan rentang alamat yang akan digunakan saat menangani gateway IP publik VMware Engine (rentang alamat /26).
  6. Klik Submit.

Status untuk layanan jaringan berubah menjadi Enabled saat operasi selesai, biasanya setelah beberapa menit.

gcloud

Dengan menggunakan alat gcloud, jalankan perintah berikut untuk membuat kebijakan jaringan:

gcloud vmware network-policies create NETWORK_POLICY_NAME \
    --vmware-engine-network NETWORK_NAME --edge-services-cidr IP_RANGE \
    --location REGION --external-ip-access --internet-access

Ganti kode berikut:

  • NETWORK_POLICY_NAME: nama untuk kebijakan jaringan ini
  • NETWORK_NAME: jaringan untuk permintaan ini, ini harus dalam format REGION-default
  • IP_RANGE: rentang CIDR yang akan digunakan untuk akses internet dan gateway akses IP eksternal, dalam notasi CIDR. Blok CIDR RFC 1918 dengan awalan "/26" wajib diisi
  • REGION: region jaringan

API

curl -X POST -H "Authorization: Bearer TOKEN"  -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/networkPolicies?networkPolicyId=NETWORK_POLICY_NAME -d '{
  "vmwareEngineNetwork":"projects/PROJECT_ID/locations/REGION/vmwareEngineNetworks/NETWORK_NAME",
  "edgeServiceCidr":IP_RANGE,
  "internetAccess: {
    "enabled": true
   },
   "externalIp": {
     "enabled": true
   }
 }

Ganti kode berikut:

  • NETWORK_POLICY_NAME: nama untuk kebijakan jaringan ini.
  • PROJECT_ID: project ID untuk permintaan ini
  • REGION: region jaringan
  • IP_RANGE: rentang CIDR yang akan digunakan untuk akses internet dan gateway akses IP eksternal, dalam notasi CIDR. Blok CIDR RFC 1918 dengan awalan "/26" wajib diisi.
  • NETWORK_NAME: jaringan tempat kebijakan jaringan ini berlaku, harus dalam format >REGION-default

Python

Buat kebijakan jaringan baru dengan external_ip dan internet_access yang disetel ke True dengan fungsi berikut:

from google.api_core import operation
from google.cloud import vmwareengine_v1

def create_network_policy(
    project_id: str,
    region: str,
    ip_range: str,
    internet_access: bool,
    external_ip: bool,
) -> operation.Operation:
    """
    Creates a new network policy in a given network.

    Args:
        project_id: name of the project you want to use.
        region: name of the region you want to use. I.e. "us-central1"
        ip_range: the CIDR range to use for internet access and external IP access gateways,
            in CIDR notation. An RFC 1918 CIDR block with a "/26" suffix is required.
        internet_access: should internet access be allowed.
        external_ip: should external IP addresses be assigned.

    Returns:
        An operation object representing the started operation. You can call its .result() method to wait for
        it to finish.

    Raises:
        ValueError if the provided ip_range doesn't end with /26.
    """
    if not ip_range.endswith("/26"):
        raise ValueError(
            "The ip_range needs to be an RFC 1918 CIDR block with a '/26' suffix"
        )

    network_policy = vmwareengine_v1.NetworkPolicy()
    network_policy.vmware_engine_network = f"projects/{project_id}/locations/{region}/vmwareEngineNetworks/{region}-default"
    network_policy.edge_services_cidr = ip_range
    network_policy.internet_access.enabled = internet_access
    network_policy.external_ip.enabled = external_ip

    request = vmwareengine_v1.CreateNetworkPolicyRequest()
    request.network_policy = network_policy
    request.parent = f"projects/{project_id}/locations/{region}"
    request.network_policy_id = f"{region}-default"

    client = vmwareengine_v1.VmwareEngineClient()
    return client.create_network_policy(request)

Mengalokasikan alamat IP publik

Untuk mengalokasikan alamat IP publik untuk VM workload, lakukan hal berikut:

  1. Akses portal Google Cloud VMware Engine
  2. Buka Jaringan > IP Publik.
  3. Klik Alokasikan.
  4. Di kolom Name, masukkan nama untuk mengidentifikasi entri alamat IP publik.
  5. Pilih Private cloud yang berisi VM workload.
  6. Pilih Location tempat Anda ingin menyajikan IP publik yang dialokasikan.
  7. Di kolom Attached local address, masukkan alamat IP lokal VM yang ingin Anda tetapkan alamat IP publiknya.
  8. Klik Kirim untuk memulai tugas pengalokasian alamat IP publik.

Anda dapat memeriksa status tugas di halaman Aktivitas > Tasks. Setelah alokasi selesai, entri baru akan muncul di halaman Public IPs dengan status Operational.