ห้องทดลอง: พื้นที่สำนักงาน NCC ที่มีอุปกรณ์ FlexiWAN SD-WAN

1. บทนำ

ภาพรวม

ในแล็บนี้ คุณจะได้สำรวจฟีเจอร์บางอย่างของ Network Connectivity Center

ศูนย์การเชื่อมต่อเครือข่าย (NCC) เป็นโมเดลระนาบควบคุมแบบฮับและกิ่งสำหรับการจัดการการเชื่อมต่อเครือข่ายใน Google Cloud ทรัพยากรฮับมีรูปแบบการจัดการการเชื่อมต่อแบบรวมศูนย์เพื่อเชื่อมต่อ Spoke ปัจจุบัน NCC รองรับทรัพยากรเครือข่ายต่อไปนี้เป็น Spoke

  • ไฟล์แนบ VLAN
  • อุปกรณ์เราเตอร์
  • VPN ความพร้อมใช้งานสูง

Codelabs กำหนดให้ใช้ SD-WAN solution ของ flexiWAN SaaS ซึ่งช่วยลดความซับซ้อนในการติดตั้งใช้งานและการจัดการ WAN flexWAN เป็นโซลูชัน SD-WAN และ SASE แบบโอเพนซอร์ส

สิ่งที่คุณจะสร้าง

ในโค้ดแล็บนี้ คุณจะได้สร้างโทโพโลยี SD-WAN แบบฮับและสโป๊กเพื่อจำลองไซต์สาขาที่อยู่ระยะไกลซึ่งจะข้ามผ่านเครือข่ายแกนหลักของ Google เพื่อการสื่อสารจากไซต์ไปยังระบบคลาวด์และจากไซต์ไปยังไซต์

  1. คุณจะทำให้ใช้งานได้ VM ของ GCE 2 รายการที่กำหนดค่าสำหรับตัวแทน SD-WAN ของ "flexiWAN" ใน VPC ฮับซึ่งแสดงถึงส่วนหัวสำหรับการรับส่งข้อมูลขาเข้าและขาออกไปยัง GCP
  2. ทำให้ใช้งานได้เราเตอร์ flexiWAN SD-WAN ระยะไกล 2 ตัวเพื่อแสดง VPC ของสาขา 2 แห่งที่แตกต่างกัน
  3. สำหรับการทดสอบเส้นทางข้อมูล คุณจะต้องกำหนดค่า GCE VM 3 รายการเพื่อจำลองไคลเอ็นต์ในองค์กรและเซิร์ฟเวอร์ที่โฮสต์ใน GCP

84e31c667a487f7a.png

สิ่งที่คุณจะได้เรียนรู้

  • การใช้ NCC เพื่อเชื่อมต่อสำนักงานสาขาที่อยู่ห่างไกลโดยใช้โซลูชัน WAN ที่กำหนดโดยซอฟต์แวร์แบบโอเพนซอร์ส
  • ประสบการณ์การลงมือปฏิบัติจริงกับโซลูชัน WAN ที่กำหนดโดยซอฟต์แวร์โอเพนซอร์ส

สิ่งที่คุณต้องมี

  • ความรู้เกี่ยวกับเครือข่าย VPC ของ GCP
  • ความรู้เกี่ยวกับ Cloud Router และการกำหนดเส้นทาง BGP
  • Codelab ต้องใช้ VPC 6 รายการ ตรวจสอบโควต้า: เครือข่ายและขอเครือข่ายเพิ่มเติมหากจำเป็น ภาพหน้าจอด้านล่าง

6bc606cb34bce7e8.png

2. วัตถุประสงค์

  • ตั้งค่าสภาพแวดล้อม GCP
  • นำอินสแตนซ์ FlexiWAN Edge ไปใช้งานใน GCP
  • สร้างฮับ NCC และ NVA ของ flexiWAN Edge เป็นเครือข่ายย่อย
  • กำหนดค่าและจัดการอินสแตนซ์ flexiWAN โดยใช้ flexiManage
  • กำหนดค่าการแลกเปลี่ยนเส้นทาง BGP ระหว่าง vpc-app-svcs กับ NVA ของ flexiWAN
  • สร้างไซต์ระยะไกลที่จำลองสาขาระยะไกลของลูกค้าหรือศูนย์ข้อมูล
  • สร้างอุโมงค์ IPsec ระหว่างสถานที่ตั้งระยะไกลกับ NVA
  • ยืนยันว่าติดตั้งอุปกรณ์เรียบร้อยแล้ว
  • ตรวจสอบการโอนข้อมูลจากเว็บไซต์ไปยังระบบคลาวด์
  • ตรวจสอบการโอนข้อมูลเว็บไซต์จากเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่ง
  • ล้างทรัพยากรที่ใช้แล้ว

บทแนะนำนี้กำหนดให้ต้องสร้างบัญชี flexiManage แบบไม่มีค่าใช้จ่ายเพื่อตรวจสอบสิทธิ์ เริ่มต้นใช้งาน และจัดการอินสแตนซ์ flexiEdge

ก่อนเริ่มต้น

การใช้คอนโซล Google Cloud และ Cloud Shell

หากต้องการโต้ตอบกับ GCP เราจะใช้ทั้งคอนโซล Google Cloud และ Cloud Shell ตลอดทั้ง Lab นี้

Google Cloud Console

คุณเข้าถึง Cloud Console ได้ที่ https://console.cloud.google.com

ตั้งค่ารายการต่อไปนี้ใน Google Cloud เพื่อให้กำหนดค่า Network Connectivity Center ได้ง่ายขึ้น

ในคอนโซล Google Cloud ในหน้าตัวเลือกโปรเจ็กต์ ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud

เปิด Cloud Shell Codelab นี้ใช้ $variables เพื่อช่วยในการติดตั้งใช้งานการกำหนดค่า gcloud ใน Cloud Shell

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

บทบาท IAM

NCC กำหนดให้ใช้บทบาท IAM เพื่อเข้าถึง API บางรายการ อย่าลืมกำหนดค่าผู้ใช้ด้วยบทบาท IAM ของ NCC ตามที่จำเป็น

ชื่อบทบาท

คำอธิบาย

สิทธิ์

networkconnectivity.networkAdmin

ช่วยให้ผู้ดูแลระบบเครือข่ายจัดการฮับและสโป๊กได้

networkconnectivity.hubs.networkconnectivity.spokes.

networkconnectivity.networkSpokeManager

อนุญาตให้เพิ่มและจัดการ Spoke ในฮับ ใช้ใน VPC ที่แชร์ซึ่งโปรเจ็กต์โฮสต์เป็นเจ้าของฮับ แต่ผู้ดูแลระบบอื่นๆ ในโปรเจ็กต์อื่นๆ สามารถเพิ่ม Spoke สำหรับการเชื่อมต่อของตนเองไปยังฮับได้

networkconnectivity.spokes.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer

อนุญาตให้ผู้ใช้เครือข่ายดูแอตทริบิวต์ต่างๆ ของฮับและสโป๊ก

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

3. ตั้งค่าสภาพแวดล้อมห้องปฏิบัติการเครือข่าย

ภาพรวม

ในส่วนนี้ เราจะทำให้เครือข่าย VPC และกฎไฟร์วอลล์ใช้งานได้

377d97bf3066f259.png

จำลองเครือข่ายสาขาในองค์กร

เครือข่าย VPC นี้มีซับเน็ตสำหรับอินสแตนซ์ VM ในองค์กร

สร้างเครือข่ายและเครือข่ายย่อยของเว็บไซต์ในองค์กร

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

สร้างกฎไฟร์วอลล์ site1-vpc เพื่ออนุญาตสิ่งต่อไปนี้

  • SSH, ภายใน, IAP
  • ESP, UDP/500, UDP/4500
  • ช่วง 10.0.0.0/8
  • ช่วง 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

สร้างกฎไฟร์วอลล์ site2-vpc เพื่ออนุญาตสิ่งต่อไปนี้

  • SSH, ภายใน, IAP
  • ช่วง 10.0.0.0/8
  • ช่วง 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

สร้างกฎไฟร์วอลล์ s1-inside-vpc เพื่ออนุญาตสิ่งต่อไปนี้

  • SSH, ภายใน, IAP
  • ช่วง 10.0.0.0/8
  • ช่วง 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

สร้างกฎไฟร์วอลล์ s2-inside-vpc เพื่ออนุญาตสิ่งต่อไปนี้

  • SSH, ภายใน, IAP
  • ช่วง 10.0.0.0/8
  • ช่วง 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

สร้างอินสแตนซ์ s1-inside-vm และ 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

จำลองสภาพแวดล้อมเครือข่ายระบบคลาวด์ของ GCP

หากต้องการเปิดใช้การรับส่งข้อมูลแบบไซต์ต่อไซต์ข้ามภูมิภาคผ่านเครือข่าย hub-vpc และ Spoke คุณต้องเปิดใช้การกำหนดเส้นทางส่วนกลางในเครือข่าย hub-vpc อ่านเพิ่มเติมในการแลกเปลี่ยนเส้นทางของ NCC

  1. สร้างเครือข่าย 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. สร้างเครือข่าย 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. สร้างกฎไฟร์วอลล์ของ Hub-VPC เพื่ออนุญาตสิ่งต่อไปนี้
  • SSH
  • ESP, UDP/500, UDP/4500
  • ช่วง 10.0.0.0/8 ภายใน (ซึ่งครอบคลุมพอร์ต TCP 179 ที่จำเป็นสำหรับเซสชัน BGP จาก Cloud 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. สร้างกฎไฟร์วอลล์ของ Workload-VPC เพื่ออนุญาตสิ่งต่อไปนี้
  • SSH
  • ช่วง 192.168.0.0/16 ภายใน (ซึ่งครอบคลุมพอร์ต TCP 179 ที่จำเป็นสำหรับเซสชัน BGP จาก Cloud 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. เปิดใช้ Cloud NAT ใน VPC ของเวิร์กโหลดเพื่อให้ workload1-vm ดาวน์โหลดแพ็กเกจได้โดยการสร้าง Cloud Router และ NAT Gateway
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. สร้าง workload1-vm in "us-central1-a" in workload-VPC คุณจะใช้โฮสต์นี้เพื่อยืนยันการเชื่อมต่อเว็บไซต์กับระบบคลาวด์
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. ตั้งค่าอุปกรณ์ในองค์กรสำหรับ SD-WAN

ec754b89e375f3cc.png

สร้าง VM ในองค์กรสำหรับ SDWAN (อุปกรณ์)

ในส่วนต่อไปนี้ เราจะสร้างอุปกรณ์เราเตอร์ site1-nva และ site2-nva ที่ทำหน้าที่เป็นเราเตอร์ในองค์กร

สร้างอินสแตนซ์

สร้างอุปกรณ์ site1-router ชื่อ 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

สร้างอุปกรณ์ site2-router ที่ชื่อ 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. ติดตั้ง flexiWAN ใน site1-nva

เปิดการเชื่อมต่อ SSH ไปยัง site1-nva หากหมดเวลา ให้ลองอีกครั้ง

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

ติดตั้ง flexiWAN ใน site1-nva

sudo su 

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

เตรียม VM สำหรับการลงทะเบียนระนาบควบคุม flexiWAN

หลังจากติดตั้ง flexiWAN เสร็จแล้ว ให้เรียกใช้คำสั่ง fwsystem_checker เพื่อตรวจสอบการกำหนดค่าระบบ คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ

  • เลือกตัวเลือก 2 เพื่อกำหนดค่าอย่างรวดเร็วและเงียบ
  • จากนั้นออกด้วย 0
  • อย่าปิดหน้าต่าง 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 ====

เปิดเซสชันไว้เพื่อทำขั้นตอนต่อไปนี้

6. ลงทะเบียน site1-nva กับตัวควบคุม SD-WAN

คุณต้องทำตามขั้นตอนเหล่านี้เพื่อจัดสรร NVA ของ flexiWAN ให้เสร็จสมบูรณ์ ซึ่งจะได้รับการดูแลจากคอนโซล flexiManage โปรดตรวจสอบว่าได้ตั้งค่าองค์กร flexiWAN แล้วก่อนดำเนินการต่อ

ตรวจสอบสิทธิ์ NVA ของ flexiWAN ที่เพิ่งติดตั้งใช้งานกับ flexiManage โดยใช้โทเค็นความปลอดภัยด้วยการเข้าสู่ระบบบัญชี flexiManage คุณอาจนำโทเค็นเดียวกันกลับมาใช้ใหม่ในอุปกรณ์เราเตอร์ทั้งหมดได้

เลือกพื้นที่โฆษณา → โทเค็น สร้างโทเค็น แล้วเลือกคัดลอก

12c173b589d220ee.png

กลับไปที่ Cloud Shell (site1-nva) แล้ววางโทเค็นลงในไดเรกทอรี /etc/flexiwan/agent/token.txt โดยทำดังนี้

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.png

เปิดใช้งานเราเตอร์ของสถานที่ตั้งในคอนโซล flexiManage

เข้าสู่ระบบ flexiManage Console เพื่อเปิดใช้งาน site1-nva ในตัวควบคุม

ในแผงด้านซ้าย ให้เลือกสินค้าคงคลัง → อุปกรณ์ แล้วคลิกอุปกรณ์ "ไม่รู้จัก"

f7719c28f78e907a.png

ป้อนชื่อโฮสต์ของ site1-nva แล้วอนุมัติอุปกรณ์โดยเลื่อนแป้นหมุนไปทางขวา

9a6c6c45e1cad732.png

เลือกแท็บ "อินเทอร์เฟซ"

ค้นหาคอลัมน์ "กำหนด" แล้วคลิก "ไม่" และเปลี่ยนการตั้งค่าเป็น "ใช่"

a8772059968af13e.png

เลือกแท็บไฟร์วอลล์ แล้วคลิกเครื่องหมาย "+" เพื่อเพิ่มกฎไฟร์วอลล์ขาเข้า

เลือกอินเทอร์เฟซ WAN เพื่อใช้กฎ SSH ตามที่อธิบายไว้ด้านล่าง

df03b8a6c817ccd2.png

คลิก "อัปเดตอุปกรณ์"

96b9feb77b8517cd.png

เริ่ม site1-nva จากตัวควบคุม flexiWAN กลับไปที่สินค้าคงคลัง → อุปกรณ์ → site1-nva เลือก "เริ่มอุปกรณ์"

708215cf91ffc09.png

สถานะ - กำลังซิงค์

918d72eeacc386fa.png

สถานะ - ซิงค์แล้ว

5135096dbff49819.png

คุณดูตัวบ่งชี้คำเตือนได้ในส่วนแก้ปัญหา → การแจ้งเตือน เมื่อดูแล้ว ให้เลือกทั้งหมด แล้วทำเครื่องหมายว่าอ่านแล้ว

9e79db3572f91925.png

7. ติดตั้ง flexiWAN ใน site2-nva

เปิดแท็บใหม่และสร้างเซสชัน Cloud Shell จากนั้นอัปเดต $variables เพื่อช่วยในการติดตั้งใช้งานการกำหนดค่า gcloud

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

เปิดการเชื่อมต่อ SSH ไปยัง site2-nva หากหมดเวลา ให้ลองอีกครั้ง

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

ติดตั้ง flexiWAN ใน site2-nva

sudo su 

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

เตรียม VM สำหรับการลงทะเบียนระนาบควบคุม flexiWAN

หลังจากติดตั้ง flexiWAN เสร็จแล้ว ให้เรียกใช้คำสั่ง fwsystem_checker เพื่อตรวจสอบการกำหนดค่าระบบ คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ

  • เลือกตัวเลือก 2 เพื่อกำหนดค่าอย่างรวดเร็วและเงียบ
  • จากนั้นออกด้วย 0
  • อย่าปิดหน้าต่าง 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. ลงทะเบียน site2-nva กับ SD-WAN Controller

คุณต้องทำตามขั้นตอนเหล่านี้เพื่อจัดสรร NVA ของ flexiWAN ให้เสร็จสมบูรณ์ ซึ่งจะได้รับการดูแลจากคอนโซล flexiManage โปรดตรวจสอบว่าได้ตั้งค่าองค์กร flexiWAN แล้วก่อนดำเนินการต่อ

ตรวจสอบสิทธิ์ NVA ของ flexiWAN ที่เพิ่งติดตั้งใช้งานกับ flexiManage โดยใช้โทเค็นความปลอดภัยด้วยการเข้าสู่ระบบบัญชี flexiManage คุณอาจนำโทเค็นเดียวกันกลับมาใช้ใหม่ในอุปกรณ์เราเตอร์ทั้งหมดได้

เลือกพื้นที่โฆษณา → โทเค็น สร้างโทเค็น แล้วเลือกคัดลอก

12c173b589d220ee.png

กลับไปที่ Cloud Shell (site2-nva) แล้ววางโทเค็นลงในไดเรกทอรี /etc/flexiwan/agent/token.txt โดยทำดังนี้

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.png

เปิดใช้งานเราเตอร์ของสถานที่ตั้งจากคอนโซล flexiManage

เข้าสู่ระบบคอนโซล flexiManage เพื่อเปิดใช้งาน site2-nva ในตัวควบคุม

ในแผงด้านซ้าย ให้เลือกสินค้าคงคลัง → อุปกรณ์ แล้วคลิกอุปกรณ์ "ไม่รู้จัก"

c98696cf67043ec2.png

ป้อนชื่อโฮสต์ของ site2-nva แล้วอนุมัติอุปกรณ์โดยเลื่อนแป้นหมุนไปทางขวา

de418da3f581e0bd.png

เลือกแท็บ "อินเทอร์เฟซ"

ค้นหาคอลัมน์ "กำหนด" แล้วคลิก "ไม่" และเปลี่ยนการตั้งค่าเป็น "ใช่"

eee6a98dba7b2a04.png

เลือกแท็บไฟร์วอลล์ แล้วคลิกเครื่องหมาย "+" เพื่อเพิ่มกฎไฟร์วอลล์ขาเข้า เลือกอินเทอร์เฟซ WAN เพื่อใช้กฎ SSH ตามที่อธิบายไว้ด้านล่าง

df03b8a6c817ccd2.png

คลิก "อัปเดตอุปกรณ์"

96b9feb77b8517cd.png

เริ่ม site2-nva จากตัวควบคุม flexiWAN กลับไปที่สินค้าคงคลัง → อุปกรณ์ → site2-nva เลือก "เริ่มอุปกรณ์"

c80291bb430dce7d.png

สถานะ - กำลังซิงค์

da9c08ebfbd1265e.png

สถานะ - ซิงค์แล้ว

5135096dbff49819.png

คุณดูตัวบ่งชี้คำเตือนได้ในส่วนแก้ปัญหา → การแจ้งเตือน เมื่อดูแล้ว ให้เลือกทั้งหมด แล้วทำเครื่องหมายว่าอ่านแล้ว

2c21322b87d848b.png

9. ตั้งค่าอุปกรณ์ SDWAN ของฮับ

ในส่วนต่อไปนี้ คุณจะสร้างและลงทะเบียนเราเตอร์ฮับ (hub-r1 และ hub-r2) กับ FlexiWAN Controller ตามที่ดำเนินการกับเส้นทางของเว็บไซต์ก่อนหน้านี้

เปิดแท็บใหม่และสร้างเซสชัน Cloud Shell จากนั้นอัปเดต $variables เพื่อช่วยในการติดตั้งใช้งานการกำหนดค่า gcloud

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

สร้างอินสแตนซ์ NVA ของฮับ

สร้างอุปกรณ์ 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

สร้างอุปกรณ์ 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. ติดตั้ง flexiWAN ในอินสแตนซ์ฮับสำหรับฮับ-r1

เปิดการเชื่อมต่อ SSH กับ hub-r1

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

ติดตั้งเอเจนต์ flexiWAN ในทั้งฮับ-r1

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

เตรียม VM ฮับ-r1 สำหรับการลงทะเบียน flexiWAN

หลังจากติดตั้ง flexiWAN เสร็จแล้ว ให้เรียกใช้คำสั่ง fwsystem_checker เพื่อตรวจสอบการกำหนดค่าระบบ คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ

root@hub-r1:/home/user# fwsystem_checker
  • เลือกตัวเลือก 2 เพื่อกำหนดค่าอย่างรวดเร็วและเงียบ
  • จากนั้นออกด้วย 0
  • อย่าปิดหน้าต่าง Cloud Shell

11. ลงทะเบียน VM ของฮับ-r1 ในตัวควบคุม flexiManage

ตรวจสอบสิทธิ์ NVA ของ flexiWAN ที่เพิ่งติดตั้งใช้งานกับ flexiManage โดยใช้โทเค็นความปลอดภัยด้วยการเข้าสู่ระบบบัญชี flexiManage

  • เลือกพื้นที่โฆษณา → โทเค็น แล้วคัดลอกโทเค็น

กลับไปที่ Cloud Shell (hub-r1) แล้ววางโทเค็นลงในไดเรกทอรี /etc/flexiwan/agent/token.txt โดยทำดังนี้

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. ติดตั้ง flexiWAN ในอินสแตนซ์ฮับสำหรับฮับ-r2

เปิดการเชื่อมต่อ SSH กับ hub-r2

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

ติดตั้งเอเจนต์ flexiWAN ในฮับ-r2 ทั้ง 2 เครื่อง

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

เตรียม VM ของฮับ-r2 สำหรับการลงทะเบียน flexiWAN

หลังจากติดตั้ง flexiWAN เสร็จแล้ว ให้เรียกใช้คำสั่ง fwsystem_checker เพื่อตรวจสอบการกำหนดค่าระบบ คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ

root@hub-r2:/home/user# fwsystem_checker
  • เลือกตัวเลือก 2 เพื่อกำหนดค่าอย่างรวดเร็วและเงียบ
  • จากนั้นออกด้วย 0
  • อย่าปิดหน้าต่าง Cloud Shell

13. ลงทะเบียน VM ของฮับ-r2 ในตัวควบคุม flexiManage

ตรวจสอบสิทธิ์ NVA ของ flexiWAN ที่เพิ่งติดตั้งใช้งานกับ flexiManage โดยใช้โทเค็นความปลอดภัยด้วยการเข้าสู่ระบบบัญชี flexiManage

  • เลือกพื้นที่โฆษณา → โทเค็น แล้วคัดลอกโทเค็น

กลับไปที่ Cloud Shell (hub-r2) แล้ววางโทเค็นลงในไดเรกทอรี /etc/flexiwan/agent/token.txt โดยทำดังนี้

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

เปิดใช้งานเราเตอร์ฮับ hub-r1 ในคอนโซล flexiManage

เข้าสู่ระบบ flexiManage Console

  • ไปที่พื้นที่โฆษณา → อุปกรณ์
  • ค้นหาและจดชื่อโฮสต์สำหรับ hub-r1 และ hub-r2 ซึ่งทั้ง 2 รายการมีค่าเป็น "unknown"

1a88ffa4409ad3c0.png

เลือกอุปกรณ์ที่ไม่รู้จักที่มีชื่อโฮสต์ hub-r1

  • ป้อนชื่อโฮสต์ของ hub-r1
  • อนุมัติอุปกรณ์ โดยเลื่อนแป้นหมุนไปทางขวา

เลือกแท็บอินเทอร์เฟซ

  • ค้นหาคอลัมน์ "ได้รับมอบหมาย"
  • คลิก "ไม่" ข้างแถวอินเทอร์เฟซเพื่อเปลี่ยนการตั้งค่าเป็น "ใช่"

เลือกแท็บไฟร์วอลล์

  • คลิก "+" เพื่อเพิ่มกฎไฟร์วอลล์ขาเข้า
  • เลือกอินเทอร์เฟซ WAN เพื่อรับช่วงกฎ
  • อนุญาตพอร์ต SSH 22 ด้วยโปรโตคอล TCP
  • คลิก "อัปเดตอุปกรณ์"

เริ่มอุปกรณ์ hub-r1 สำหรับ SD-WAN จากตัวควบคุมของ flexiWAN

  • กลับไปที่คลัง → อุปกรณ์ → hub-r1

เลือก "เริ่มอุปกรณ์"

  • รอให้การซิงค์เสร็จสมบูรณ์และจดบันทึกสถานะ "กำลังทำงาน"

เปิดใช้งานเราเตอร์ฮับ hub-r2 ในคอนโซล flexiManage

เลือกอุปกรณ์ที่ไม่รู้จักที่มีชื่อโฮสต์ hub-r2

  • ป้อนชื่อโฮสต์ของ hub-r2
  • อนุมัติอุปกรณ์โดยเลื่อนแป้นหมุนไปทางขวา

เลือกแท็บอินเทอร์เฟซ

  • ค้นหาคอลัมน์ "ได้รับมอบหมาย"
  • คลิก "ไม่" ข้างแถวอินเทอร์เฟซเพื่อเปลี่ยนการตั้งค่าเป็น "ใช่"

เลือกแท็บไฟร์วอลล์

  • คลิก "+" เพื่อเพิ่มกฎไฟร์วอลล์ขาเข้า
  • เลือกอินเทอร์เฟซ WAN เพื่อรับช่วงกฎ
  • อนุญาตพอร์ต SSH 22 ด้วยโปรโตคอล TCP
  • คลิกเพิ่มกฎ
  • คลิก "อัปเดตอุปกรณ์"

เริ่มอุปกรณ์ hub-r2 สำหรับ SD-WAN จากตัวควบคุมของ flexiWAN

  • กลับไปที่คลัง → อุปกรณ์ → hub-r2 แล้วเลือก "เริ่มอุปกรณ์"
  • รอให้การซิงค์เสร็จสมบูรณ์และจดบันทึกสถานะ "กำลังทำงาน"

14. Network Connectivity Center ใน GCP Hub

802fe0ef1e98c563.png

เปิดใช้บริการ API

เปิดใช้ API การเชื่อมต่อเครือข่ายในกรณีที่ยังไม่ได้เปิดใช้

gcloud services enable networkconnectivity.googleapis.com

สร้างฮับ NCC

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]

กำหนดค่าอุปกรณ์เราเตอร์ทั้ง 2 เครื่องเป็นเครือข่ายย่อย NCC

ค้นหา URI และที่อยู่ IP สำหรับทั้ง hub-r1 และ hub-r2 แล้วจดเอาต์พุต คุณจะต้องใช้ข้อมูลนี้ในขั้นตอนถัดไป

อย่าลืมจดที่อยู่ IP (192.168.x.x) ของอินสแตนซ์ hub-r1 และ 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"

เพิ่ม vnic ของ hub-r1 networkIP (192.168.x.x) เป็น spoke และเปิดใช้การโอนข้อมูลระหว่างไซต์

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

เพิ่ม vnic ของ hub-r2 networkIP (192.168.x.x) เป็น spoke และเปิดใช้การโอนข้อมูลจากเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่ง

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

กำหนดค่า Cloud Router เพื่อสร้าง BGP กับ Hub-R1

ในขั้นตอนถัดไป ให้สร้าง Cloud Router และประกาศเครือข่ายย่อย VPC ของภาระงาน 192.168.235.0/24

สร้าง Cloud Router ใน us-central1 ที่จะสื่อสารกับ BGP ด้วย hub-r1

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

การกำหนดค่าอุปกรณ์เราเตอร์เป็น NCC Spoke จะช่วยให้เราเตอร์ Cloud เจรจา BGP ในอินเทอร์เฟซเสมือนได้

สร้างอินเทอร์เฟซ 2 รายการใน Cloud Router ที่จะแลกเปลี่ยนข้อความ BGP กับฮับ-r1

ระบบจะเลือกที่อยู่ IP จากซับเน็ตของภาระงาน และสามารถเปลี่ยนแปลงได้หากจำเป็น

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

กำหนดค่าอินเทอร์เฟซ Cloud Router เพื่อสร้าง BGP ด้วย vNIC-1 ของ hub-r1 อัปเดต peer-ip-address ด้วยที่อยู่ IP ของ hub-r1 networkIP โปรดทราบว่าระบบจะใช้ที่อยู่ IP เดียวกันสำหรับ 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

ตรวจสอบสถานะ BGP ในตอนนี้ใน Code Lab นี้ BGP จะอยู่ใน "สถานะเชื่อมต่อ" เนื่องจากยังไม่ได้กำหนดค่าอุปกรณ์เราเตอร์เครือข่ายสำหรับ BGP

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

กำหนดค่า Workload-cr2 เพื่อสร้าง BGP กับ Hub-R2

ในขั้นตอนถัดไป ให้สร้าง Cloud Router และประกาศซับเน็ต VPC ของภาระงาน 192.168.236.0/24

สร้าง Cloud Router ใน us-east4 ที่จะสื่อสารกับ BGP ด้วย hub-r2

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

สร้างอินเทอร์เฟซ 2 รายการใน Cloud Router ที่จะแลกเปลี่ยนข้อความ BGP กับ hub-r2 โดยระบบจะเลือกที่อยู่ IP จากซับเน็ตของภาระงานและสามารถเปลี่ยนแปลงได้หากจำเป็น

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

กำหนดค่าอินเทอร์เฟซ Cloud Router เพื่อสร้าง BGP ด้วย vNIC-1 ของ hub-r2, อัปเดต peer-ip-address ด้วยที่อยู่ IP ของ hub-r1 networkIP โปรดทราบว่าระบบจะใช้ที่อยู่ IP เดียวกันสำหรับ 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

ตรวจสอบสถานะ BGP ในตอนนี้ใน Code Lab นี้ BGP จะอยู่ใน "สถานะเชื่อมต่อ" เนื่องจากยังไม่ได้กำหนดค่าอุปกรณ์เราเตอร์เครือข่ายสำหรับ BGP

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

15. กำหนดค่าอุปกรณ์เราเตอร์ฮับสำหรับ BGP

กำหนดค่าฮับ-r1 สำหรับ BGP

โปรดเข้าสู่ระบบคอนโซล flexiManage

ไปที่พื้นที่โฆษณาอุปกรณ์hub-r1 แล้วเลือกอุปกรณ์ที่มี HostName:hub-r1

  • คลิกแท็บ "การกำหนดเส้นทาง"
  • คลิก "การกำหนดค่า BGP"
  • ปิดใช้ "Redistribute OSPF Routes"
  • กำหนดค่า hub-r1 สำหรับ BGP ด้วยพารามิเตอร์ต่อไปนี้ แล้วคลิก "บันทึก"

8d470056f620717f.png

เลือกแท็บ "อินเทอร์เฟซ" ค้นหาอินเทอร์เฟซ LAN แล้วค้นหาคอลัมน์ "การกำหนดเส้นทาง"

  • คลิก "ไม่มี" เพื่อเปิดเมนูเพื่อเลือก BGP เป็นโปรโตคอลการกำหนดเส้นทาง

82310aab05e9e414.png

  • คลิก "อัปเดตอุปกรณ์" ที่ด้านบนของหน้า

กำหนดค่าฮับ-r2 สำหรับ BGP

โปรดเข้าสู่ระบบคอนโซล flexiManage

ไปที่พื้นที่โฆษณา → อุปกรณ์hub-r2 เลือกอุปกรณ์ที่มี HostName:hub-r2

  • คลิกแท็บ "การกำหนดเส้นทาง"
  • คลิก "การกำหนดค่า BGP"
  • ปิดใช้ "Redistribute OSPF Routes"
  • กำหนดค่า hub-r2 สำหรับ BGP ด้วยพารามิเตอร์ต่อไปนี้ แล้วคลิก "บันทึก"

8ecb14e2c046012e.png

เลือกแท็บ "อินเทอร์เฟซ" ค้นหาอินเทอร์เฟซ LAN แล้วค้นหาคอลัมน์ "การกำหนดเส้นทาง"

  • คลิก "ไม่มี" เพื่อเปิดเมนูแบบเลื่อนลงเพื่อเลือก BGP เป็นโปรโตคอลการกำหนดเส้นทาง

41a381f81f2b500e.png

  • คลิก "อัปเดตอุปกรณ์" ที่ด้านบนของหน้า

เลือกแท็บ "การกำหนดเส้นทาง"

  • ยืนยันว่าฮับ-r2 ได้เรียนรู้เส้นทาง BGP จาก wrk-cr2

ddf3e811b193ec10.png

16. การแลกเปลี่ยนเส้นทาง BGP ระหว่างอุปกรณ์เราเตอร์

สร้าง ASN ในพื้นที่สำหรับเว็บไซต์ระยะไกล

กำหนดค่า ASN ของ BGP ในเครื่องสำหรับ site1-nva และ site2-nva เมื่อกำหนดค่าแล้ว เราจะสร้างอุโมงค์ IPSEC ระหว่างเว็บไซต์ระยะไกลและเราเตอร์ฮับ

เลือกอุปกรณ์ที่มี HostName:site1-nva

  • คลิกแท็บ "การกำหนดเส้นทาง"
  • คลิก "การกำหนดค่า BGP"
  • ปิดใช้ "Redistribute OSPF Routes"
  • เปิดใช้ BGP
  • ASN ภายใน 7269 → บันทึก
  • อัปเดตอุปกรณ์
  • แท็บอินเทอร์เฟซ → LAN → การกำหนดเส้นทาง → BGP
  • อัปเดตอุปกรณ์

เลือกอุปกรณ์ที่มี HostName:site2-nva

  • คลิกแท็บ "การกำหนดเส้นทาง"
  • คลิก "การกำหนดค่า BGP"
  • ปิดใช้ "Redistribute OSPF Routes"
  • เปิดใช้ BGP
  • ASN ท้องถิ่น 7270 → บันทึก
  • อัปเดตอุปกรณ์
  • แท็บอินเทอร์เฟซ → LAN → การกำหนดเส้นทาง → BGP
  • อัปเดตอุปกรณ์

กำหนดค่าอุโมงค์ VPN ระหว่างอุปกรณ์ของไซต์และฮับ

โปรดเข้าสู่ระบบคอนโซล flexiManage

  • ไปที่พื้นที่โฆษณา → อุปกรณ์
  • เลือกช่องข้างชื่อโฮสต์ของ site1-nva และ hub-r1 เพื่อสร้างอุโมงค์ VPN ระหว่าง NVA 2 ตัวนี้
  • คลิกการดำเนินการ→ สร้างอุโมงค์ แล้วกำหนดค่าต่อไปนี้

d870b4049a0e7fcf.png

c50d794442c0bdd0.png

  • เลือกสร้างอุโมงค์
  • นำเครื่องหมายถูกออกจาก site1-nva และ ub-r1

ทำซ้ำขั้นตอนเพื่อสร้างอุโมงค์ระหว่าง site2-nva กับ hub-r2 โดยเลือกพารามิเตอร์ที่เหมาะสม

37c86e17b74e98ca.png

ตรวจสอบว่าได้สร้างคู่ของอุโมงค์ข้อมูลระหว่าง NVA แต่ละคู่แล้ว

  • ที่แผงด้านซ้าย ให้เลือก "พื้นที่โฆษณา" แล้วคลิก "ช่องทาง" และมองหาคอลัมน์สถานะ

a31e7a73aff53b66.png

ตรวจสอบว่า "site1-nva" เรียนรู้เส้นทางไปยังซับเน็ต 192.168.235.0/24 และ 192.168.236.0/24

  • เลือกสินค้าคงคลัง → อุปกรณ์ → site1-nva แล้วคลิกแท็บ "การกำหนดเส้นทาง"

ในเอาต์พุตตัวอย่างด้านล่าง flexiWAN สร้างอุโมงค์ข้อมูลโดยอัตโนมัติโดยใช้ที่อยู่ IP ของโฮสต์ 10.100.0.6 cef8dee200ac600a.png

17. ยืนยันการเชื่อมต่อเส้นทางข้อมูล

ยืนยันการเชื่อมต่อเว็บไซต์กับระบบคลาวด์จากระบบในองค์กร

ดูแผนภาพ ยืนยันว่าเส้นทางข้อมูลระหว่าง s1-vm กับ workload1-vm

2a403992934279b3.png

กำหนดค่าเส้นทางแบบคงที่ของ VPC สำหรับ Site to Cloud

Site1-VPC และ Site2-VPC ภายในองค์กรจำลองเครือข่ายศูนย์ข้อมูลภายในองค์กร

อุปกรณ์เราเตอร์ทั้ง Site-1-nva และ site-2-nva ใช้การเชื่อมต่อ VPN เพื่อเข้าถึงเครือข่ายฮับ

สำหรับ Use Case จากเว็บไซต์ไปยังระบบคลาวด์ ให้สร้าง Routes แบบคงที่ไปยังปลายทาง 192.168.0.0/16 โดยใช้อุปกรณ์เราเตอร์เป็น การ Hop ถัดไป เพื่อเข้าถึงเครือข่ายในเครือข่ายระบบคลาวด์ของ GCP

ใน s1-inside-vpc ให้สร้างเส้นทางแบบคงที่สำหรับปลายทางในระบบคลาวด์ (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

ใน s2-inside-vpc ให้สร้างเส้นทางแบบคงที่สำหรับปลายทางในระบบคลาวด์ (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

ใน Cloud Shell ให้ค้นหาที่อยู่ IP ของ "workload1-vm" คุณจะต้องใช้ข้อมูลนี้เพื่อทดสอบการเชื่อมต่อจาก "s1-vm"

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

เปิดการเชื่อมต่อ SSH ไปยัง s1-vm หากหมดเวลา ให้ลองอีกครั้ง

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

SSH ไปยัง "s1-vm" และใช้คำสั่ง "curl" เพื่อสร้างเซสชัน TCP ไปยังที่อยู่ 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

ยืนยันการเชื่อมต่อแบบ Site-to-Site

ดูแผนภาพและตรวจสอบว่าเส้นทางข้อมูลระหว่าง s1-vm กับ s2-vm

1a7ec558ab1ecd37.png

กำหนดค่าเส้นทางแบบคงที่ของ VPC สำหรับ Site-to-Site

หากต้องการกำหนดเส้นทางการรับส่งข้อมูลจากเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่งระหว่างเว็บไซต์ 1 กับเว็บไซต์ 2 โดยใช้เครือข่ายส่วนกลางของ GCP คุณจะต้องสร้างเส้นทางแบบคงที่ไปยังปลายทางเครือข่ายย่อยของเว็บไซต์ระยะไกลโดยใช้เราเตอร์ในองค์กรเป็น Next Hop

ในขั้นตอนต่อๆ ไป ระบบจะกำหนดค่า VPC ของภาระงานด้วย NCC เพื่อรองรับการโอนข้อมูลจากเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่ง

ใน s1-inside-vpc ให้สร้างเส้นทางแบบคงที่เพื่อไปยัง 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

ใน s2-inside-vpc ให้สร้างเส้นทางแบบคงที่เพื่อไปยัง 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

ใน Cloud Shell ให้ค้นหาที่อยู่ IP ของ "s2-vm" คุณจะต้องใช้ข้อมูลนี้เพื่อทดสอบการเชื่อมต่อจาก S1-vm

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

เปิดการเชื่อมต่อ SSH ไปยัง s1-vm หากหมดเวลา ให้ลองอีกครั้ง

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

SSH ไปยัง "s1-vm" แล้ว "ping" ที่อยู่ 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. ล้าง

เข้าสู่ระบบ Cloud Shell และลบอินสแตนซ์ VM ในฮับและเครือข่ายของสาขา

#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. ยินดีด้วย

คุณทำแล็บ Network Connectivity Center เสร็จแล้ว

สิ่งที่คุณครอบคลุม

  • การผสานรวม WAN ที่กำหนดค่าด้วยซอฟต์แวร์สำหรับเว็บไซต์ NCC กับระบบคลาวด์
  • การผสานรวม WAN ที่กำหนดค่าด้วยซอฟต์แวร์สำหรับเว็บไซต์ NCC กับเว็บไซต์

ขั้นตอนถัดไป

©Google, LLC หรือบริษัทในเครือ สงวนลิขสิทธิ์ ห้ามเผยแพร่