Menggunakan rute berbasis kebijakan
Rute berbasis kebijakan memungkinkan Anda memilih next hop berdasarkan lebih dari satu alamat IP tujuan paket. Halaman ini menjelaskan cara membuat, mencantumkan, menjelaskan, dan menghapus rute berbasis kebijakan.
Sebelum memulai
- Untuk menggunakan contoh command line dalam panduan ini, instal atau update Google Cloud CLI ke versi terbaru.
- Anda harus mengaktifkan Network Connectivity API di project Anda.
- Anda memerlukan Load Balancer Jaringan passthrough internal. Sebaiknya aktifkan akses global sehingga Load Balancer Jaringan passthrough internal tidak melepaskan paket dari region selain yang ditentukan.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna menggunakan rute berbasis kebijakan,
minta administrator untuk memberi Anda
peran IAM Compute Network Admin (roles/compute.networkAdmin
) di project Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuat rute berbasis kebijakan
Saat membuat rute berbasis kebijakan, tentukan hal berikut:
- Cakupan rute: resource yang menjadi tujuan penerapan rute.
- Kriteria klasifikasi: rentang alamat IP sumber, rentang alamat IP tujuan, dan protokol yang menentukan paket mana yang menjadi tujuan penerapan rute. Rute berbasis kebijakan berlaku untuk paket yang cocok dengan semua kriteria klasifikasi yang ditentukan.
- Next hop: next hop Load Balancer Jaringan passthrough internal atau next hop yang melewati rute berbasis kebijakan lainnya.
Konsol
Di Konsol Google Cloud, buka Routes.
Klik Route management.
Klik Create route.
Masukkan Nama untuk rute.
Opsional: Masukkan Deskripsi..
Klik Network, lalu pilih jaringan tempat Anda ingin menambahkan rute berbasis kebijakan.
Klik Route type, lalu pilih Policy-based route.
Di bagian Route scope, lakukan salah satu hal berikut:
Agar rute berlaku untuk semua instance virtual machine (VM), lampiran VLAN untuk Cloud Interconnect, dan tunnel Cloud VPN di jaringan Virtual Private Cloud, pilih Rute ini berlaku untuk semua VM instance, lampiran VLAN, dan tunnel VPN.
Google menyarankan agar berhati-hati saat membuat rute jenis ini. Rute ini diterapkan ke semua paket keluar yang cocok dengan kriteria klasifikasi, yang dapat mencakup traffic keluar dari backend Load Balancer Jaringan passthrough internal.
Agar rute hanya berlaku untuk instance VM tertentu, pilih This route only applies to VM instances, lalu masukkan tag jaringan VM yang menjadi tujuan penerapan rute ini. Anda dapat memasukkan beberapa tag jaringan dalam daftar yang dipisahkan koma.
Agar rute diterapkan ke semua lampiran VLAN untuk Cloud Interconnect di jaringan VPC rute, pilih This route only applies to VLAN attachments.
Agar rute diterapkan ke lampiran VLAN untuk Cloud Interconnect di region tertentu, pilih This route only applies to VLAN attachments, lalu pilih region lampiran VLAN. Anda tidak dapat membuat rute berbasis kebijakan yang berlaku untuk lampiran VLAN tertentu.
Di bagian Classification criteria, lakukan hal berikut:
- Masukkan Source IP range.
- Masukkan Destination IP range.
- Klik Protocol, lalu pilih protokol tempat rute ini diterapkan.
Masukkan Priority.
Di bagian Next hop, klik Next hop, lalu lakukan langkah berikut:
Untuk menentukan next hop Load Balancer Jaringan passthrough internal, pilih Specify a forwarding rule of the internal passthrough Network Load Balancer, lalu lakukan langkah berikut:
- Untuk memilih aturan penerusan dari daftar aturan penerusan yang ada:
- Pilih In use by the forwarding rule of an internal load balancer in the current project.
- Klik Forwarding rule IP address, lalu pilih alamat IP yang terkait dengan load balancer internal dalam project yang dipilih.
Untuk memasukkan alamat IP:
- Pilih Unused.
Di kolom Forwarding rule IP address, masukkan alamat IP, tanpa panjang awalan. Alamat IP harus berasal dari salah satu sumber berikut:
- Rentang alamat IP jaringan VPC tempat Anda membuat rute berbasis kebijakan ini.
- Rentang alamat IP jaringan VPC yang terhubung ke jaringan VPC rute melalui Peering Jaringan VPC (Pratinjau).
Anda dapat menentukan alamat IP yang sudah terkait dengan aturan penerusan Load Balancer Jaringan passthrough internal, atau Anda dapat menentukan alamat IP yang tidak terpakai dan membuat aturan penerusan setelah membuat rute berbasis kebijakan ini.
- Untuk memilih aturan penerusan dari daftar aturan penerusan yang ada:
Untuk membuat rute berbasis kebijakan yang mengabaikan rute berbasis kebijakan lainnya, pilih Skip other policy-based routes.
Klik Create.
gcloud
Gunakan
perintah policy-based-routes create
.
Untuk menerapkan rute ke semua instance VM, lampiran VLAN untuk Cloud Interconnect, dan tunnel Cloud VPN di jaringan Virtual Private Cloud, gunakan perintah berikut.
Google menyarankan agar berhati-hati saat membuat rute jenis ini. Rute ini diterapkan ke semua paket keluar yang cocok dengan kriteria klasifikasi, yang dapat mencakup traffic keluar dari backend Load Balancer Jaringan passthrough internal.
gcloud network-connectivity policy-based-routes create ROUTE_NAME \ --source-range=SOURCE_RANGE \ --destination-range=DESTINATION_RANGE \ --ip-protocol=PROTOCOL \ --protocol-version=IP_VERSION \ --network="projects/PROJECT_ID/global/networks/NETWORK" \ --next-hop-ilb-ip=NEXT_HOP \ --description=DESCRIPTION \ --priority=PRIORITY
Ganti kode berikut:
ROUTE_NAME
: nama rute berbasis kebijakan.SOURCE_RANGE
: rentang CIDR IP sumber.DESTINATION_RANGE
: rentang CIDR IP tujuan.PROTOCOL
: protokol traffic yang akan diteruskan. Opsinya adalahALL
,TCP
, atauUDP
. Defaultnya adalahALL
.IP_VERSION
: satu versi Internet Protocol yang berlaku untuk rute ini. TentukanIPv4
atauIPv6
(Pratinjau). Defaultnya adalahIPv4
. Untuk menentukanIPv6
, gunakan versi beta Google Cloud CLI.PROJECT_ID
: ID project.NETWORK
: nama jaringan tempat rute berbasis kebijakan diterapkan.NEXT_HOP
: satu alamat IP, tanpa panjang awalan, untuk Load Balancer Jaringan passthrough internal next hop rute. Tentukan alamat IPv4 sebagai next hop untuk traffic IPv4, atau tentukan alamat IPv6 untuk traffic IPv6 (Pratinjau). Load balancer harus berada di jaringan VPC yang sama dengan rute berbasis kebijakan atau di jaringan VPC yang terhubung ke jaringan VPC rute melalui Peering Jaringan VPC (Pratinjau).Jika rute berlaku untuk traffic IPv6 (Pratinjau), Anda harus menyiapkan load balancer dengan subnet dual-stack.
Untuk menentukan alamat IPv6 atau alamat IP dari jaringan VPC peer, gunakan Google Cloud CLI versi beta.
DESCRIPTION
: deskripsi opsional rute.PRIORITY
: prioritas rute berbasis kebijakan dibandingkan dengan rute berbasis kebijakan lainnya.
Untuk menerapkan rute hanya ke instance VM tertentu, gunakan perintah berikut:
gcloud network-connectivity policy-based-routes create ROUTE_NAME \ --source-range=SOURCE_RANGE \ --destination-range=DESTINATION_RANGE \ --ip-protocol=PROTOCOL \ --protocol-version=IP_VERSION \ --network="projects/PROJECT_ID/global/networks/NETWORK" \ --next-hop-ilb-ip=NEXT_HOP \ --description=DESCRIPTION \ --priority=PRIORITY \ --tags=NETWORK_TAGS
Ganti
NETWORK_TAGS
dengan satu atau beberapa tag jaringan VM tempat rute akan diterapkan. Anda dapat menyertakan beberapa tag jaringan dalam daftar yang dipisahkan koma.Untuk menerapkan rute hanya ke lampiran VLAN untuk Cloud Interconnect, gunakan perintah berikut. Anda dapat menerapkan rute ke lampiran VLAN untuk Cloud Interconnect di region tertentu atau ke semua lampiran VLAN untuk Cloud Interconnect di jaringan VPC.
gcloud network-connectivity policy-based-routes create ROUTE_NAME \ --source-range=SOURCE_RANGE \ --destination-range=DESTINATION_RANGE \ --ip-protocol=PROTOCOL \ --protocol-version=IP_VERSION \ --network="projects/PROJECT_ID/global/networks/NETWORK" \ --next-hop-ilb-ip=NEXT_HOP \ --description=DESCRIPTION \ --priority=PRIORITY \ --interconnect-attachment-region=INTERCONNECT_REGION
Ganti
INTERCONNECT_REGION
dengan region lampiran VLAN tempat Cloud Interconnect akan menerapkan rute ini. Untuk menerapkan rute berbasis kebijakan ke semua lampiran VLAN untuk Cloud Interconnect di jaringan VPC rute, gunakanall
.Guna menentukan net hop yang melewati rute berbasis kebijakan lainnya untuk VM tertentu yang diidentifikasi oleh tag jaringan, gunakan perintah berikut:
gcloud network-connectivity policy-based-routes create ROUTE_NAME \ --source-range=SOURCE_RANGE \ --destination-range=DESTINATION_RANGE \ --ip-protocol=PROTOCOL \ --protocol-version=IP_VERSION \ --network="projects/PROJECT_ID/global/networks/NETWORK" \ --next-hop-other-routes=DEFAULT_ROUTING \ --description=DESCRIPTION \ --priority=PRIORITY \ --tags=NETWORK_TAGS
API
Kirim permintaan POST
ke
metode policyBasedRoutes.create
:
POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes?policyBasedRouteId=ROUTE_NAME
Guna menerapkan rute ke semua instance VM, lampiran VLAN untuk Cloud Interconnect, dan tunnel Cloud VPN di jaringan Virtual Private Cloud, sertakan isi permintaan berikut.
Google menyarankan agar berhati-hati saat membuat rute jenis ini. Rute ini diterapkan ke semua paket keluar yang cocok dengan kriteria klasifikasi, yang dapat mencakup traffic keluar dari backend Load Balancer Jaringan passthrough internal.
{ "filter": { "srcRange": "SOURCE_RANGE", "destRange": "DESTINATION_RANGE", "ipProtocol": "PROTOCOL", "protocolVersion": "IP_VERSION" }, "network": "projects/PROJECT_ID/global/networks/NETWORK", "nextHopIlbIp": "NEXT_HOP", "description": "DESCRIPTION", "priority": "PRIORITY" }
Ganti kode berikut:
PROJECT_ID
: ID project.ROUTE_NAME
: nama rute berbasis kebijakan.SOURCE_RANGE
: rentang CIDR IP sumber.DESTINATION_RANGE
: rentang CIDR IP tujuan.PROTOCOL
: protokol traffic yang akan diteruskan. Opsinya adalahALL
,TCP
, atauUDP
. Defaultnya adalahALL
.IP_VERSION
: satu versi Internet Protocol yang berlaku untuk rute. TentukanIPv4
atauIPv6
(Pratinjau). Defaultnya adalahIPv4
. Untuk menentukan alamatIPv6
, gunakan API v1beta.NETWORK
: nama jaringan tempat rute berbasis kebijakan diterapkan. Rute ini berlaku untuk traffic keluar dari instance di jaringan ini yang memenuhi kriteria klasifikasi lainnya.NEXT_HOP
: satu alamat IP, tanpa panjang awalan, untuk Load Balancer Jaringan passthrough internal next hop rute. Tentukan alamat IPv4 sebagai next hop untuk traffic IPv4, atau tentukan alamat IPv6 untuk traffic IPv6 (Pratinjau). Load balancer harus berada di jaringan VPC yang sama dengan rute berbasis kebijakan atau di jaringan VPC yang terhubung ke jaringan VPC rute melalui Peering Jaringan VPC (Pratinjau).Jika rute berlaku untuk traffic IPv6 (Pratinjau), Anda harus menyiapkan load balancer dengan subnet dual-stack.
Untuk menentukan alamat IPv6 atau alamat IP dari jaringan VPC peer, gunakan API v1beta.
DESCRIPTION
: deskripsi opsional rute.PRIORITY
: prioritas rute berbasis kebijakan dibandingkan dengan rute berbasis kebijakan lainnya.
Untuk menerapkan rute hanya ke instance VM tertentu, sertakan isi permintaan berikut:
{ "filter": { "srcRange": "SOURCE_RANGE", "destRange": "DESTINATION_RANGE", "ipProtocol": "PROTOCOL", "protocolVersion": "IP_VERSION" }, "network": "projects/PROJECT_ID/global/networks/NETWORK", "nextHopIlbIp": "NEXT_HOP", "description": "DESCRIPTION", "priority": "PRIORITY", "virtualMachine": { "tags": [ "NETWORK_TAGS" ] } }
Ganti
NETWORK_TAGS
dengan satu atau beberapa tag jaringan. Rute berbasis kebijakan berlaku untuk traffic keluar dari instance yang memiliki setidaknya salah satu tag ini. Anda dapat menyertakan beberapa tag dalam formulir berikut:"tag1","tag2","tag3"
.Untuk menerapkan rute hanya ke lampiran VLAN untuk Cloud Interconnect, sertakan isi permintaan berikut. Anda tidak dapat membuat rute berbasis kebijakan yang berlaku untuk lampiran VLAN tertentu.
{ "filter": { "srcRange": "SOURCE_RANGE", "destRange": "DESTINATION_RANGE", "ipProtocol": "PROTOCOL", "protocolVersion": "IP_VERSION" }, "interconnectAttachment": { "region": "INTERCONNECT_REGION" }, "network": "projects/PROJECT_ID/global/networks/NETWORK", "nextHopIlbIp": "NEXT_HOP", "description": "DESCRIPTION", "priority": "PRIORITY" }
Ganti
INTERCONNECT_REGION
dengan region lampiran VLAN tempat Cloud Interconnect akan menerapkan rute ini. Guna menerapkan rute berbasis kebijakan ke semua lampiran VLAN untuk Cloud Interconnect di jaringan VPC rute, gunakanall
.Guna menentukan net hop yang melewati rute berbasis kebijakan lainnya untuk VM tertentu yang diidentifikasi oleh tag jaringan, gunakan perintah berikut:
{ "filter": { "srcRange": "SOURCE_RANGE", "destRange": "DESTINATION_RANGE", "ipProtocol": "PROTOCOL", "protocolVersion": "IP_VERSION" }, "network": "projects/PROJECT_ID/global/networks/NETWORK", "nextHopOtherRoutes": "DEFAULT_ROUTING", "description": "DESCRIPTION", "priority": "PRIORITY", "virtualMachine": { "tags": [ "NETWORK_TAGS" ] } }
Memverifikasi konektivitas untuk rute berbasis kebijakan
Uji Konektivitas adalah alat diagnostik yang memungkinkan Anda memeriksa konektivitas antar-endpoint di jaringan. Layanan ini menganalisis konfigurasi Anda dan dalam beberapa kasus melakukan verifikasi runtime. Uji Konektivitas mendukung rute berbasis kebijakan. Untuk menjalankan Uji Konektivitas dengan rute berbasis kebijakan, lihat Membuat dan menjalankan Uji Konektivitas.
Mencantumkan rute berbasis kebijakan
Anda dapat mencantumkan rute berbasis kebijakan untuk melihat semua rute berbasis kebijakan dalam sebuah project atau jaringan dan region.
Konsol
Di Konsol Google Cloud, buka Routes.
Untuk melihat semua rute berbasis kebijakan dalam region dan jaringan VPC, lakukan hal berikut:
- Klik Effective routes.
- Klik Network, lalu pilih jaringan.
- Klik Region, lalu pilih region.
- Klik View.
Untuk melihat semua rute berbasis kebijakan dalam sebuah project, lakukan hal berikut:
- Klik Route management.
gcloud
Gunakan
perintah policy-based-routes list
.
gcloud network-connectivity policy-based-routes list
API
Kirim permintaan GET
ke
metode policyBasedRoutes.list
.
GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes
Ganti PROJECT_ID
dengan ID project untuk mencantumkan rute berbasis kebijakan.
Menjelaskan rute berbasis kebijakan
Anda dapat mendeskripsikan rute berbasis kebijakan untuk melihat detail rute tersebut.
Konsol
Di Konsol Google Cloud, buka Routes.
Klik Effective routes.
Klik Network, lalu pilih jaringan.
Klik Region, lalu pilih region.
Klik View.
Klik Name rute berbasis kebijakan untuk melihat detailnya.
gcloud
Untuk mendeskripsikan rute berbasis kebijakan, gunakan perintah policy-based-routes describe
.
gcloud network-connectivity policy-based-routes describe NAME
Ganti NAME
dengan nama rute yang akan dideskripsikan.
API
Kirim permintaan GET
ke
metode policyBasedRoutes.get
.
GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes/ROUTE_NAME
Ganti kode berikut:
PROJECT_ID
: ID project.ROUTE_NAME
: nama rute berbasis kebijakan yang akan dijelaskan.
Menghapus rute berbasis kebijakan
Anda dapat menghapus rute berbasis kebijakan untuk menghapusnya dari jaringan VPC.
Konsol
Di Konsol Google Cloud, buka Routes.
Klik Effective routes.
Klik Network, lalu pilih jaringan.
Klik Region, lalu pilih region.
Klik View.
Klik Name rute berbasis kebijakan.
Klik Delete, lalu klik Delete lagi untuk mengonfirmasi.
gcloud
Untuk menghapus rute berbasis kebijakan, gunakan perintah policy-based-routes delete
.
gcloud network-connectivity policy-based-routes delete NAME
Ganti NAME
dengan nama rute yang akan dihapus.
API
Kirim permintaan DELETE
ke
metode policyBasedRoutes.delete
.
DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes/ROUTE_NAME
Ganti kode berikut:
PROJECT_ID
: ID project.ROUTE_NAME
: nama rute berbasis kebijakan yang akan dihapus.
Kompatibilitas
Konfigurasi khusus diperlukan untuk menggunakan rute berbasis kebijakan dengan cara berikut.
Menggunakan rute berbasis kebijakan dengan GKE
Jika Anda membuat rute berbasis kebijakan di jaringan VPC yang memiliki cluster Google Kubernetes Engine (GKE), perhatikan hal-hal berikut:
- Jangan membuat rute berbasis kebijakan yang tujuannya mencakup node cluster atau alamat IP Pod.
- Jangan membuat rute berbasis kebijakan yang tujuannya mencakup endpoint pribadi bidang kontrol cluster.
- Beberapa cluster Google Kubernetes Engine (GKE) publik memiliki endpoint pribadi bidang kontrol Private Service Connect. Untuk cluster ini, secara default, GKE membuat endpoint pribadi bidang kontrol Private Service Connect dalam rentang alamat IPv4 utama subnet cluster. Guna memilih rentang subnet kustom (dari subnet di region yang sama) untuk endpoint pribadi bidang kontrol Private Service Connect, lihat Membuat cluster dan memilih IP bidang kontrol rentang.
- Saat membuat cluster GKE pribadi, tentukan rentang alamat IP untuk endpoint pribadi bidang kontrol (
--master-ipv4-cidr
). Pastikan Anda tidak membuat rute berbasis kebijakan yang tujuannya mencakup rentang ini. Untuk mengetahui informasi selengkapnya, lihat Endpoint dalam cluster pribadi.
Rute berbasis kebijakan dan Private Service Connect untuk layanan yang dipublikasikan
Rute berbasis kebijakan tidak dapat digunakan untuk merutekan traffic dari VM ke endpoint Private Service Connect untuk layanan yang dipublikasikan atau backend Private Service Connect untuk layanan yang dipublikasikan. Saat menggunakan rute berbasis kebijakan dan Private Service Connect untuk layanan yang dipublikasikan:
- Gunakan tag jaringan sehingga rute berbasis kebijakan berlaku untuk VM tertentu.
- Hindari membuat rute berbasis kebijakan dengan rentang alamat IP sumber atau tujuan
0.0.0.0/0
. - Jika Anda perlu membuat rute berbasis kebijakan dengan rentang tujuan yang menyertakan alamat IP endpoint atau backend Private Service Connect, buat rute berbasis kebijakan dengan prioritas lebih tinggi yang melewati rute berbasis kebijakan lainnya. Konfigurasikan tujuan rute berbasis kebijakan yang memiliki prioritas lebih tinggi dengan rentang alamat IP yang lebih spesifik dan menyertakan alamat IP endpoint atau backend Private Service Connect.
Rute berbasis kebijakan serta mengakses Google API dan layanan Google
Google Cloud tidak mendukung perutean traffic ke Google API dan layanan Google melalui instance VM lain atau next hop kustom, termasuk ke backend VM dari Load Balancer Jaringan passthrough internal next hop di rute berbasis kebijakan.
Jika Anda menggunakan salah satu cara berikut untuk mengakses Google API dan layanan Google, lihat praktik terbaik yang tercantum di bagian berikut:
- Menggunakan Akses Google Pribadi untuk mengakses Google API dan layanan Google
- Mengakses Google API dan layanan Google dari VM dengan alamat IP eksternal
- Menggunakan endpoint Private Service Connect untuk Google API
- Menggunakan backend Private Service Connect untuk Google API
Praktik terbaik
Kami merekomendasikan praktik terbaik berikut untuk cara sebelumnya dalam mengakses Google API dan layanan Google:
- Gunakan tag jaringan sehingga rute berbasis kebijakan berlaku untuk VM tertentu.
- Hindari membuat rute berbasis kebijakan dengan rentang sumber atau tujuan
0.0.0.0/0
. - Jika Anda membuat rute berbasis kebijakan yang mencakup rentang tujuan yang digunakan oleh Google API dan layanan Google, endpoint Private Service Connect untuk Google API, atau backend Private Service Connect untuk API, buat rute berbasis kebijakan dengan prioritas yang lebih tinggi yang melewati rute berbasis kebijakan lainnya.
Tetapkan tujuan rute berbasis kebijakan dengan prioritas lebih tinggi ini agar cocok dengan alamat IP untuk Google API dan layanan Google, endpoint Private Service Connect, atau backend Private Service Connect yang Anda gunakan. Rentang alamat IP yang digunakan oleh Google API dan layanan Google mencakup:
- Alamat IP untuk domain default yang digunakan oleh Google API dan layanan Google
- Alamat IP virtual (VIP) Akses Google Pribadi:
private.googleapis.com
(199.36.153.8/30)restricted.googleapis.com
(199.36.153.4/30)