Tutorial ini mengasumsikan bahwa Anda sudah memahami konsep dasar jaringan Virtual Private Cloud (VPC), Border Gateway Protocol (BGP), virtual private network (VPN), dan tunnel IPsec.
Google Cloud menyediakan layanan VPN dengan ketersediaan tinggi (HA) untuk menghubungkan jaringan VPC Anda ke lingkungan yang berjalan di luar Google Cloud, seperti di infrastruktur lokal atau di AWS melalui koneksi VPN IPsec. VPN dengan ketersediaan tinggi (HA) memberikan SLA ketersediaan layanan 99,99% jika dikonfigurasi berdasarkan praktik terbaik Google. Untuk mengetahui informasi selengkapnya, lihat Perjanjian Tingkat Layanan (SLA) Cloud VPN.
Ringkasan arsitektur
Arsitektur yang dijelaskan di halaman ini mencakup komponen berikut:
- Cloud Router: Layanan Google Cloud yang terdistribusi dan terkelola sepenuhnya untuk menyediakan perutean dinamis menggunakan BGP untuk jaringan VPC Anda.
- Gateway VPN dengan ketersediaan tinggi (HA): Gateway VPN yang dikelola Google yang berjalan pada Google Cloud. Setiap gateway VPN dengan ketersediaan tinggi (HA) adalah resource regional yang memiliki dua antarmuka, masing-masing dengan alamat IP eksternal: antarmuka 0 dan 1.
- Tunnel VPN: Koneksi dari gateway VPN dengan ketersediaan tinggi (HA) ke gateway VPN peer di AWS yang dilalui traffic terenkripsi.
- Gateway VPN peer: Dua endpoint VPN site-to-site AWS, yang dapat berasal dari gateway pribadi virtual AWS atau gateway transit AWS. Untuk informasi selengkapnya, lihat Apa yang dimaksud dengan AWS Site-to-Site VPN?
Setiap koneksi gateway VPN peer dilengkapi dengan dua tunnel yang telah dikonfigurasi sebelumnya untuk mengarah ke satu pengguna gateway, dalam hal ini merupakan antarmuka VPN dengan ketersediaan tinggi (HA) Google Cloud. Dengan konfigurasi ini, jumlah minimum tunnel untuk memenuhi SLA ketersediaan layanan 99,99% adalah empat.
Opsi perutean dan bandwidth gabungan melalui tunnel VPN bervariasi berdasarkan opsi VPN Site-to-Site yang digunakan di sisi AWS:
Gateway transit: Jika Anda membuat gateway transit AWS tanpa preferensi BGP, ECMP akan mendistribusikan traffic secara merata di seluruh tunnel aktif.
Untuk menggunakan konektivitas VPN di beberapa jaringan Google Virtual Private Cloud, gunakan jaringan VPC konektivitas untuk menskalakan arsitektur hub-and-spoke dengan beberapa jaringan VPC.
Untuk mengetahui informasi selengkapnya tentang gateway transit AWS, lihat Apa yang dimaksud dengan Amazon VPC Transit Gateway?.
Gateway pribadi virtual: Jika Anda menggunakan gateway pribadi virtual AWS, hanya satu tunnel di semua koneksi di gateway yang akan dipilih. Untuk menggunakan lebih dari satu tunnel, gunakan gateway transit AWS sehingga equal-cost multipath (ECMP) tersedia.
Untuk mengetahui detail tentang prioritas rute VPN dengan AWS, lihat Opsi pemilihan rute VPN Site-to-Site.
Untuk informasi selengkapnya tentang gateway pribadi virtual AWS, lihat Opsi tunnel untuk koneksi VPN Site-to-Site.
Diagram berikut menampilkan arsitektur.
Tujuan
- Membuat jaringan VPC di Google Cloud.
- Membuat gateway VPN dengan ketersediaan tinggi (HA) dan Cloud Router pada Google Cloud.
- Membuat gateway pelanggan di AWS.
- Membuat koneksi VPN dengan perutean dinamis pada AWS.
- Membuat gateway VPN eksternal dan tunnel VPN di Google Cloud.
- Memverifikasi dan uji koneksi VPN antarjaringan VPC pada Google Cloud dan AWS.
Contoh modul Terraform
Anda dapat menggunakan modul gcp-to-aws-ha-vpn-terraform-module
untuk menyediakan VPN dengan ketersediaan tinggi (HA) antara Google Cloud dan AWS.
Biaya
Tutorial ini menggunakan komponen Google Cloud yang dapat ditagih, termasuk sebagai berikut:
Untuk memperkirakan biaya komponen Google Cloud, gunakan Kalkulator Harga Google Cloud.
Tutorial ini menggunakan komponen Amazon Web Services yang dapat ditagih, termasuk berikut ini:
- Gateway Transit AWS
- VPN Site-to-Site AWS
Untuk memperkirakan biaya komponen AWS, gunakan Kalkulator Harga AWS.
Sebelum memulai
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, activate Cloud Shell.
-
Pastikan Anda memiliki peran administratif yang diperlukan untuk mengonfigurasi komponen jaringan:
- Network Admin
compute.networkAdmin
- Security Admin:
compute.securityAdmin
- Compute Admin:
compute.admin
Untuk informasi selengkapnya tentang tujuan peran ini, lihat Peran IAM untuk fungsi pekerjaan terkait jaringan.
- Network Admin
Membuat gateway VPN dengan ketersediaan tinggi (HA) dan Cloud Router di Google Cloud
Di bagian ini, Anda akan membuat jaringan VPC, gateway VPN dengan ketersediaan tinggi (HA), dan Cloud Router di Google Cloud.
Di Cloud Shell, pastikan Anda bekerja di project Google Cloud yang Anda buat atau pilih.
gcloud config set project YOUR_PROJECT_ID export PROJECT_ID=`gcloud config list --format="value(core.project)"`
Ganti
YOUR_PROJECT_ID
dengan project ID Google Cloud Anda.Untuk membuat jaringan VPC kustom dengan satu subnet, gunakan perintah
gcloud compute networks create
:gcloud compute networks create NETWORK \ --subnet-mode SUBNET_MODE \ --bgp-routing-mode BGP_ROUTING_MODE
Ganti kode berikut:
NETWORK
: Nama jaringanSUBNET_MODE
: Mode subnetBGP_ROUTING_MODE
: Mode pemilihan rute BGP
Misalnya, perintah berikut akan membuat jaringan VPC kustom bernama
gc-vpc
dengan satu subnet:gcloud compute networks create gc-vpc \ --subnet-mode custom \ --bgp-routing-mode global
Untuk membuat satu subnet guna menghosting VM pengujian, gunakan perintah
gcloud compute networks subnets create
:gcloud compute networks subnets create SUBNET_NAME \ --network NETWORK \ --region SUBNET_REGION \ --range IP_ADDRESS_RANGE
Ganti kode berikut:
SUBNET_NAME
: Nama subnetSUBNET_REGION
: Region tempat membuat subnetIP_ADDRESS_RANGE
: Rentang alamat IP untuk subnetMisalnya, perintah berikut akan membuat subnet bernama
subnet-east4
di jaringan VPCgc-vpc
.
gcloud compute networks subnets create subnet-east4 \ --network gc-vpc \ --region us-east4 \ --range 10.1.1.0/24
Untuk membuat gateway VPN dengan ketersediaan tinggi (HA), gunakan perintah
gcloud compute vpn-gateways create
:gcloud compute vpn-gateways create HA_VPN_GATEWAY_NAME \ --network NETWORK \ --region REGION
Ganti
HA_VPN_GATEWAY_NAME
dengan nama gateway VPN dengan ketersediaan tinggi (HA).Untuk membuat Cloud Router, gunakan perintah
gcloud compute routers create
:gcloud compute routers create ROUTER_NAME \ --region REGION \ --network NETWORK \ --asn GOOGLE_ASN \ --advertisement-mode custom \ --set-advertisement-groups all_subnets
Ganti kode berikut:
ROUTER_NAME
: Nama Cloud Router AndaGOOGLE_ASN
: ASN (nomor sistem otonom) pribadi untuk Cloud Router yang Anda buat. Dapat berupa ASN pribadi apa pun dalam rentang64512-65534
atau4200000000-4294967294
yang belum Anda gunakan sebagai pembanding ASN di wilayah dan jaringan yang sama.
Misalnya, perintah berikut akan membuat Cloud Router bernama
cloud-router
.gcloud compute routers create cloud-router \ --region us-east4 \ --network gc-vpc \ --asn 65534 \ --advertisement-mode custom \ --set-advertisement-groups all_subnets
Untuk membuat gateway VPN dengan dua antarmuka, catat alamat IP eksternal. Anda memerlukan alamat ini saat menyiapkan lingkungan di sisi AWS.
Membuat gateway dan koneksi VPN di AWS
Di bagian ini, Anda akan membuat gateway pelanggan, gateway target, dan koneksi VPN dengan perutean dinamis.
Anda menjalankan perintah AWS menggunakan Antarmuka Command Line AWS.
Untuk membuat dua gateway pelanggan menggunakan perintah AWS berikut, gunakan perintah AWS CLI
create-customer-gateway
:aws ec2 create-customer-gateway --type ipsec.1 --public-ip INTERFACE_0_IP_ADDRESS --bgp-asn GOOGLE_ASN aws ec2 create-customer-gateway --type ipsec.1 --public-ip INTERFACE_1_IP_ADDRESS --bgp-asn GOOGLE_ASN
Ganti
INTERFACE_0_IP_ADDRESS
danINTERFACE_1_IP_ADDRESS
dengan alamat IP eksternal dari langkah terakhir di bagian sebelumnya.Untuk membuat gateway target dan melampirkan ke Amazon VPC, lakukan hal berikut:
Gateway target dapat berupa gateway pribadi virtual atau gateway transit. Untuk mengetahui informasi selengkapnya, lihat Membuat gateway target.
Virtual private gateway
Buat gateway pribadi virtual dengan ASN sisi AWS tertentu menggunakan perintah AWS CLI
create-vpn-gateway
:aws ec2 create-vpn-gateway --type ipsec.1 --amazon-side-asn AWS_SIDE_ASN
Ganti
AWS_SIDE_ASN
dengan ASN untuk sisi AWS.Perintah ini akan terlihat seperti contoh berikut:
aws ec2 create-vpn-gateway --type ipsec.1 --amazon-side-asn 65001
Lampirkan gateway pribadi virtual ke jaringan VPC Anda menggunakan perintah AWS CLI
attach-vpn-gateway
:aws ec2 attach-vpn-gateway --vpn-gateway-id VPN_GATEWAY_ID --vpc-id VPC_ID
Gateway transit
Buat gateway transit menggunakan perintah AWS CLI
create-transit-gateway
:aws ec2 create-transit-gateway --description TRANSIT_GATEWAY_DESCRIPTION \ --options=AmazonSideAsn=65001,AutoAcceptSharedAttachments=enable,DefaultRouteTableAssociation=enable,DefaultRouteTablePropagation=enable,VpnEcmpSupport=enable,DnsSupport=enable
Ganti
TRANSIT_GATEWAY_DESCRIPTION
dengan deskripsi untuk gateway transit Anda.Hubungkan jaringan VPC Anda ke gateway transit menggunakan perintah AWS CLI
create-transit-gateway-vpc-attachment
:aws ec2 create-transit-gateway-vpc-attachment \ --transit-gateway-id TRANSIT_GATEWAY_ID \ --vpc-id VPC_ID \ --subnet-ids "SUBNET_ID"
Ganti kode berikut:
TRANSIT_GATEWAY_ID
: ID gateway transitVPC_ID
: ID VPCSUBNET_ID
: ID satu atau beberapa subnet
Untuk membuat koneksi VPN dengan perutean dinamis, lakukan hal berikut:
Metode untuk membuat koneksi VPN dengan perutean dinamis berbeda-beda bergantung pada apakah gateway target Anda adalah gateway pribadi virtual atau gateway. transit. Untuk informasi selengkapnya, lihat Membuat koneksi VPN.
Virtual private gateway
Buat koneksi VPN dengan perutean dinamis antara gateway pribadi virtual dan gateway pelanggan, lalu terapkan tag ke koneksi VPN:
aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_1 \ --vpn-gateway-id VPN_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T1_IP,PreSharedKey=SHARED_SECRET_1},{TunnelInsideCidr=AWS_T2_IP,PreSharedKey=SHARED_SECRET_2}]' aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_2 \ --vpn-gateway-id VPN_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T3_IP,PreSharedKey=SHARED_SECRET_3},{TunnelInsideCidr=AWS_T4_IP,PreSharedKey=SHARED_SECRET_4}]'
Ganti kode berikut:
CUSTOMER_GATEWAY_1
: Gateway Google Cloud VPN, antarmuka 0CUSTOMER_GATEWAY_2
: Gateway Google Cloud VPN, antarmuka 1AWS_T1_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 1, tunnel 1AWS_T2_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 1, tunnel 2AWS_T3_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 2, tunnel 1AWS_T4_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 2, tunnel 2SHARED_SECRET_1
: Pre-shared key untuk koneksi 1, tunnel 1SHARED_SECRET_2
: Pre-shared key untuk koneksi 1, tunnel 2SHARED_SECRET_3
: Pre-shared key untuk koneksi 2, tunnel 1SHARED_SECRET_4
: Pre-shared key untuk koneksi 2, tunnel 2
Gateway transit
Buat koneksi VPN dengan perutean dinamis antara gateway transit dan gateway pelanggan:
aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_1 \ --transit-gateway-id TRANSIT_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T1_IP,PreSharedKey=SHARED_SECRET_1},{TunnelInsideCidr=AWS_T2_IP,PreSharedKey=SHARED_SECRET_2}]' aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_2 \ --transit-gateway-id TRANSIT_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T3_IP,PreSharedKey=SHARED_SECRET_3},{TunnelInsideCidr=AWS_T4_IP,PreSharedKey=SHARED_SECRET_4}]'
Ganti kode berikut:
CUSTOMER_GATEWAY_1
: Gateway Google Cloud VPN, antarmuka 0CUSTOMER_GATEWAY_2
: Gateway Google Cloud VPN, antarmuka 1TRANSIT_GATEWAY_ID
: ID gateway transit yang terkait dengan koneksi VPNAWS_T1_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 1, tunnel 1AWS_T2_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 1, tunnel 2AWS_T3_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 2, tunnel 1AWS_T4_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 2, tunnel 2SHARED_SECRET_1
: Pre-shared key untuk koneksi 1, tunnel 1SHARED_SECRET_2
: Pre-shared key untuk koneksi 1, tunnel 2SHARED_SECRET_3
: Pre-shared key untuk koneksi 2, tunnel 1SHARED_SECRET_4
: Pre-shared key untuk koneksi 2, tunnel 2CUSTOMER_GATEWAY_1
: Gateway Google Cloud VPN, antarmuka 0CUSTOMER_GATEWAY_2
: Gateway Google Cloud VPN, antarmuka 1TRANSIT_GATEWAY_ID
: ID gateway transit yang terkait dengan koneksi VPNAWS_T1_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 1, tunnel 1AWS_T2_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 1, tunnel 2AWS_T3_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 2, tunnel 1AWS_T4_IP
: Di dalam alamat IP untuk gateway pribadi virtual untuk koneksi 2, tunnel 2SHARED_SECRET_1
: Pre-shared key untuk koneksi 1, tunnel 1SHARED_SECRET_2
: Pre-shared key untuk koneksi 1, tunnel 2SHARED_SECRET_3
: Pre-shared key untuk koneksi 2, tunnel 1SHARED_SECRET_4
: Pre-shared key untuk koneksi 2, tunnel 2
AWS mencadangkan beberapa rentang CIDR, sehingga Anda tidak dapat menggunakan nilai dalam rentang ini sebagai alamat IP di dalam (
AWS_T1_IP
,AWS_T2_IP
,AWS_T3_IP
,AWS_T4_IP
). Untuk mengetahui informasi tentang CIDR apa yang memblokir cadangan AWS, lihat Opsi tunnel untuk koneksi VPN Site-to-Site Anda.Anda membuat empat tunnel ke Google Cloud menggunakan perintah ini.
Download file konfigurasi untuk kedua koneksi VPN tersebut.
Pada langkah berikutnya, Anda akan menggunakan nilai dari file konfigurasi yang didownload untuk membuat dan mengonfigurasi resource di sisi Google Cloud.
Membuat tunnel VPN dan antarmuka Cloud Router di Google Cloud
Di bagian ini, Anda akan menggunakan informasi dari koneksi VPN AWS yang Anda buat di bagian sebelumnya untuk membuat gateway VPN eksternal, tunnel VPN, dan antarmuka Cloud Router di Google Cloud.
Saat mengonfigurasi tunnel Cloud VPN ke AWS, Anda harus menggunakan protokol IKEv2 dan hanya memilih satu set cipher IKE untuk membantu memastikan pembentukan tunnel berhasil. Misalnya, pilih satu algoritma enkripsi Fase 1 dan satu algoritma enkripsi Fase 2, algoritma integritas, dan grup Diffie-Hellman (DH). Set transformasi AWS default membuat payload asosiasi keamanan (SA) yang besar, yang dapat menyebabkan fragmentasi IP paket IKE. Cloud VPN tidak mendukung paket IKE yang terfragmentasi.
Di Cloud Shell, buat gateway VPN eksternal dengan empat antarmuka untuk alamat IP di luar AWS.
Sebelum membuat gateway VPN eksternal, pastikan alamat IP di luar AWS cocok dengan nilai dalam file konfigurasi yang Anda download. Anda tidak dapat mengubah alamat IP ini setelah membuat gateway VPN eksternal. Jika alamat tidak cocok, koneksi tunnel VPN dengan ketersediaan tinggi (HA) tidak dapat dibuat.
gcloud compute external-vpn-gateways create PEER_GATEWAY_NAME --interfaces \ 0=AWS_GW_IP_1,1=AWS_GW_IP_2,2=AWS_GW_IP_3,3=AWS_GW_IP_4
Ganti kode berikut:
AWS_GW_IP_1
: Alamat IP luar untuk gateway pribadi virtual untuk koneksi 1, tunnel 1AWS_GW_IP_2
: Alamat IP luar untuk gateway pribadi virtual untuk koneksi 1, tunnel 2AWS_GW_IP_3
: Alamat IP luar untuk gateway pribadi virtual untuk koneksi 2, tunnel 1AWS_GW_IP_4
: Alamat IP luar untuk gateway pribadi virtual untuk koneksi 2, tunnel 2
Buat empat tunnel VPN.
Tunnel 1:
gcloud compute vpn-tunnels create tunnel-1 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 0 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_1 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 0
Tunnel 2:
gcloud compute vpn-tunnels create tunnel-2 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 1 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_2 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 0
Tunnel 3:
gcloud compute vpn-tunnels create tunnel-3 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 2 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_3 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 1
Tunnel 4:
gcloud compute vpn-tunnels create tunnel-4 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 3 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_4 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 1
Ganti kode berikut:
PEER_GATEWAY_NAME
: nama gateway peer eksternal yang Anda buat di langkah 1REGION
: region Google Cloud tempat Anda membuat tunnelSHARED_SECRET
: pre-shared key (PSK) Anda, yang harus sesuai dengan pre-shared key untuk tunnel partner yang Anda buat di gateway peer; untuk membuat pre-shared key yang kuat, lihat Membuat pre-shared key yang kuatROUTER_NAME
: nama gateway Cloud Router yang Anda buat di bagian Membuat gateway VPN dengan ketersediaan tinggi (HA) dan Cloud Router di Google Cloud.HA_VPN_GATEWAY_NAME
: nama gateway VPN dengan ketersediaan tinggi (HA) yang Anda buat di bagian Membuat gateway VPN dengan ketersediaan tinggi (HA) dan Cloud Router di Google Cloud.
Buat empat antarmuka Cloud Router.
Pada perintah berikut, ganti setiap
GOOGLE_BGP_IP_TUNNEL
placeholder dengan alamat IP dalam tunnel pada sisi Google Cloud. Anda dapat menemukan nilai dalam file konfigurasi AWS VPN sebagai alamat gateway pelanggan untuk setiap tunnel. Setiap alamat ini harus berada dalam/30
rentang CIDR dalam rentang jaringan169.254.0.0/16
.Antarmuka Cloud Router 1:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-1 \ --vpn-tunnel tunnel-1 \ --ip-address GOOGLE_BGP_IP_TUNNEL_1 \ --mask-length 30 \ --region REGION
Antarmuka Cloud Router 2:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-2 \ --vpn-tunnel tunnel-2 \ --ip-address GOOGLE_BGP_IP_TUNNEL_2 \ --mask-length 30 \ --region REGION
Antarmuka Cloud Router 3:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-3 \ --vpn-tunnel tunnel-3 \ --ip-address GOOGLE_BGP_IP_TUNNEL_3 \ --mask-length 30 \ --region REGION
Antarmuka Cloud Router 4:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-4 \ --vpn-tunnel tunnel-4 \ --ip-address GOOGLE_BGP_IP_TUNNEL_4 \ --mask-length 30 \ --region REGION
Tambahkan peer BGP.
Pada perintah berikut, ganti
PEER_ASN
dengan ASN untuk sisi AWS dari sesi BGP.Koneksi AWS 1, tunnel 1:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn1-tunn1 \ --peer-asn PEER_ASN \ --interface int-1 \ --peer-ip-address AWS_T1_IP \ --region REGION
Koneksi AWS 1, tunnel 2:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn1-tunn2 \ --peer-asn PEER_ASN \ --interface int-2 \ --peer-ip-address AWS_T2_IP \ --region REGION
Koneksi AWS 2, tunnel 1:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn2-tunn1 \ --peer-asn PEER_ASN \ --interface int-3 \ --peer-ip-address AWS_T3_IP \ --region REGION
Koneksi AWS 2, tunnel 2:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn2-tunn2 \ --peer-asn PEER_ASN \ --interface int-4 \ --peer-ip-address AWS_T4_IP \ --region REGION
Memverifikasi konfigurasi
Di Cloud Shell, verifikasi status Cloud Router:
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --format='flattened(result.bgpPeerStatus[].name, result.bgpPeerStatus[].ipAddress, result.bgpPeerStatus[].peerIpAddress)'
Output-nya mirip dengan yang berikut ini:
result.bgpPeerStatus[].peerIpAddress)' result.bgpPeerStatus[0].ipAddress: 169.254.171.18 result.bgpPeerStatus[0].name: aws-conn1-tunn1 result.bgpPeerStatus[0].peerIpAddress: 169.254.171.17 result.bgpPeerStatus[1].ipAddress: 169.254.156.154 result.bgpPeerStatus[1].name: aws-conn1-tunn2 result.bgpPeerStatus[1].peerIpAddress: 169.254.156.153 result.bgpPeerStatus[2].ipAddress: 169.254.123.38 result.bgpPeerStatus[2].name: aws-conn2-tunn1 result.bgpPeerStatus[2].peerIpAddress: 169.254.123.37 result.bgpPeerStatus[3].ipAddress: 169.254.48.186 result.bgpPeerStatus[3].name: aws-conn2-tunn2 result.bgpPeerStatus[3].peerIpAddress: 169.254.48.185
Daftar semua tunnel:
gcloud compute vpn-tunnels list
Output-nya mirip dengan yang berikut ini:
NAME REGION GATEWAY PEER_ADDRESS tunnel-1 us-east4 ha-vpn-gw 34.205.x.x tunnel-2 us-east4 ha-vpn-gw 52.203.x.x tunnel-3 us-east4 ha-vpn-gw 3.208.x.x tunnel-4 us-east4 ha-vpn-gw 52.204.x.x
Periksa status tunnel:
gcloud compute vpn-tunnels describe tunnel-1 \ --region REGION \ --format='flattened(status,detailedStatus)'
Output-nya mirip dengan yang berikut ini:
detailed_status: Tunnel is up and running. status: ESTABLISHED
Mencantumkan rute dinamis yang dipelajari oleh Cloud Router:
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --format="flattened(result.bestRoutes)"
Outputnya mirip dengan hal berikut ini:
result.bestRoutes[0].creationTimestamp: 2021-01-19T20:42:07.366-08:00 result.bestRoutes[0].destRange: 10.2.2.0/24 result.bestRoutes[0].kind: compute#route result.bestRoutes[0].nextHopIp: 169.254.171.17 result.bestRoutes[0].priority: 100 result.bestRoutes[1].creationTimestamp: 2021-01-19T20:42:07.366-08:00 result.bestRoutes[1].destRange: 10.2.2.0/24 result.bestRoutes[1].kind: compute#route result.bestRoutes[1].nextHopIp: 169.254.156.153 result.bestRoutes[1].priority: 100 result.bestRoutes[2].creationTimestamp: 2021-01-19T20:56:26.588-08:00 result.bestRoutes[2].destRange: 10.2.2.0/24 result.bestRoutes[2].kind: compute#route result.bestRoutes[2].nextHopIp: 169.254.123.37 result.bestRoutes[2].priority: 100 result.bestRoutes[3].creationTimestamp: 2021-01-19T20:56:26.588-08:00 result.bestRoutes[3].destRange: 10.2.2.0/24 result.bestRoutes[3].kind: compute#route result.bestRoutes[3].nextHopIp: 169.254.48.185 result.bestRoutes[3].priority: 100
Menguji koneksi VPN
Buat VM uji di setiap sisi tunnel untuk menguji permintaan ping.
Pastikan Anda memiliki aturan firewall VPC untuk mengizinkan traffic ICMP.
Untuk mengetahui petunjuk cara membuat VM Compute Engine, lihat Membuat dan memulai instance Compute Engine.
Untuk mengetahui petunjuk cara membuat instance EC2 di AWS, lihat Meluncurkan instance Amazon EC2.
Uji koneksi menggunakan perintah
ping
.- Jika pengujian
ping
gagal, lihat log di Google Cloud dan log VPN Site-to-Site AWS. Pesan error dalam log dapat membantu Anda mengidentifikasi masalah. Untuk mempelajari cara memecahkan masalah koneksi VPN, lihat resource berikut:
- Jika pengujian
Mengukur bandwidth antar-mesin uji menggunakan iperf.
Pihak Server:
iperf3 -s
Pihak Klien:
iperf3 -c SERVER_IP_ADDRESS -P NUMBER_OF_PARALLEL_SESSIONS
Pembersihan
Hapus resource Google Cloud dan AWS yang telah Anda buat selama tutorial ini.
Menghapus project Google Cloud
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, Anda dapat menghapus project Anda.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Menghapus resource AWS
Langkah selanjutnya
- Pelajari selengkapnya tentang Google Cloud VPN.
- Pelajari selengkapnya tentang praktik terbaik dan arsitektur referensi untuk desain VPC.