1. บทนำ
ภาพรวม
ในแล็บนี้ คุณจะได้สำรวจฟีเจอร์บางอย่างของ Network Connectivity Center
ศูนย์การเชื่อมต่อเครือข่าย (NCC) เป็นโมเดลระนาบควบคุมแบบฮับและกิ่งสำหรับการจัดการการเชื่อมต่อเครือข่ายใน Google Cloud ทรัพยากรฮับมีรูปแบบการจัดการการเชื่อมต่อแบบรวมศูนย์เพื่อเชื่อมต่อ Spoke ปัจจุบัน NCC รองรับทรัพยากรเครือข่ายต่อไปนี้เป็น Spoke
- ไฟล์แนบ VLAN
- อุปกรณ์เราเตอร์
- VPN ความพร้อมใช้งานสูง
Codelab กำหนดให้ใช้โซลูชัน SD-WAN SaaS ของ flexiWAN ซึ่งช่วยลดความซับซ้อนในการติดตั้งใช้งานและการจัดการ WAN
สิ่งที่คุณจะสร้าง
ในโค้ดแล็บนี้ คุณจะได้สร้างโทโพโลยี SD-WAN แบบฮับและสโป๊กเพื่อจำลองไซต์สาขาที่อยู่ระยะไกลซึ่งจะข้ามผ่านเครือข่ายแกนหลักของ Google เพื่อการสื่อสารจากไซต์ไปยังระบบคลาวด์
- คุณจะทำให้ใช้งานได้ VM ของ GCE 2 รายการที่กำหนดค่าสำหรับตัวแทน SD-WAN ของ flexiWAN ใน VPC ฮับ ซึ่งแสดงถึงส่วนหัวสำหรับการรับส่งข้อมูลขาเข้าและขาออกไปยัง GCP
- ทำให้ใช้งานได้เราเตอร์ flexiWAN SD-WAN ระยะไกล 2 ตัวเพื่อแสดง VPC ของสาขา 2 แห่งที่แตกต่างกัน
- สำหรับการทดสอบเส้นทางข้อมูล คุณจะต้องกำหนดค่า GCE VM 3 รายการเพื่อจำลองไคลเอ็นต์ในองค์กรและเซิร์ฟเวอร์ที่โฮสต์ใน GCP
สิ่งที่คุณจะได้เรียนรู้
- การใช้ NCC เพื่อเชื่อมต่อสำนักงานสาขาที่อยู่ห่างไกลโดยใช้โซลูชัน WAN ที่กำหนดโดยซอฟต์แวร์แบบโอเพนซอร์ส
- ประสบการณ์การลงมือปฏิบัติจริงกับโซลูชัน WAN ที่กำหนดโดยซอฟต์แวร์โอเพนซอร์ส
สิ่งที่คุณต้องมี
- ความรู้เกี่ยวกับเครือข่าย VPC ของ GCP
- ความรู้เกี่ยวกับ Cloud Router และการกำหนดเส้นทาง BGP
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 และกฎไฟร์วอลล์ใช้งานได้

จำลองเครือข่ายสาขาในองค์กร
เครือข่าย VPC นี้มีซับเน็ตสำหรับอินสแตนซ์ VM ในองค์กร
สร้างเครือข่ายและเครือข่ายย่อยของเว็บไซต์ในองค์กร
gcloud compute networks create site1-vpc \
--subnet-mode custom
gcloud compute networks create s1-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 s1-inside-subnet \
--network s1-inside-vpc \
--range 10.10.1.0/24 \
--region us-central1
สร้างกฎไฟร์วอลล์ 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
สร้างกฎไฟร์วอลล์ 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
สร้างอินสแตนซ์ 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
จำลองสภาพแวดล้อมเครือข่ายระบบคลาวด์ของ GCP
หากต้องการเปิดใช้การรับส่งข้อมูลแบบไซต์ต่อไซต์ข้ามภูมิภาคผ่านเครือข่าย hub-vpc และ Spoke คุณต้องเปิดใช้การกำหนดเส้นทางส่วนกลางในเครือข่าย hub-vpc อ่านเพิ่มเติมในการแลกเปลี่ยนเส้นทางของ NCC
- สร้างเครือข่าย
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
- สร้างเครือข่าย
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
- สร้างกฎไฟร์วอลล์ของ 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
- สร้างกฎไฟร์วอลล์ของ 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 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
- เปิดใช้ 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
- สร้าง
workload1-vmin "us-central1-a" inworkload-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

สร้าง VM ในองค์กรสำหรับ SDWAN (อุปกรณ์)
ในส่วนต่อไปนี้ เราจะสร้าง site1-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
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 เพื่อเตรียม VM สำหรับการทำงานของ flexiWAN คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ
- เลือกตัวเลือก
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 คุณอาจนำโทเค็นเดียวกันกลับมาใช้ใหม่ในอุปกรณ์เราเตอร์ทั้งหมดได้
เลือกพื้นที่โฆษณา → โทเค็น สร้างโทเค็น แล้วเลือกคัดลอก

กลับไปที่ 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

เปิดใช้งานเราเตอร์ของสถานที่ตั้งในคอนโซล flexiManage
เข้าสู่ระบบ flexiManage Console เพื่อเปิดใช้งาน site1-nva ในตัวควบคุม
ในแผงด้านซ้าย ให้เลือกสินค้าคงคลัง → อุปกรณ์ แล้วคลิกอุปกรณ์ "ไม่รู้จัก"

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

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

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

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

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

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

7. ตั้งค่าอุปกรณ์ SDWAN ของฮับ
ในส่วนต่อไปนี้ คุณจะสร้างและลงทะเบียนเราเตอร์ฮับ (hub-r1) กับ 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
8. ติดตั้ง 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 เพื่อเตรียม VM สำหรับการทำงานของ flexiWAN คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ
root@hub-r1:/home/user# fwsystem_checker
- เลือกตัวเลือก
2เพื่อกำหนดค่าอย่างรวดเร็วและเงียบ - จากนั้นออกด้วย 0
- อย่าปิดหน้าต่าง Cloud Shell
9. ลงทะเบียน VM ของฮับ-r1 ในตัวควบคุม FlexManage
ตรวจสอบสิทธิ์ 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
เปิดใช้งานเราเตอร์ฮับ hub-r1 ในคอนโซล flexiManage
เข้าสู่ระบบ flexiManage Console
- ไปที่พื้นที่โฆษณา → อุปกรณ์
- พบและจดชื่อโฮสต์สำหรับ hub-r1 คือ "ไม่รู้จัก"

เลือกอุปกรณ์ที่ไม่รู้จักที่มีชื่อโฮสต์ hub-r1
- ป้อนชื่อโฮสต์ของ hub-r1
- อนุมัติอุปกรณ์ โดยเลื่อนแป้นหมุนไปทางขวา
เลือกแท็บอินเทอร์เฟซ
- ค้นหาคอลัมน์ "ได้รับมอบหมาย"
- คลิก "ไม่" ข้างแถวอินเทอร์เฟซเพื่อเปลี่ยนการตั้งค่าเป็น "ใช่"
เลือกแท็บไฟร์วอลล์
- คลิก "+" เพื่อเพิ่มกฎไฟร์วอลล์ขาเข้า
- เลือกอินเทอร์เฟซ WAN เพื่อรับช่วงกฎ
- อนุญาตพอร์ต SSH 22 ด้วยโปรโตคอล TCP
- คลิก "อัปเดตอุปกรณ์"
เริ่มอุปกรณ์ hub-r1 สำหรับ SD-WAN จากตัวควบคุมของ flexiWAN
- กลับไปที่คลัง → อุปกรณ์ → hub-r1
เลือก "เริ่มอุปกรณ์"
- รอให้การซิงค์เสร็จสมบูรณ์และจดบันทึกสถานะ "กำลังทำงาน"
10. Network Connectivity Center ใน GCP Hub

เปิดใช้บริการ 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 และจดเอาต์พุต คุณจะต้องใช้ข้อมูลนี้ในขั้นตอนถัดไป
โปรดจดที่อยู่ IP ของอินสแตนซ์ hub-r1
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"
เพิ่ม vnic ของ hub-r1 networkIP เป็น spoke โดยค่าเริ่มต้น ระบบจะปิดใช้การโอนข้อมูลเว็บไซต์จากเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่ง
gcloud network-connectivity spokes linked-router-appliances create s2c-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
กำหนดค่า 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
การกำหนดค่าอุปกรณ์เราเตอร์เป็น 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 ของ networkIP ของ hub-r1 โปรดทราบว่าระบบจะใช้ที่อยู่ 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
11. กำหนดค่าอุปกรณ์เราเตอร์ฮับสำหรับ BGP
กำหนดค่าฮับ-r1 สำหรับ BGP
โปรดเข้าสู่ระบบคอนโซล flexiManage
ไปที่พื้นที่โฆษณา → อุปกรณ์ → hub-r1 แล้วเลือกอุปกรณ์ที่มี HostName:hub-r1
- คลิกแท็บ "การกำหนดเส้นทาง"
- คลิก "การกำหนดค่า BGP"
- ปิดใช้ "Redistribute OSPF Routes"
- กำหนดค่า hub-r1 สำหรับ BGP ด้วยพารามิเตอร์ต่อไปนี้ แล้วคลิก "บันทึก"

เลือกแท็บ "อินเทอร์เฟซ" ค้นหาอินเทอร์เฟซ LAN แล้วค้นหาคอลัมน์ "การกำหนดเส้นทาง"
- คลิก "ไม่มี" เพื่อเปิดเมนูเพื่อเลือก BGP เป็นโปรโตคอลการกำหนดเส้นทาง

- คลิก "อัปเดตอุปกรณ์" ที่ด้านบนของหน้า
12. การแลกเปลี่ยนเส้นทาง BGP ระหว่างอุปกรณ์เราเตอร์
สร้าง ASN ในพื้นที่สำหรับเว็บไซต์ระยะไกล
กำหนดค่า ASN ของ BGP ในพื้นที่สำหรับ site1-nva เมื่อกำหนดค่าแล้ว เราจะสร้างอุโมงค์ IPSEC ระหว่างเว็บไซต์ระยะไกลและเราเตอร์ฮับ
เลือกอุปกรณ์ที่มี HostName:site1-nva
- คลิกแท็บ "การกำหนดเส้นทาง"
- คลิก "การกำหนดค่า BGP"
- ปิดใช้ "Redistribute OSPF Routes"
- ASN ภายใน 7269 → บันทึก
- อัปเดตอุปกรณ์
- แท็บอินเทอร์เฟซ → การกำหนดเส้นทาง → BGP
- อัปเดตอุปกรณ์
กำหนดค่าอุโมงค์ข้อมูล VPN ระหว่างอุปกรณ์ Site1 และ Hub1
โปรดเข้าสู่ระบบคอนโซล flexiManage
- ไปที่พื้นที่โฆษณา → อุปกรณ์
- เลือกช่องข้างชื่อโฮสต์ของ site1-nva และ hub-r1 เพื่อสร้างอุโมงค์ VPN ระหว่าง NVA 2 ตัวนี้
- คลิกการดำเนินการ→ สร้างอุโมงค์ แล้วกำหนดค่าต่อไปนี้

- เลือกสร้างอุโมงค์
ตรวจสอบว่า "site1-nva" เรียนรู้เส้นทางไปยังซับเน็ต 192.168.235.0/24 และ 192.168.236.0/24
- เลือกสินค้าคงคลัง → อุปกรณ์ → site1-nva แล้วคลิกแท็บ "การกำหนดเส้นทาง"
ในเอาต์พุตตัวอย่างด้านล่าง flexiWAN สร้างอุโมงค์ข้อมูลโดยอัตโนมัติโดยใช้ที่อยู่ IP ของโฮสต์ 10.100.0.6 
13. ยืนยันการเชื่อมต่อเส้นทางข้อมูล
ยืนยันการเชื่อมต่อเว็บไซต์กับระบบคลาวด์จากระบบในองค์กร
ดูแผนภาพ ยืนยันว่าเส้นทางข้อมูลระหว่าง s1-vm กับ workload1-vm

กำหนดค่าเส้นทางแบบคงที่ของ VPC สำหรับ Site to Cloud
Site1-VPC ภายในองค์กรจำลองเครือข่ายศูนย์ข้อมูลภายในองค์กร
อุปกรณ์เราเตอร์ Site-1-nva ทั้ง 2 เครื่องใช้การเชื่อมต่อ 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
ใน Cloud Shell ให้ค้นหาที่อยู่ IP ของ workload1-vmnee" คุณจะต้องใช้ข้อมูลนี้เพื่อทดสอบการเชื่อมต่อจาก "s1-vm"
gcloud compute instances describe workload1-vm --zone=us-central1-a | grep "networkIP"
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
14. ล้าง
ลบทรัพยากรในองค์กร
เข้าสู่ระบบ Cloud Shell และลบอินสแตนซ์ VM ในฮับและเครือข่ายของสาขา
#onprem instances
gcloud compute instances delete s1-vm --zone=us-central1-a --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
#delete on prem subnets
gcloud compute networks subnets delete site1-subnet --quiet
gcloud compute networks subnets delete s1-inside-subnet --quiet
gcloud compute networks subnets delete s1-inside-subnet --quiet
#delete on prem vpcs
gcloud compute networks delete site1-vpc --quiet
gcloud compute networks delete s1-inside-vpc --quiet
ลบทรัพยากร Cloud Hub
เข้าสู่ระบบ Cloud Shell และลบอินสแตนซ์ VM ในฮับและเครือข่ายของสาขา
#delete ncc spokes
gcloud network-connectivity spokes delete s2c-wrk-cr1 --region us-central1 --quiet
#delete ncc hub
gcloud network-connectivity hubs delete ncc-hub --quiet
#delete hub instances
gcloud compute instances delete hub-r1 --zone=us-central1-a --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 create workload-ssh --quiet
gcloud compute firewall-rules create workload-internal --quiet
gcloud compute firewall-rules create workload-onprem --quiet
gcloud compute firewall-rules create workload-iap --quiet
#delete hub subnets
gcloud compute networks subnets delete workload-subnet1 --quiet
gcloud compute networks subnets delete hub-subnet1 --quiet
#delete hub vpcs
gcloud compute networks delete workload-vpc --quiet
gcloud compute networks delete hub-vpc --quiet
15. ยินดีด้วย
คุณทำแล็บ Network Connectivity Center เสร็จแล้ว
สิ่งที่คุณครอบคลุม
- การผสานรวม WAN ที่กำหนดค่าด้วยซอฟต์แวร์สำหรับเว็บไซต์ NCC กับระบบคลาวด์
ขั้นตอนถัดไป
- ภาพรวมของ Network Connectivity Center
- เอกสารประกอบของ Network Connectivity Center
- แหล่งข้อมูล flexiWAN
- ที่เก็บ GitLab ของ flexiWAN
©Google, LLC หรือบริษัทในเครือ สงวนลิขสิทธิ์ ห้ามเผยแพร่



