Lab: Site NCC ke Site dengan Peralatan SD-WAN flexiWAN

1. Pengantar

Ringkasan

Di lab ini, Anda akan mempelajari beberapa fitur Network Connectivity Center.

Network Connectivity Center (NCC) adalah model bidang kontrol hub-and-spoke untuk pengelolaan konektivitas jaringan di Google Cloud. Resource hub menyediakan model pengelolaan konektivitas terpusat untuk menghubungkan spoke. NCC saat ini mendukung resource jaringan berikut sebagai spoke:

  • Lampiran VLAN
  • Peralatan Router
  • VPN dengan ketersediaan tinggi (HA)

Codelabs memerlukan penggunaan solusi SD-WAN SaaS flexiWAN yang menyederhanakan pengelolaan dan deployment WAN. flexWAN adalah solusi SD-WAN dan SASE open source.

Yang akan Anda bangun

Dalam codelab ini, Anda akan membangun hub dan berbicara topologi SD-WAN untuk menyimulasikan situs cabang jarak jauh yang akan melintasi jaringan backbone Google untuk komunikasi dari situs ke cloud dan dari situs ke situs.

  1. Anda akan men-deploy sepasang vm GCE yang dikonfigurasi untuk "flexiWAN" Agen SD-WAN di VPC hub yang merepresentasikan headend untuk traffic masuk dan keluar ke GCP.
  2. Deploy dua router SD-WAN flexiWAN jarak jauh untuk mewakili dua VPC situs cabang yang berbeda
  3. Untuk pengujian jalur data, Anda akan mengonfigurasi tiga VM GCE untuk melakukan simulasi klien lokal dan server yang dihosting di GCP

84e31c667a487f7a.pngS

Yang akan Anda pelajari

  • Menggunakan NCC untuk menghubungkan kantor cabang jarak jauh menggunakan solusi WAN yang Software-Defined open source
  • Pengalaman langsung dengan solusi WAN yang ditentukan oleh software open source

Yang Anda butuhkan

  • Mengetahui jaringan VPC GCP
  • Mengetahui perutean Cloud Router dan BGP
  • Codelab memerlukan 6 VPC. Periksa Kuota:Jaringan dan minta penambahan Jaringan jika diperlukan, screenshot di bawah:

6bc606cb34bce7e8.pngS

2. Tujuan

  • Menyiapkan Lingkungan GCP
  • Men-deploy instance Edge flexiWAN di GCP
  • Menetapkan NCC Hub dan flexiWAN Edge NVA sebagai spoke
  • Mengonfigurasi dan mengelola instance flexiWAN menggunakan flexiManage
  • Mengonfigurasi pertukaran rute BGP antara vpc-app-svcs dan NVA flexiWAN
  • Membuat situs jarak jauh yang menyimulasikan cabang jarak jauh pelanggan atau pusat data
  • Membuat Terowongan IPSEC antara situs jarak jauh dan NVA
  • Memverifikasi peralatan yang berhasil di-deploy
  • Validasi transfer data situs ke cloud
  • Validasi transfer data dari situs ke situs
  • Membersihkan resource yang digunakan

Tutorial ini mengharuskan pembuatan akun flexiManage gratis untuk mengautentikasi, mengaktivasi, dan mengelola instance flexiEdge.

Sebelum memulai

Menggunakan Google Cloud Console dan Cloud Shell

Untuk berinteraksi dengan GCP, kami akan menggunakan Konsol Google Cloud dan Cloud Shell di seluruh lab ini.

Konsol Google Cloud

Konsol Cloud dapat diakses di https://console.cloud.google.com.

Siapkan item berikut di Google Cloud untuk mempermudah konfigurasi Network Connectivity Center:

Di Konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

Luncurkan Cloud Shell. Codelab ini menggunakan $variables untuk membantu implementasi konfigurasi gcloud di Cloud Shell.

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname

Peran IAM

NCC memerlukan peran IAM untuk mengakses API tertentu. Pastikan untuk mengonfigurasi pengguna Anda dengan peran IAM NCC sesuai kebutuhan.

Nama Peran

Deskripsi

Izin

networkconnectivity.networkAdmin

Memungkinkan administrator jaringan mengelola hub dan spoke.

networkConnectivity.hubs.networkConnectivity.spokes.

networkconnectivity.networkSpokeManager

Memungkinkan penambahan dan pengelolaan spoke di hub. Untuk digunakan di VPC Bersama tempat project host memiliki Hub, tetapi admin lain dalam project lain dapat menambahkan spoke untuk lampiran mereka ke Hub.

networkconnectivity.spokes.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer

Memungkinkan pengguna jaringan melihat berbagai atribut hub dan spoke.

networkconnectivity.hubs.getnetworkconnectivity.hubs.listnetworkconnectivity.spokes.getnetworkconnectivity.spokes.listnetworkconnectivity.spokes.aggregatedList

3. Menyiapkan Lingkungan Network Lab

Ringkasan

Di bagian ini, kita akan men-deploy jaringan VPC dan aturan firewall.

377d97bf3066f259.pngS

Simulasikan Jaringan Situs Cabang Lokal

Jaringan VPC ini berisi subnet untuk instance VM lokal.

Buat subnet dan jaringan situs lokal:

gcloud compute networks create site1-vpc \
--subnet-mode custom

gcloud compute networks create site2-vpc \
--subnet-mode custom

gcloud compute networks create s1-inside-vpc \
--subnet-mode custom

gcloud compute networks create s2-inside-vpc \
--subnet-mode custom

gcloud compute networks subnets create site1-subnet \
--network site1-vpc \
--range 10.10.0.0/24 \
--region us-central1

gcloud compute networks subnets create site2-subnet \
--network site2-vpc \
--range 10.20.0.0/24 \
--region us-east4

gcloud compute networks subnets create s1-inside-subnet \
--network s1-inside-vpc \
--range 10.10.1.0/24 \
--region us-central1

gcloud compute networks subnets create s2-inside-subnet \
--network s2-inside-vpc \
--range 10.20.1.0/24 \
--region us-east4

Buat aturan firewall site1-vpc untuk mengizinkan:

  • SSH, internal, IAP
  • ESP, UDP/500, UDP/4500
  • Rentang 10.0.0.0/8
  • Rentang 192.168.0.0/16
gcloud compute firewall-rules create site1-ssh \--network site1-vpc \
--allow tcp:22

gcloud compute firewall-rules create site1-internal \
--network site1-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create site1-cloud \
--network site1-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create site1-vpn \
--network site1-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router

gcloud compute firewall-rules create site1-iap \
--network site1-vpc --allow tcp:22 --source-ranges=35.235.240.0/20

Buat aturan firewall site2-vpc untuk mengizinkan:

  • SSH, internal, IAP
  • Rentang 10.0.0.0/8
  • Rentang 192.168.0.0/16
gcloud compute firewall-rules create site2-ssh \
--network site2-vpc \
--allow tcp:22

gcloud compute firewall-rules create site2-internal \
--network site2-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create site2-cloud \
--network site1-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create site2-vpn \
--network site1-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router

gcloud compute firewall-rules create site2-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20

Buat aturan firewall s1-inside-vpc untuk mengizinkan:

  • SSH, internal, IAP
  • Rentang 10.0.0.0/8
  • Rentang 192.168.0.0/16
gcloud compute firewall-rules create s1-inside-ssh \
--network s1-inside-vpc \
--allow tcp:22

gcloud compute firewall-rules create s1-inside-internal \
--network s1-inside-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create s1-inside-cloud \
--network s1-inside-vpc  \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create s1-inside-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20

Buat aturan firewall s2-inside-vpc untuk mengizinkan:

  • SSH, internal, IAP
  • Rentang 10.0.0.0/8
  • Rentang 192.168.0.0/16
gcloud compute firewall-rules create s2-inside-ssh \
--network s2-inside-vpc \
--allow tcp:22

gcloud compute firewall-rules create s2-inside-internal \
--network s2-inside-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create s2-inside-cloud \
--network s2-inside-vpc  \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create s2-inside-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20

Untuk tujuan pengujian, buat instance s1-inside-vm dan s2-inside-vm

gcloud compute instances create s1-vm \
--zone=us-central1-a \
--machine-type=e2-micro \
--network-interface subnet=s1-inside-subnet,private-network-ip=10.10.1.3,no-address

gcloud compute instances create s2-vm \
--zone=us-east4-b \
--machine-type=e2-micro \
--network-interface subnet=s2-inside-subnet,private-network-ip=10.20.1.3,no-address

Menyimulasikan Lingkungan Jaringan Cloud GCP

Untuk mengaktifkan traffic site-to-site lintas region melalui jaringan hub-vpc dan spoke, Anda harus mengaktifkan pemilihan rute global di jaringan hub-vpc. Baca selengkapnya di pertukaran rute NCC.

  1. Buat jaringan dan subnet hub-vpc:
gcloud compute networks create hub-vpc \
--subnet-mode custom \
--bgp-routing-mode=global

gcloud compute networks subnets create hub-subnet1 \
--network hub-vpc \
--range 10.1.0.0/24 \
--region us-central1

gcloud compute networks subnets create hub-subnet2 \
--network hub-vpc \
--range 10.2.0.0/24 \
--region us-east4
  1. Buat jaringan dan subnet workload-vpc:
gcloud compute networks create workload-vpc \
--subnet-mode custom \
--bgp-routing-mode=global

gcloud compute networks subnets create workload-subnet1 \
--network workload-vpc \
--range 192.168.235.0/24 \
--region us-central1

gcloud compute networks subnets create workload-subnet2 \
--network workload-vpc \
--range 192.168.236.0/24 \
--region us-east4
  1. Buat aturan firewall Hub-VPC untuk mengizinkan:
  • SSH
  • ESP, UDP/500, UDP/4500
  • rentang 10.0.0.0/8 internal (yang mencakup port TCP 179 diperlukan untuk sesi BGP dari router cloud ke alat router)
gcloud compute firewall-rules create hub-ssh \
--network hub-vpc \
--allow tcp:22

gcloud compute firewall-rules create hub-vpn \
--network hub-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router

gcloud compute firewall-rules create hub-internal \
--network hub-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create hub-iap \
--network hub-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
  1. Buat aturan firewall Workload-VPC yang mengizinkan:
  • SSH
  • rentang 192.168.0.0/16 internal (yang mencakup port TCP 179 yang diperlukan untuk sesi BGP dari router cloud ke alat router)
gcloud compute firewall-rules create workload-ssh \
--network workload-vpc \
--allow tcp:22

gcloud compute firewall-rules create workload-internal \
--network workload-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute --project=$projectname firewall-rules create allow-from-site-1-2 --direction=INGRESS --priority=1000 --network=workload-vpc --action=ALLOW --rules=all --source-ranges=10.10.1.0/24,10.20.1.0/24

gcloud compute firewall-rules create workload-onprem \
--network hub-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create workload-iap \
--network workload-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
  1. Aktifkan Cloud NAT di workload-VPC agar workload1-vm dapat mendownload paket dengan membuat Cloud Router dan Gateway NAT
gcloud compute routers create cloud-router-usc-central-1-nat \
    --network workload-vpc \
    --region us-central1
gcloud compute routers nats create cloudnat-us-central1 \
    --router=cloud-router-usc-central-1-nat \
    --auto-allocate-nat-external-ips \
    --nat-all-subnet-ip-ranges \
    --region us-central1
  1. Buat workload1-vm in "us-central1-a" in workload-VPC, Anda akan menggunakan host ini untuk memverifikasi konektivitas situs ke cloud
gcloud compute instances create workload1-vm \
    --project=$projectname \
    --machine-type=e2-micro \
    --image-family debian-10 \
    --image-project debian-cloud \
    --zone us-central1-a \
    --private-network-ip 192.168.235.3 \
        --no-address \
    --subnet=workload-subnet1 \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to Workload VM1 !!' | tee /var/www/html/index.html
      EOF"

4. Menyiapkan Peralatan Prem untuk SD-WAN

ec754b89e375f3cc.png

Membuat VM Lokal untuk SDWAN (Perangkat)

Di bagian berikut, kita akan membuat peralatan router site1-nva dan site2-nva yang bertindak sebagai router lokal.

Membuat Instance

Buat alat site1-router bernama site1-nva

gcloud compute instances create site1-nva \
--zone=us-central1-a \
--machine-type=e2-medium \
--network-interface subnet=site1-subnet \
--network-interface subnet=s1-inside-subnet,no-address \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-central1-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any \
--can-ip-forward

Buat alat site2-router bernama site2-nva

gcloud compute instances create site2-nva \
--zone=us-east4-b \
--machine-type=e2-medium \
--network-interface subnet=site2-subnet \
--network-interface subnet=s2-inside-subnet,no-address \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-east4-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any \
--can-ip-forward 

5. Instal flexiWAN di site1-nva

Membuka koneksi SSH ke site1-nva. Jika waktu tunggu habis, coba lagi

gcloud compute ssh site1-nva --zone=us-central1-a

Instal flexiWAN di site1-nva

sudo su 

sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y

Siapkan VM untuk pendaftaran bidang kontrol flexiWAN.

Setelah penginstalan flexiWAN selesai, jalankan perintah fwsystem_checker untuk memeriksa konfigurasi sistem Anda. Perintah ini memeriksa persyaratan sistem dan membantu memperbaiki error konfigurasi di sistem Anda.

  • Pilih opsi 2 untuk konfigurasi cepat dan senyap
  • keluar setelahnya dengan 0.
  • Jangan tutup jendela Cloud Shell.
root@site-1-nva-1:/home/user# fwsystem_checker
 
<output snipped>

        [0] - quit and use fixed parameters
         1  - check system configuration
         2  - configure system silently
         3  - configure system interactively
         4  - restore system checker settings to default
        ------------------------------------------------
Choose: 2

<output snipped>

        [0] - quit and use fixed parameters
         1  - check system configuration
         2  - configure system silently
         3  - configure system interactively
         4  - restore system checker settings to default
        ------------------------------------------------
Choose: 0
Please wait..
Done.
=== system checker ended ====

Biarkan sesi tetap terbuka untuk langkah-langkah berikut

6. Mendaftarkan site1-nva dengan pengontrol SD-WAN

Langkah-langkah ini diperlukan untuk menyelesaikan penyediaan NVA flexiWAN yang dikelola dari Konsol flexiManage. Pastikan pengaturan flexiWAN sudah disiapkan sebelum melanjutkan.

Autentikasi NVA flexiWAN yang baru di-deploy dengan flexiManage menggunakan token keamanan dengan login ke Akun flexiManage. Token yang sama dapat digunakan kembali di semua peralatan router.

Pilih Inventaris → Token, buat token & pilih salin

12c173b589d220ee.pngS

Kembali ke Cloud Shell (site1-nva) dan tempel token ke direktori /etc/flexiwan/agent/token.txt dengan melakukan langkah berikut

nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

22e1cf5bad3d3086.pngS

Aktifkan Router Situs di Konsol flexiManage

Login ke Konsol flexiManage untuk mengaktifkan site1-nva di pengontrol

Di panel kiri, Pilih Inventaris → Perangkat, klik perangkat "Unknown"

f7719c28f78e907a.png

Masukkan nama host site1-nva dan Setujui perangkat dengan menggeser tombol ke kanan.

9a6c6c45e1cad732.pngS

Pilih Tab "Interfaces"

Temukan "Ditugaskan" Kolom dan klik "No" dan ubah setelan ke "Yes"

a8772059968af13e.png

Pilih Tab Firewall dan klik tanda "+" untuk menambahkan aturan firewall masuk

Pilih antarmuka WAN untuk menerapkan aturan ssh seperti yang dijelaskan di bawah

df03b8a6c817ccd2.png

Klik "Perbarui Perangkat"

96b9feb77b8517cd.pngS

Mulai site1-nva dari pengontrol flexiWAN. Kembali ke Inventaris → Perangkat → site1-nva pilih 'Mulai Perangkat'

708215cf91ffc09.pngS

Status - Menyinkronkan

918d72eeacc386fa.pngS

Status - Disinkronkan

5135096dbff49819.pngS

Indikator peringatan dapat dilihat di bagian Pemecahan masalah → Notifikasi. Setelah dilihat, pilih semua, lalu tandai sebagai telah dibaca

9e79db3572f91925.pngS

7. Instal flexiWAN di site2-nva

Buka tab baru dan buat sesi Cloud Shell, perbarui $variables untuk membantu penerapan konfigurasi gcloud

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname

Membuka koneksi SSH ke site2-nva. Jika waktu tunggu habis, coba lagi

gcloud compute ssh site2-nva --zone=us-east4-b

Instal flexiWAN di site2-nva

sudo su 

sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y

Siapkan VM untuk pendaftaran bidang kontrol flexiWAN.

Setelah penginstalan flexiWAN selesai, jalankan perintah fwsystem_checker untuk memeriksa konfigurasi sistem Anda. Perintah ini memeriksa persyaratan sistem dan membantu memperbaiki error konfigurasi di sistem Anda.

  • Pilih opsi 2 untuk konfigurasi cepat dan senyap
  • keluar setelahnya dengan 0.
  • Jangan tutup jendela Cloud Shell.
root@site2-nva:/home/user# fwsystem_checker
 
<output snipped>

        [0] - quit and use fixed parameters
         1  - check system configuration
         2  - configure system silently
         3  - configure system interactively
         4  - restore system checker settings to default
        ------------------------------------------------
Choose: 2

<output snipped>

        [0] - quit and use fixed parameters
         1  - check system configuration
         2  - configure system silently
         3  - configure system interactively
         4  - restore system checker settings to default
        ------------------------------------------------
Choose: 0
Please wait..
Done.
=== system checker ended ====

8. Mendaftarkan site2-nva dengan Pengontrol SD-WAN

Langkah-langkah ini diperlukan untuk menyelesaikan penyediaan NVA flexiWAN yang dikelola dari Konsol flexiManage. Pastikan pengaturan flexiWAN sudah disiapkan sebelum melanjutkan.

Autentikasi NVA flexiWAN yang baru di-deploy dengan flexiManage menggunakan token keamanan dengan login ke Akun flexiManage. Token yang sama dapat digunakan kembali di semua peralatan router.

Pilih Inventaris → Token, buat token & pilih copy

12c173b589d220ee.pngS

Kembali ke Cloud Shell (site2-nva) dan tempel token ke direktori /etc/flexiwan/agent/token.txt dengan melakukan langkah berikut

nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

22e1cf5bad3d3086.pngS

Aktifkan Router Situs dari Konsol flexiManage

Login ke Konsol flexiManage untuk mengaktifkan site2-nva di pengontrol

Di panel kiri, Pilih Inventaris → Perangkat, klik perangkat "Unknown"

c98696cf67043ec2.png

Masukkan nama host site2-nva dan Setujui perangkat dengan menggeser tombol ke kanan.

de418da3f581e0bd.png

Pilih Tab "Interfaces"

Temukan "Ditugaskan" Kolom dan klik "No" dan ubah setelan ke "Yes"

eee6a98dba7b2a04.png

Pilih Tab Firewall dan klik tanda "+" untuk menambahkan aturan firewall masuk. Pilih antarmuka WAN untuk menerapkan aturan ssh seperti yang dijelaskan di bawah

df03b8a6c817ccd2.png

Klik "Perbarui Perangkat"

96b9feb77b8517cd.pngS

Mulai site2-nva dari pengontrol flexiWAN. Kembali ke Inventaris → Perangkat → site2-nva pilih 'Mulai Perangkat'

c80291bb430dce7d.png

Satus - Menyinkronkan

da9c08ebfbd1265e.png

Status - Disinkronkan

5135096dbff49819.pngS

Indikator peringatan dapat dilihat di bagian Pemecahan masalah → Notifikasi. Setelah dilihat, pilih semua, lalu tandai sebagai telah dibaca

2c21322b87d848b.pngS

9. Menyiapkan Peralatan SDWAN Hub

Di bagian berikut, Anda akan membuat dan mendaftarkan router Hub (hub-r1 &hub-r2) dengan Pengontrol flexiWAN seperti yang sebelumnya dieksekusi dengan rute situs.

Buka tab baru dan buat sesi Cloud Shell, perbarui $variables untuk membantu penerapan konfigurasi gcloud

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname

Membuat Instance NVA Hub

Buat alat hub-r1:

gcloud compute instances create hub-r1 \
--zone=us-central1-a \
--machine-type=e2-medium \
--network-interface subnet=hub-subnet1 \
--network-interface subnet=workload-subnet1,no-address \
--can-ip-forward \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-central1-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any

Buat alat hub-r2:

gcloud compute instances create hub-r2 \
--zone=us-east4-b \
--machine-type=e2-medium \
--network-interface subnet=hub-subnet2 \
--network-interface subnet=workload-subnet2,no-address \
--can-ip-forward \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-east4-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any

10. Menginstal flexiWAN di Instance Hub untuk hub-r1

Membuka koneksi SSH ke hub-r1

gcloud compute ssh hub-r1 --zone=us-central1-a

Instal agen flexiWAN di kedua hub-r1

sudo su
sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y

Menyiapkan VM hub-r1 untuk pendaftaran flexiWAN.

Setelah penginstalan flexiWAN selesai, jalankan perintah fwsystem_checker untuk memeriksa konfigurasi sistem Anda. Perintah ini memeriksa persyaratan sistem dan membantu memperbaiki error konfigurasi di sistem Anda.

root@hub-r1:/home/user# fwsystem_checker
  • Pilih opsi 2 untuk konfigurasi cepat dan senyap
  • keluar setelahnya dengan 0.
  • Jangan tutup jendela Cloud Shell.

11. Mendaftarkan VM hub-r1 pada pengontrol flexiManage

Autentikasi NVA flexiWAN yang baru di-deploy dengan flexiManage menggunakan token keamanan dengan login ke Akun flexiManage.

  • Pilih Inventaris → Token, lalu salin token

Kembali ke Cloud Shell (hub-r1), lalu tempel token ke direktori /etc/flexiwan/agent/token.txt dengan melakukan langkah berikut

nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

12. Menginstal flexiWAN di Instance Hub untuk hub-r2

Membuka koneksi SSH ke hub-r2

gcloud compute ssh hub-r2 --zone=us-east4-b

Instal agen flexiWAN di kedua hub-r2

sudo su
sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y

Menyiapkan VM hub-r2 untuk pendaftaran flexiWAN.

Setelah penginstalan flexiWAN selesai, jalankan perintah fwsystem_checker untuk memeriksa konfigurasi sistem Anda. Perintah ini memeriksa persyaratan sistem dan membantu memperbaiki error konfigurasi di sistem Anda.

root@hub-r2:/home/user# fwsystem_checker
  • Pilih opsi 2 untuk konfigurasi cepat dan senyap
  • keluar setelahnya dengan 0.
  • Jangan tutup jendela Cloud Shell.

13. Mendaftarkan VM hub-r2 di pengontrol flexiManage

Autentikasi NVA flexiWAN yang baru di-deploy dengan flexiManage menggunakan token keamanan dengan login ke Akun flexiManage.

  • Pilih Inventaris → Token, lalu salin token

Kembali ke Cloud Shell (hub-r2), lalu tempel token ke direktori /etc/flexiwan/agent/token.txt dengan melakukan langkah berikut

nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

Aktifkan router Hub hub-r1 di Konsol flexiManage

Login ke Konsol flexiManage

  • Buka Inventaris → Perangkat
  • Cari dan catat Nama host untuk hub-r1 dan hub-r2 keduanya "unknown"

1a88ffa4409ad3c0.pngS

Pilih perangkat Tidak Dikenal dengan HostName hub-r1

  • Masukkan nama host hub-r1
  • Setujui perangkat, Geser tombol ke kanan.

Pilih Tab Interfaces

  • Cari Kolom "Assigned"
  • Di samping baris antarmuka, klik "No" untuk mengubah setelan ke "Yes"

Pilih Tab Firewall

  • Klik "+" ke Tambahkan aturan firewall Masuk
  • Pilih antarmuka WAN untuk mewarisi aturan
  • Izinkan SSH port 22 dengan protokol TCP
  • Klik "Update Perangkat"

Mulai alat hub-r1 untuk SD-WAN dari pengontrol flexiWAN

  • Kembali ke Inventaris → Perangkat → hub-r1

Pilih 'Mulai Perangkat'

  • Tunggu hingga sinkronisasi selesai dan catat "running" status

Aktifkan router Hub hub-r2 di Konsol flexiManage

Pilih perangkat Tidak Dikenal dengan HostName hub-r2

  • Masukkan nama host hub-r2
  • Setujui perangkat, Geser kenop ke kanan.

Pilih Tab Antarmuka

  • Cari Kolom "Assigned"
  • Di samping baris antarmuka, klik "No" untuk mengubah setelan ke "Yes"

Pilih Tab Firewall

  • Klik "+" ke Tambahkan aturan firewall Masuk
  • Pilih antarmuka WAN untuk mewarisi aturan
  • Mengizinkan port SSH 22 dengan protokol TCP
  • Klik Add Rule
  • Klik "Update Perangkat"

Mulai alat hub-r2 untuk SD-WAN dari pengontrol flexiWAN

  • Kembali ke Inventaris → Perangkat → hub-r2, pilih ‘Mulai Perangkat'
  • Tunggu hingga sinkronisasi selesai dan catat "running" status

14. Network Connectivity Center di GCP Hub

802fe0ef1e98c563.pngS

Aktifkan Layanan API

Aktifkan API konektivitas jaringan jika belum diaktifkan:

gcloud services enable networkconnectivity.googleapis.com

Membuat NCC Hub

gcloud network-connectivity hubs create ncc-hub
Create request issued for: [ncc-hub]
Waiting for operation [projects/user-3p-dev/locations/global/operations/operation-1668793629598-5edc24b7ee3ce-dd4c765b-5ca79556] to complete...done.     
Created hub [ncc-hub]

Mengonfigurasi kedua peralatan router sebagai spoke NCC

Temukan URI dan alamat IP untuk hub-r1 dan hub-r2, lalu catat outputnya. Anda akan memerlukan informasi ini di langkah berikutnya.

Pastikan untuk mencatat alamat IP (192.168.x.x) dari instance hub-r1 dan hub-r2.

gcloud compute instances describe hub-r1 \
--zone=us-central1-a \
--format="value(selfLink.scope(projects))"

gcloud compute instances describe hub-r1 --zone=us-central1-a | grep "networkIP"
gcloud compute instances describe hub-r2 \
--zone=us-east4-b \
--format="value(selfLink.scope(projects))"

gcloud compute instances describe hub-r2 --zone=us-east4-b | grep "networkIP"

Menambahkan vnic hub-r1 networkIP (192.168.x.x) sebagai spoke dan memungkinkan transfer data situs ke situs

gcloud network-connectivity spokes linked-router-appliances create s2s-wrk-cr1 \
--hub=ncc-hub \
--router-appliance=instance="https://www.googleapis.com/compute/projects/$projectname/zones/us-central1-a/instances/hub-r1",ip=192.168.235.4 \
--region=us-central1 \
--site-to-site-data-transfer

Menambahkan vnic hub-r2 networkIP (192.168.x.x) sebagai spoke dan memungkinkan transfer data situs ke situs

gcloud network-connectivity spokes linked-router-appliances create s2s-wrk-cr2 \
--hub=ncc-hub \
--router-appliance=instance=/projects/$projectname/zones/us-east4-b/instances/hub-r2,ip=192.168.236.101 \
--region=us-east4 \
--site-to-site-data-transfer

Mengonfigurasi Cloud Router untuk membuat BGP dengan Hub-R1

Pada langkah berikut, buat Cloud Router dan umumkan subnet VPC workload 192.168.235.0/24

Membuat router cloud di us-central1 yang akan berkomunikasi dengan BGP dengan hub-r1

gcloud compute routers create wrk-cr1 \
--region=us-central1 \
--network=workload-vpc \
--asn=65002 \
--set-advertisement-groups=all_subnets \
--advertisement-mode=custom

Dengan mengonfigurasi peralatan router sebagai NCC Spoke, router cloud dapat menegosiasikan BGP pada antarmuka virtual.

Membuat dua antarmuka pada {i>cloud router<i} yang akan bertukar pesan BGP dengan hub-r1.

Alamat IP dipilih dari subnet workload dan & dapat diubah jika diperlukan.

gcloud compute routers add-interface wrk-cr1 \
--region=us-central1 \
--subnetwork=workload-subnet1 \
--interface-name=int0 \
--ip-address=192.168.235.101 

gcloud compute routers add-interface wrk-cr1 \
--region=us-central1 \
--subnetwork=workload-subnet1 \
--interface-name=int1 \
--ip-address=192.168.235.102 \
--redundant-interface=int0

Konfigurasikan antarmuka Cloud Router untuk membuat BGP dengan vNIC-1 hub-r1, lalu perbarui alamat peer-ip dengan Alamat IP hub-r1 networkIP . Perhatikan, Alamat IP yang sama digunakan untuk int0 & int1.

gcloud compute routers add-bgp-peer wrk-cr1 \
    --peer-name=hub-cr1-bgp-peer-0 \
    --interface=int0 \
    --peer-ip-address=192.168.235.4 \
    --peer-asn=64111 \
    --instance=hub-r1 \
    --instance-zone=us-central1-a \
    --region=us-central1

gcloud compute routers add-bgp-peer wrk-cr1 \
    --peer-name=hub-cr1-bgp-peer-1 \
    --interface=int1 \
    --peer-ip-address=192.168.235.4 \
    --peer-asn=64111 \
    --instance=hub-r1 \
    --instance-zone=us-central1-a \
    --region=us-central1

Verifikasi Status BGP, pada tahap ini di code lab, BGP adalah "status terhubung" karena peralatan {i>router<i} jaringan belum dikonfigurasi untuk BGP.

gcloud compute routers get-status wrk-cr1 --region=us-central1

Mengonfigurasi Workload-cr2 untuk membuat BGP dengan Hub-R2

Pada langkah berikut, buat Cloud Router dan umumkan subnet VPC workload 192.168.236.0/24

Membuat router cloud di us-east4 yang akan berkomunikasi dengan BGP dengan hub-r2

gcloud compute routers create wrk-cr2 \
--region=us-east4 \
--network=workload-vpc \
--asn=65002 \
--set-advertisement-groups=all_subnets \
--advertisement-mode=custom

Buat sepasang antarmuka di router cloud yang akan bertukar pesan BGP dengan hub-r2, Alamat IP dipilih dari subnet workload & dapat diubah jika diperlukan.

gcloud compute routers add-interface wrk-cr2 \
--region=us-east4 \
--subnetwork=workload-subnet2 \
--interface-name=int0 \
--ip-address=192.168.236.5 


gcloud compute routers add-interface wrk-cr2 \
--region=us-east4 \
--subnetwork=workload-subnet2 \
--interface-name=int1 \
--ip-address=192.168.236.6 \
--redundant-interface=int0

Konfigurasikan antarmuka Cloud Router untuk membuat BGP dengan vNIC-1 hub-r2, lalu perbarui alamat peer-ip dengan Alamat IP hub-r1 networkIP . Perhatikan, Alamat IP yang sama digunakan untuk int0 & int1.

gcloud compute routers add-bgp-peer wrk-cr2 \
    --peer-name=hub-cr2-bgp-peer-0 \
    --interface=int0 \
    --peer-ip-address=192.168.236.101 \
    --peer-asn=64112 \
    --instance=hub-r2 \
    --instance-zone=us-east4-b \
    --region=us-east4

gcloud compute routers add-bgp-peer wrk-cr2 \
    --peer-name=hub-cr2-bgp-peer-1 \
    --interface=int1 \
    --peer-ip-address=192.168.236.101 \
    --peer-asn=64112 \
    --instance=hub-r2 \
    --instance-zone=us-east4-b \
    --region=us-east4

Verifikasi Status BGP, pada tahap ini di code lab, BGP adalah "status terhubung" karena peralatan {i>router<i} jaringan belum dikonfigurasi untuk BGP.

gcloud compute routers get-status wrk-cr2 --region=us-east4

15. Mengonfigurasi peralatan router Hub untuk BGP

Mengonfigurasi hub-r1 untuk BGP

Pastikan untuk login ke Konsol flexiManage

Buka InventarisPerangkathub-r1, lalu pilih perangkat dengan HostName:hub-r1

  • Klik tab "Routing"
  • Klik "BGP Configuration"
  • Nonaktifkan "Distribusikan Ulang Rute OSPF"
  • Konfigurasikan hub-r1 untuk BGP dengan parameter ini, lalu klik "Simpan"

8d470056f620717f.pngS

Pilih "Interfaces" , temukan antarmuka LAN, lalu cari kolom "Routing"

  • Klik "tidak ada" untuk membuka menu guna memilih BGP sebagai protokol perutean

82310aab05e9e414.pngS

  • Di bagian atas halaman, klik "update perangkat"

Mengonfigurasi hub-r2 untuk BGP

Pastikan untuk login ke Konsol flexiManage

Buka Inventaris → Perangkathub-r2, pilih perangkat dengan HostName:hub-r2

  • Klik tab "Routing"
  • Klik "BGP Configuration"
  • Nonaktifkan "Distribusikan Ulang Rute OSPF"
  • Konfigurasikan hub-r2 untuk BGP dengan parameter ini, lalu klik "Save"

8ecb14e2c046012e.pngS

Pilih "Interfaces" tab, temukan antarmuka LAN, dan cari kolom "{i>Routing<i}"

  • Klik "tidak ada" untuk membuka menu drop-down guna memilih BGP sebagai protokol perutean

41a381f81f2b500e.pngS

  • Di bagian atas halaman, klik "update perangkat"

Pilih "pemilihan rute" Beranda

  • Konfirmasi bahwa hub-r2 telah mempelajari rute BGP dari wrk-cr2

ddf3e811b193ec10.png

16. Pertukaran Rute BGP antar-Peralatan Router

Menetapkan ASN lokal untuk situs jarak jauh

Mengonfigurasi ASN BGP lokal untuk site1-nva dan site2-nva. Setelah dikonfigurasi, kami kemudian akan membuat Tunnel IPSEC antara situs jarak jauh dan router hub.

Pilih perangkat dengan alamat HostName:site1-nva

  • Klik tab "Routing"
  • Klik "BGP Configuration"
  • Nonaktifkan "Distribusikan Ulang Rute OSPF"
  • BGP diaktifkan
  • ASN Lokal 7269 → Simpan
  • Update Perangkat
  • Tab Antarmuka → LAN → Perutean → BGP
  • Update Perangkat

Pilih perangkat dengan alamat HostName:site2-nva

  • Klik tab "Routing"
  • Klik "BGP Configuration"
  • Nonaktifkan "Distribusikan Ulang Rute OSPF"
  • BGP diaktifkan
  • ASN Lokal 7270 → Simpan
  • Update Perangkat
  • Tab Antarmuka → LAN → Perutean → BGP
  • Update Perangkat

Mengonfigurasi tunnel VPN antara Site Appliance dan Hub Appliance

Pastikan untuk login ke Konsol flexiManage

  • Buka Inventaris → Perangkat
  • Pilih kotak di samping nama host site1-nva dan hub-r1 untuk membuat tunnel VPN di antara pasangan NVA ini
  • Klik Actions→ Create Tunnels, lalu konfigurasikan

d870b4049a0e7fcf.png

c50d794442c0bdd0.png

  • Pilih Create Tunnels
  • Hapus tanda centang dari site1-nva dan ub-r1

Ulangi langkah-langkah untuk membuat tunnel antara site2-nva dan hub-r2 dengan memilih parameter yang sesuai

37c86e17b74e98ca.pngS

Pastikan sepasang tunnel dibuat di antara setiap pasangan NVA.

  • Di panel samping kiri, pilih "inventaris" dan Klik "Tunnels" dan cari kolom status

a31e7a73aff53b66.png

Verifikasi bahwa "site1-nva" mempelajari rute ke subnet 192.168.235.0/24 dan 192.168.236.0/24

  • Pilih Inventaris → Perangkat → site1-nva, lalu klik tab "Routing"

Pada contoh output di bawah, flexiWAN otomatis membuat tunnel menggunakan alamat IP host 10.100.0.6 cef8dee200ac600a.png

17. Memverifikasi Konektivitas Jalur Data

Verifikasi konektivitas situs ke cloud dari lokal

Lihat diagram, Verifikasi bahwa jalur data antara s1-vm dan workload1-vm

2a403992934279b3.pngS

Mengonfigurasi rute VPC Statis untuk Situs ke Cloud

Site1-VPC dan Site2-VPC lokal menyimulasikan jaringan pusat data lokal.

Peralatan router Site-1-nva dan site-2-nva menggunakan konektivitas VPN untuk menjangkau jaringan hub.

Untuk kasus penggunaan situs ke cloud**,** buat rute statis ke tujuan 192.168.0.0/16 menggunakan peralatan router sebagai hop berikutnya untuk menjangkau jaringan di jaringan cloud GCP.

Di s1-inside-vpc, buat rute statis untuk tujuan cloud (192.168.0.0/16):

gcloud compute routes create site1-subnet-route  \
--network=s1-inside-vpc \
--destination-range=192.168.0.0/16  \
--next-hop-instance=site1-nva \
--next-hop-instance-zone=us-central1-a

Di s2-inside-vpc, buat rute statis untuk tujuan cloud (192.168.0.0/16):

gcloud compute routes create site2-subnet-route  \
--network=s2-inside-vpc \
--destination-range=192.168.0.0/16  \
--next-hop-instance=site2-nva \
--next-hop-instance-zone=us-east4-b

Di cloudshell, cari alamat IP "workload1-vm." Anda memerlukan ini untuk menguji konektivitas dari "s1-vm".

gcloud compute instances describe workload1-vm --zone=us-central1-a | grep "networkIP"

Membuka koneksi SSH ke s1-vm. Jika waktu tunggu habis, coba lagi

gcloud compute ssh s1-vm --zone=us-central1-a

Jalankan SSH ke "s1-vm", lalu gunakan perintah "curl" untuk membuat sesi TCP ke alamat IP workload1-VM.

s1-vm:~$ curl 192.168.235.3 -vv
*   Trying 192.168.235.3:80...
* Connected to 192.168.235.3 (192.168.235.3) port 80 (#0)
> GET / HTTP/1.1
> Host: 192.168.235.3
> User-Agent: curl/7.74.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Date: Wed, 07 Dec 2022 15:12:08 GMT
< Server: Apache/2.4.54 (Debian)
< Last-Modified: Tue, 06 Dec 2022 00:57:46 GMT
< ETag: "1f-5ef1e4acfa1d9"
< Accept-Ranges: bytes
< Content-Length: 31
< Content-Type: text/html
< 
Page served from: workload1-vm
* Connection #0 to host 192.168.235.3 left intact

Verifikasi Konektivitas Situs ke Situs

Lihat diagram, pastikan jalur data antara s1-vm dan s2-vm

1a7ec558ab1ecd37.pngS

Mengonfigurasi rute VPC Statis untuk Situs ke Situs

Untuk mengarahkan traffic site-to-site antara Situs 1 dan Situs 2 menggunakan jaringan global GCP, Anda akan membuat rute statis ke tujuan subnet situs jarak jauh menggunakan peralatan router lokal sebagai hop berikutnya.

Pada langkah berikutnya, VPC workload akan dikonfigurasi dengan NCC untuk mendukung transfer data dari situs ke situs.

Di s1-inside-vpc, buat rute statis untuk menjangkau site2-subnet (10.20.1.0/24):

gcloud compute routes create site1-sn1-route  \
--network=s1-inside-vpc \
--destination-range=10.20.1.0/24  \
--next-hop-instance=site1-nva \
--next-hop-instance-zone=us-central1-a

Di s2-inside-vpc, buat rute statis untuk menjangkau site1-subnet (10.10.1.0/24):

gcloud compute routes create site2-sn1-route  \
--network=s2-inside-vpc \
--destination-range=10.10.1.0/24  \
--next-hop-instance=site2-nva \
--next-hop-instance-zone=us-east4-b

Di cloudshell, cari alamat IP "s2-vm". Anda memerlukan ini untuk menguji konektivitas dari S1-vm.

gcloud compute instances describe s2-vm --zone=us-east4-b | grep networkIP

Membuka koneksi SSH ke s1-vm. Jika waktu tunggu habis, coba lagi

gcloud compute ssh s1-vm --zone=us-central1-a

Jalankan SSH ke "s1-vm" dan "ping" alamat IP "s2-vm".

s1-vm:~$ ping 10.20.1.3
PING 10.20.1.3 (10.20.1.3) 56(84) bytes of data.
64 bytes from 10.20.1.3: icmp_seq=1 ttl=60 time=99.1 ms
64 bytes from 10.20.1.3: icmp_seq=2 ttl=60 time=94.3 ms
64 bytes from 10.20.1.3: icmp_seq=3 ttl=60 time=92.4 ms
64 bytes from 10.20.1.3: icmp_seq=4 ttl=60 time=90.9 ms
64 bytes from 10.20.1.3: icmp_seq=5 ttl=60 time=89.7 ms

18. Pembersihan

Login ke Cloud Shell dan hapus instance VM di jaringan situs hub dan cabang

#on prem instances
gcloud compute instances delete s1-vm --zone=us-central1-a --quiet
gcloud compute instances delete s2-vm --zone=us-east4-b --quiet

#delete on prem firewall rules
gcloud compute firewall-rules delete site1-ssh --quiet
gcloud compute firewall-rules delete site1-internal --quiet
gcloud compute firewall-rules delete site1-cloud --quiet
gcloud compute firewall-rules delete site1-vpn  --quiet
gcloud compute firewall-rules delete site1-iap --quiet
gcloud compute firewall-rules delete site2-ssh --quiet
gcloud compute firewall-rules delete site2-internal --quiet
gcloud compute firewall-rules delete site2-cloud --quiet
gcloud compute firewall-rules delete site2-vpn  --quiet
gcloud compute firewall-rules delete site2-iap --quiet
gcloud compute firewall-rules delete allow-from-site-1-2 --quiet
gcloud compute firewall-rules delete s2-inside-cloud s2-inside-internal s2-inside-ssh --quiet
gcloud compute firewall-rules delete s1-inside-cloud s1-inside-iap s1-inside-internal s1-inside-ssh s2-inside-cloud s2-inside-iap s2-inside-internal s2-inside-ssh --quiet


#delete ncc spokes
gcloud network-connectivity spokes delete s2s-wrk-cr1 --region us-central1 --quiet
gcloud network-connectivity spokes delete s2s-wrk-cr2 --region us-east4 --quiet

#delete ncc hub
gcloud network-connectivity hubs delete ncc-hub --quiet

#delete the cloud router
gcloud compute routers delete wrk-cr1 --region=us-central1 --quiet
gcloud compute routers delete wrk-cr2 --region=us-east4 --quiet

#delete the instances

gcloud compute instances delete hub-r1 --zone=us-central1-a --quiet
gcloud compute instances delete hub-r2 --zone=us-east4-b --quiet
gcloud compute instances delete workload1-vm --zone=us-central1-a --quiet
gcloud compute instances delete site1-nva --zone=us-central1-a --quiet
gcloud compute instances delete site2-nva --zone=us-east4-b --quiet

#delete on prem subnets

gcloud compute networks subnets delete hub-subnet1 s1-inside-subnet site1-subnet workload-subnet1 --region=us-central1 --quiet

gcloud compute networks subnets delete hub-subnet2 s2-inside-subnet  site2-subnet workload-subnet2 --region=us-east4 --quiet 

#delete hub firewall rule
gcloud compute firewall-rules delete hub-ssh --quiet
gcloud compute firewall-rules delete hub-vpn --quiet
gcloud compute firewall-rules delete hub-internal --quiet
gcloud compute firewall-rules delete hub-iap --quiet

gcloud compute firewall-rules delete workload-ssh --quiet
gcloud compute firewall-rules delete workload-internal --quiet
gcloud compute firewall-rules delete workload-onprem --quiet
gcloud compute firewall-rules delete workload-iap --quiet

#delete on vpcs
gcloud compute networks delete hub-vpc s1-inside-vpc s2-inside-vpc site2-vpc workload-vpc --quiet 

19. Selamat!

Anda telah menyelesaikan Lab Network Connectivity Center!

Yang telah Anda pelajari

  • Konfigurasi integrasi WAN Software Defined untuk situs NCC ke cloud
  • Konfigurasi integrasi WAN Software Defined untuk situs NCC

Langkah Berikutnya

©Google, LLC atau afiliasinya. Semua hak dilindungi undang-undang. Jangan disebarluaskan.