Code Lab: NCC VPC dưới dạng một mạng VPC vệ tinh

1. Giới thiệu

Tổng quan

Trong phòng thí nghiệm này, người dùng sẽ khám phá cách sử dụng Network Connectivity Center(NCC) để thiết lập kết nối liên VPC ở quy mô lớn thông qua việc hỗ trợ VPC Spoke. Khi người dùng xác định một VPC là VPC phụ, điều này cho phép họ kết nối VPC đó với nhiều mạng VPC cùng nhau thông qua NCC Hub. NCC có cấu hình VPC spoke giúp giảm độ phức tạp trong hoạt động quản lý kết nối liên VPC theo cặp thông qua tính năng kết nối VPC ngang hàng, thay vì sử dụng mô hình quản lý kết nối tập trung.

Xin lưu ý rằng Network Connectivity Center (NCC) là một mô hình tầng điều khiển dạng trung tâm và vệ tinh để quản lý khả năng kết nối mạng trong Google Cloud. Tài nguyên trung tâm cung cấp một mô hình quản lý kết nối tập trung để kết nối các mạng nhánh.

Sản phẩm bạn sẽ tạo ra

Trong lớp học lập trình này, bạn sẽ tạo một cấu trúc liên kết trung tâm và vệ tinh logic bằng trung tâm NCC. Cấu trúc này sẽ triển khai một cấu trúc kết nối VPC hoàn toàn liên kết trên 3 VPC riêng biệt.

Kiến thức bạn sẽ học được

  • Kết nối VPC dạng lưới đầy đủ bằng NCC
  • NAT riêng tư trên VPC

Bạn cần có

  • Kiến thức về mạng VPC của GCP
  • Kiến thức về Cloud Router và định tuyến BGP
  • Hai dự án riêng biệt trên GCP
  • Lớp học lập trình này yêu cầu 5 VPC. Một trong các VPC đó phải nằm trong một dự án riêng biệt so với trung tâm NCC
  • Kiểm tra Hạn mức:Mạngyêu cầu thêm Mạng nếu cần, ảnh chụp màn hình bên dưới:

6bc606cb34bce7e8.png

Mục tiêu

  • Thiết lập môi trường GCP
  • Định cấu hình Network Connectivity Center với VPC làm mạng vệ tinh
  • Xác thực đường dẫn dữ liệu
  • Khám phá các tính năng về khả năng cung cấp dịch vụ của NCC
  • Dọn dẹp các tài nguyên đã dùng

Trước khi bắt đầu

Bảng điều khiển Google Cloud và Cloud Shell

Để tương tác với GCP, chúng ta sẽ sử dụng cả Google Cloud Console và Cloud Shell trong suốt phòng thí nghiệm này.

Dự án NCC Hub Bảng điều khiển Google Cloud

Bạn có thể truy cập vào Cloud Console tại https://console.cloud.google.com.

Thiết lập các mục sau trong Google Cloud để dễ dàng định cấu hình Network Connectivity Center:

Trong Google Cloud Console, trên trang chọn dự án, hãy chọn hoặc tạo một dự án Google Cloud.

Khởi chạy Cloud Shell. Lớp học lập trình này sử dụng các $biến để hỗ trợ việc triển khai cấu hình gcloud trong Cloud Shell.

gcloud auth list
gcloud config list project
gcloud config set project [HUB-PROJECT-NAME]
projectname=[HUB-PROJECT-NAME]
echo $projectname
gcloud config set compute/zone us-central1-a
gcloud config set compute/region us-central1

Vai trò IAM

NCC yêu cầu các vai trò IAM truy cập vào các API cụ thể. Hãy nhớ định cấu hình người dùng của bạn bằng các vai trò NCC IAM theo yêu cầu.

Vai trò/Nội dung mô tả

Quyền

networkconnectivity.networkAdmin – Cho phép quản trị viên mạng quản lý trung tâm và các mạng vệ tinh.

networkconnectivity.hubs.networkconnectivity.spokes.

networkconnectivity.networkSpokeManager – Cho phép thêm và quản lý các spoke trong một trung tâm. Được dùng trong VPC dùng chung, trong đó dự án lưu trữ sở hữu Hub, nhưng các quản trị viên khác trong các dự án khác có thể thêm các mạng vệ tinh để đính kèm vào Hub.

networkconnectivity.spokes.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer – Cho phép người dùng mạng xem các thuộc tính khác nhau của trung tâm và các mạng vệ tinh.

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

2. Thiết lập môi trường mạng

Tổng quan

Trong phần này, chúng ta sẽ triển khai mạng VPC và các quy tắc tường lửa trong một dự án duy nhất. Sơ đồ logic minh hoạ môi trường mạng sẽ được thiết lập trong bước này.

Để minh hoạ khả năng hỗ trợ dự án chéo, trong một bước sau, chúng ta sẽ triển khai VPC và các quy tắc tường lửa trong một dự án khác.

dc4ed09dae1a0056.png

Tạo VPC và Mạng con

Mạng VPC chứa các mạng con mà bạn sẽ cài đặt GCE VM để xác thực đường dẫn dữ liệu

gcloud compute networks create vpc1-ncc --subnet-mode custom
gcloud compute networks create vpc2-ncc --subnet-mode custom
gcloud compute networks create vpc3-ncc --subnet-mode custom
gcloud compute networks create vpc4-ncc --subnet-mode custom

gcloud compute networks subnets create vpc1-ncc-subnet1 \
--network vpc1-ncc --range 10.1.1.0/24 --region us-central1

gcloud compute networks subnets create vpc1-ncc-subnet2 \
--network vpc1-ncc --range 10.1.2.0/25 --region us-central1

gcloud compute networks subnets create vpc1-ncc-subnet3 \
--network vpc1-ncc --range 10.1.2.128/25 --region us-central1

gcloud compute networks subnets create vpc2-ncc-subnet1 \
--network vpc2-ncc --range 10.2.2.0/24 --region us-central1

Dải mạng con được hỗ trợ của VPC

NCC hỗ trợ tất cả các dải mạng con IPv4 hợp lệ, ngoại trừ địa chỉ IP công khai được sử dụng riêng tư. Trong bước này, hãy tạo dải IP hợp lệ trong VPC4 sẽ được nhập vào bảng định tuyến của trung tâm.

gcloud compute networks subnets create benchmark-testing-rfc2544 \
--network vpc4-ncc --range 198.18.0.0/15 --region us-east1

gcloud compute networks subnets create class-e-rfc5735 \
--network vpc4-ncc --range 240.0.0.0/4 --region us-east1

gcloud compute networks subnets create ietf-protcol-assignment-rfc6890 \
--network vpc4-ncc --range 192.0.0.0/24 --region us-east1

gcloud compute networks subnets create ipv6-4-relay-rfc7526 \
--network vpc4-ncc --range 192.88.99.0/24 --region us-east1

gcloud compute networks subnets create pupi \
--network vpc4-ncc --range 50.50.50.0/24 --region us-east1

gcloud compute networks subnets create test-net-1-rfc5737 \
--network vpc4-ncc --range 192.0.2.0/24 --region us-east1

gcloud compute networks subnets create test-net-2-rfc5737 \
--network vpc4-ncc --range 198.51.100.0/24 --region us-east1

gcloud compute networks subnets create test-net-3-rfc5737 \
--network vpc4-ncc --range 203.0.113.0/24 --region us-east1

Tạo dải mạng con trùng lặp

NCC sẽ không nhập các dải IP trùng lặp vào bảng định tuyến của trung tâm. Người dùng sẽ giải quyết hạn chế này ở bước sau. Hiện tại, hãy tạo 2 dải IP trùng nhau cho VPC2 và VPC3.

gcloud compute networks subnets create overlapping-vpc2 \
--network vpc3-ncc --range 10.3.3.0/24 --region us-central1

gcloud compute networks subnets create overlapping-vpc3 \
--network vpc2-ncc --range 10.3.3.0/24 --region us-central1

Định cấu hình các quy tắc tường lửa VPC

Định cấu hình các quy tắc về tường lửa trên mỗi VPC để cho phép

  • SSH
  • Giao dịch mua hàng trong ứng dụng (IAP) nội bộ
  • Dải ô 10.0.0.0/8
gcloud compute firewall-rules create ncc1-vpc-internal \
--network vpc1-ncc \
--allow all \
--source-ranges 10.0.0.0/8

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

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

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

gcloud compute firewall-rules create ncc1-vpc-iap \
--network vpc1-ncc \
--allow all \
--source-ranges 35.235.240.0/20

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

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

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

Định cấu hình máy ảo GCE trong mỗi VPC

Bạn sẽ cần có quyền truy cập Internet tạm thời để cài đặt các gói trên "vm1-vpc1-ncc".

Tạo 4 máy ảo, mỗi máy ảo sẽ được chỉ định cho một trong các VPC đã tạo trước đó

gcloud compute instances create vm1-vpc1-ncc \
--subnet vpc1-ncc-subnet1 \
--metadata=startup-script='#!/bin/bash
  apt-get update
  apt-get install apache2 -y
  apt-get install tcpdump -y
  service apache2 restart
  echo "
<h3>Web Server: www-vm1</h3>" | tee /var/www/html/index.html'


gcloud compute instances create vm2-vpc2-ncc \
--zone us-central1-a \
--subnet vpc2-ncc-subnet1 \
--no-address 

gcloud compute instances create pnat-vm-vpc2 \
--zone us-central1-a \
--subnet overlapping-vpc3 \
--no-address 


gcloud compute instances create vm1-vpc4-ncc \
--zone us-east1-b \
--subnet class-e-rfc5735 \
--no-address

3. Trung tâm Network Connectivity Center

Tổng quan

Trong phần này, chúng ta sẽ thiết lập một NCC Hub bằng các lệnh gcloud. NCC Hub sẽ đóng vai trò là lớp điều khiển chịu trách nhiệm xây dựng cấu hình định tuyến giữa mỗi VPC phụ.

860347511de47cea.png

Bật dịch vụ API

Bật API kết nối mạng nếu bạn chưa bật:

gcloud services enable networkconnectivity.googleapis.com

Tạo Trung tâm NCC

Tạo một trung tâm NCC bằng lệnh gCloud

gcloud network-connectivity hubs create ncc-hub

Kết quả ví dụ

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]

Mô tả NCC Hub mới tạo. Ghi lại tên và đường dẫn liên kết.

gcloud network-connectivity hubs describe ncc-hub
gcloud network-connectivity hubs describe ncc-hub
createTime: '2023-11-02T02:28:34.890423230Z'
name: projects/user-3p-dev/locations/global/hubs/ncc-hub
routeTables:
- projects/user-3p-dev/locations/global/hubs/ncc-hub/routeTables/default
state: ACTIVE
uniqueId: de749c4c-0ef8-4888-8622-1ea2d67450f8
updateTime: '2023-11-02T02:28:48.613853463Z'

NCC Hub giới thiệu một bảng định tuyến xác định lớp điều khiển để tạo kết nối dữ liệu. Tìm tên của bảng định tuyến của NCC Hub

 gcloud network-connectivity hubs route-tables list --hub=ncc-hub
NAME: default
HUB: ncc-hub
DESCRIPTION:

Tìm URI của bảng định tuyến mặc định NCC.

gcloud network-connectivity hubs route-tables describe default --hub=ncc-hub
createTime: '2023-02-24T17:32:58.786269098Z'
name: projects/user-3p-dev/locations/global/hubs/ncc-hub/routeTables/default
state: ACTIVE
uid: eb1fdc35-2209-46f3-a8d6-ad7245bfae0b
updateTime: '2023-02-24T17:33:01.852456186Z'

Liệt kê nội dung của bảng định tuyến mặc định của NCC Hub. Lưu ý* Bảng định tuyến của NCC Hub sẽ trống cho đến khi các spoke được

gcloud network-connectivity hubs route-tables routes list --hub=ncc-hub --route_table=default

Bảng định tuyến của NCC Hub phải trống.

4. NCC có các VPC Spoke

Tổng quan

Trong phần này, bạn sẽ định cấu hình 3 VPC làm NCC Spoke bằng các lệnh gCloud.

b367b1659d2df694.png

Định cấu hình(các) VPC làm NCC Spoke

Định cấu hình(các) VPC sau đây làm NCC Spoke theo thứ tự này

  • VPC4
  • VPC1
  • VPC2
  • VPC3

Định cấu hình VPC4 làm một mạng VPC vệ tinh NCC và chỉ định mạng này cho trung tâm NCC đã được tạo trước đó. Các lệnh gọi API NCC spoke yêu cầu bạn chỉ định một vị trí. Cờ "–global" giúp đơn giản hoá cú pháp gcloud bằng cách cho phép người dùng tránh chỉ định đường dẫn URI đầy đủ khi định cấu hình một spoke NCC mới.

gcloud network-connectivity spokes linked-vpc-network create vpc4-spoke4 \
--hub=ncc-hub \
--vpc-network=vpc4-ncc \
--global

Định cấu hình VPC1 làm một mạng trung tâm và vệ tinh NCC.

Quản trị viên có thể loại trừ các tuyến đường của mạng con khỏi việc xuất từ một VPC phụ vào bảng định tuyến của trung tâm NCC. Trong phần này của lớp học lập trình, hãy tạo một quy tắc loại trừ xuất dựa trên tiền tố tóm tắt để ngăn mạng con của VPC1 xuất vào bảng định tuyến của NCC Hub.

Sử dụng lệnh gcloud này để liệt kê tất cả các mạng con thuộc VPC1.

gcloud config set accessibility/screen_reader false
gcloud compute networks subnets list --network=vpc1-ncc

Lưu ý cặp mạng con /25 đã được tạo trước đó trong phần thiết lập.

NAME              REGION       NETWORK   RANGE          STACK_TYPE  
vpc1-ncc-subnet1  us-central1  vpc1-ncc  10.1.1.0/24    IPV4_ONLY
vpc1-ncc-subnet2  us-central1  vpc1-ncc  10.1.2.0/25    IPV4_ONLY
vpc1-ncc-subnet3  us-central1  vpc1-ncc  10.1.2.128/25  IPV4_ONLY

Định cấu hình VPC1 làm một mạng NCC và loại trừ cặp mạng con /25 khỏi việc nhập vào bảng định tuyến trung tâm bằng cách sử dụng từ khoá "export-exclude-ranges" để lọc tuyến đường tóm tắt /24 từ phạm vi cụ thể đó.

gcloud network-connectivity spokes linked-vpc-network create vpc1-spoke1 \
--hub=ncc-hub \
--vpc-network=vpc1-ncc \
--exclude-export-ranges=10.1.2.0/24 \
--global 

Lưu ý* Người dùng có thể lọc tối đa 16 dải IP riêng biệt cho mỗi spoke NCC.

Liệt kê nội dung của bảng định tuyến mặc định của NCC Hub. Điều gì đã xảy ra với cặp mạng con /25 trên bảng định tuyến của NCC Hub?

gcloud network-connectivity hubs route-tables routes list --hub=ncc-hub --route-table=default --filter="NEXT_HOP:vpc1-ncc"
IP_CIDR_RANGE  STATE   TYPE                  NEXT_HOP  HUB      ROUTE_TABLE
10.1.1.0/24    ACTIVE  VPC_PRIMARY_SUBNET    vpc1-ncc  ncc-hub  default

Định cấu hình VPC2 làm một mạng trung tâm và mạng vệ tinh (NCC)

gcloud network-connectivity spokes linked-vpc-network create vpc2-spoke2 \
--hub=ncc-hub \
--vpc-network=vpc2-ncc \
--global

Định cấu hình VPC3 làm một mạng VPC vệ tinh của NCC và chỉ định mạng này cho trung tâm NCC đã được tạo trước đó.

gcloud  network-connectivity spokes linked-vpc-network create vpc3-spoke3 \
--hub=ncc-hub \
--vpc-network=vpc3-ncc \
--global

Điều gì đã xảy ra?

ERROR: (gcloud.network-connectivity.spokes.linked-vpc-network.create) Invalid resource state for "https://www.googleapis.com/compute/v1/projects/xxxxxxxx/global/networks/vpc3-ncc": 10.3.3.0/24 (SUBNETWORK) overlaps with 10.3.3.0/24 (SUBNETWORK) from "projects/user-3p-dev/global/networks/vpc2-ncc" (peer)

NCC Hub phát hiện thấy dải IP trùng lặp với VPC2. Hãy nhớ rằng VPC2 và VPC3 đều được thiết lập cùng một mạng con IP 10.3.3.0/24.

Lọc các dải IP trùng lặp bằng tính năng Xuất dữ liệu loại trừ

Sử dụng lệnh gcloud để cập nhật VPC2 spoke nhằm loại trừ dải IP trùng lặp.

gcloud  network-connectivity spokes linked-vpc-network update vpc2-spoke2 \
--hub=ncc-hub \
--vpc-network=vpc2-ncc \
--exclude-export-ranges=10.3.3.0/24 \
--global

Sử dụng lệnh gcloud để cập nhật spoke NCC cho VPC3 nhằm loại trừ dải mạng con trùng lặp.

gcloud network-connectivity spokes linked-vpc-network create vpc3-spoke3 \
--hub=ncc-hub \
--vpc-network=vpc3-ncc \
--exclude-export-ranges=10.3.3.0/24 \
--global

Liệt kê nội dung của bảng định tuyến mặc định của NCC Hub và kiểm tra đầu ra.

gcloud network-connectivity hubs route-tables routes list --hub=ncc-hub --route_table=default

Các dải IP trùng lặp từ VPC2 và VPC3 sẽ bị loại trừ. Bảng định tuyến của NCC Hub hỗ trợ tất cả các loại dải IPv4 hợp lệ, ngoại trừ địa chỉ IP công khai được sử dụng riêng tư (PUPI).

5. NCC có các spoke trên nhiều dự án

Tổng quan

Cho đến nay, bạn đã định cấu hình các spoke NCC thuộc cùng một dự án với Hub. Trong phần này, bạn sẽ định cấu hình VPC làm một NCC Spoke từ một dự án riêng biệt không phải là NCC Hub bằng cách sử dụng các lệnh gCloud.

Điều này cho phép chủ sở hữu dự án đang quản lý VPC của riêng họ tham gia vào khả năng kết nối mạng với NCC Hub.

a90b3185e30832e8.png

Nhiều dự án: Google Cloud Console và Cloud Shell

Để tương tác với GCP, chúng ta sẽ sử dụng cả Google Cloud Console và Cloud Shell trong suốt phòng thí nghiệm này.

Cross Project Spoke Google Cloud Console

Bạn có thể truy cập vào Cloud Console tại https://console.cloud.google.com.

Thiết lập các mục sau trong Google Cloud để dễ dàng định cấu hình Network Connectivity Center:

Trong Google Cloud Console, trên trang chọn dự án, hãy chọn hoặc tạo một dự án Google Cloud.

Khởi chạy Cloud Shell. Lớp học lập trình này sử dụng các $biến để hỗ trợ việc triển khai cấu hình gcloud trong Cloud Shell.

gcloud auth list
gcloud config list project
gcloud config set project [YOUR-CROSSPROJECT-NAME]
xprojname=[YOUR-CROSSPROJECT-NAME]
echo $xprojname
gcloud config set compute/zone us-central1-a
gcloud config set compute/region us-central1

Vai trò IAM

NCC yêu cầu các vai trò IAM truy cập vào các API cụ thể. Hãy nhớ định cấu hình người dùng của bạn bằng các vai trò NCC IAM theo yêu cầu.

Ít nhất, quản trị viên spoke trên nhiều dự án phải được cấp vai trò IAM: "networkconnectivity.networkSpokeManager. "

Bảng dưới đây liệt kê vai trò IAM mà quản trị viên NCC Hub và Spoke cần có để tham khảo.

Vai trò/Nội dung mô tả

Quyền

networkconnectivity.networkAdmin – Cho phép quản trị viên mạng quản lý trung tâm và các mạng vệ tinh.

networkconnectivity.hubs.networkconnectivity.spokes.

networkconnectivity.networkSpokeManager – Cho phép thêm và quản lý các spoke trong một trung tâm. Được dùng trong VPC dùng chung, trong đó dự án lưu trữ sở hữu Hub, nhưng các quản trị viên khác trong các dự án khác có thể thêm các mạng vệ tinh để đính kèm vào Hub.

networkconnectivity.spokes.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer – Cho phép người dùng mạng xem các thuộc tính khác nhau của trung tâm và các mạng vệ tinh.

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

Tạo VPC và Mạng con trong Dự án chéo

Mạng VPC chứa các mạng con mà bạn sẽ cài đặt GCE VM để xác thực đường dẫn dữ liệu

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

gcloud compute networks subnets create xprj-net-1 \
--network xproject-vpc \
--range 10.100.1.0/24 \
--region us-central1

gcloud compute networks subnets create xprj-net-2 \
--network xproject-vpc \
--range 10.100.2.0/24 \
--region us-central1

URI của dự án NCC Hub

Sử dụng lệnh gcloud này để tìm URI của Trung tâm NCC. Bạn sẽ cần đường dẫn URI để định cấu hình NCC spoke trên nhiều dự án trong bước tiếp theo.

gcloud network-connectivity hubs describe ncc-hub

VPC nhánh giữa các dự án

Đăng nhập vào dự án khác không thuộc dự án NCC Hub. Trên cloudshell, hãy dùng lệnh này để định cấu hình một VPC làm một mạng trung tâm và vệ tinh (NCC).

  • HUB_URI phải là URI của một trung tâm trong một dự án khác.
  • VPC_URI phải nằm trong cùng một dự án với spoke
  • VPC-network chỉ định VPC trong dự án này sẽ tham gia NCC Hub trong một dự án khác
gcloud network-connectivity spokes linked-vpc-network create xproj-spoke \
--hub=projects/[YOUR-PROJECT-NAME]/locations/global/hubs/ncc-hub \
--global \
--vpc-network=xproject-vpc

.

Create request issued for: [xproj-spoke]
Waiting for operation [projects/xproject/locations/global/operations/operation-1689790411247-600dafd351158-2b862329-19b747f1] to complete...done.                           
Created spoke [xproj-spoke].
createTime: '2023-07-19T18:13:31.388500663Z'
hub: projects/[YOUR-PROJECT-NAME]/locations/global/hubs/ncc-hub
linkedVpcNetwork:
  uri: https://www.googleapis.com/compute/v1/projects/xproject/global/networks/xproject-vpc
name: projects/xproject/locations/global/spokes/xproj-spoke
reasons:
- code: PENDING_REVIEW
  message: Spoke is Pending Review
spokeType: VPC_NETWORK
state: INACTIVE
uniqueId: 46b4d091-89e2-4760-a15d-c244dcb7ad69
updateTime: '2023-07-19T18:13:38.652800902Z'

Trạng thái của NCC spoke trên nhiều dự án là gì? Tại sao?

6. Từ chối hoặc chấp nhận Spoke giữa các dự án

Tổng quan

Quản trị viên NCC Hub phải chấp nhận một cách rõ ràng một dự án phụ thuộc để tham gia vào trung tâm. Điều này giúp ngăn chủ sở hữu dự án đính kèm các spoke NCC giả mạo vào bảng định tuyến toàn cầu của NCC. Sau khi được chấp nhận hoặc bị từ chối, một mạng nhánh có thể bị từ chối hoặc được chấp nhận bao nhiêu lần tuỳ ý bằng cách chạy các lệnh ở trên.

Quay lại dự án nơi đặt trung tâm NCC bằng cách đăng nhập vào Cloud Shell.

Xác định các dự án liên kết cần xem xét

gcloud network-connectivity hubs list-spokes ncc-hub \
 --filter="reason:PENDING_REVIEW"

Chấp nhận một spoke

gcloud network-connectivity hubs accept-spoke ncc-hub --spoke=xproj-spoke

Không bắt buộc: Từ chối một spoke

gcloud network-connectivity spokes reject-spoke ncc-hub --spoke=xproj-spoke 
--details="some reason to reject"

Liệt kê các Spoke đang hoạt động trên Hub

gcloud network-connectivity hubs list-spokes ncc-hub \
 --filter="state:ACTIVE"
NAME            PROJECT          LOCATION  TYPE         STATE   STATE REASON
Xproj-spoke     xproj            global    VPC_NETWORK  ACTIVE
vpc4-spoke4     user-3p-dev      global    VPC_NETWORK  ACTIVE
vpc1-spoke1     user-3p-dev      global    VPC_NETWORK  ACTIVE
vpc2-spoke2     user-3p-dev      global    VPC_NETWORK  ACTIVE
vpc3-spoke3     user-3p-dev      global    VPC_NETWORK  ACTIVE

Liệt kê các tuyến đường của mạng con trên Hub

Trong đầu ra, bạn có thấy các tuyến đường của mạng con từ VPC liên kết không?

gcloud network-connectivity hubs route-tables routes list \
--route_table=default \
--hub=ncc-hub \
--filter="NEXT_HOP:xprj-vpc"
IP_CIDR_RANGE  STATE   TYPE                NEXT_HOP  HUB      ROUTE_TABLE
10.100.1.0/24  ACTIVE  VPC_PRIMARY_SUBNET  xprj-vpc  ncc-hub  default

Cập nhật VPC Spoke trên nhiều dự án bằng bộ lọc Include-Export

Đăng nhập vào dự án mà VPC KHÔNG thuộc dự án NCC Hub. Trên cloudshell, hãy dùng lệnh này để định cấu hình một VPC làm một mạng trung tâm và vệ tinh (NCC).

  • HUB_URI phải là URI của một trung tâm trong một dự án khác.
  • VPC_URI phải nằm trong cùng một dự án với spoke
  • VPC-network chỉ định VPC trong dự án này sẽ tham gia NCC Hub trong một dự án khác
  • Chỉ nhập dải mạng con 10.100.2.0/24 vào Bảng định tuyến của Trung tâm NCC
  • Lưu ý giá trị "ETAG" trong đầu ra. Giá trị này do NCC tạo và bạn cần cung cấp giá trị này cho quản trị viên trung tâm NCC. Quản trị viên trung tâm NCC sẽ cần tham chiếu giá trị này khi chấp nhận yêu cầu của mạng ngang hàng liên dự án để tham gia trung tâm.
gcloud network-connectivity spokes linked-vpc-network update xproj-spoke \
--hub=projects/[YOUR-PROJECT-NAME]/locations/global/hubs/ncc-hub \
--global \
--include-export-ranges=10.100.2.0/24
Update request issued for: [xprj-vpc]
Waiting for operation [projects]/xproject/locations/global/operations/operation-1742936388803-6313100521cae-020ac5d2-58
52fbba] to complete...done.                                                                                                 
Updated spoke [xprj-vpc].
createTime: '2025-02-14T14:25:41.996129250Z'
etag: '4'
fieldPathsPendingUpdate:
- linked_vpc_network.include_export_ranges
group: projects/xxxxxxxx/locations/global/hubs/ncc-hub/groups/default
hub: projects/xxxxxxxx/locations/global/hubs/ncc-hub
linkedVpcNetwork:
  includeExportRanges:
  - 10.100.2.0/24
  uri: https://www.googleapis.com/compute/v1/projects/xproject/global/networks/vpc1-spoke
name: projects/xproject/locations/global/spokes/xprj-vpc
reasons:
- code: UPDATE_PENDING_REVIEW
  message: Spoke update is Pending Review
spokeType: VPC_NETWORK
state: ACTIVE
uniqueId: 182e0f8f-91cf-481c-a081-ea6f7e40fb0a
updateTime: '2025-03-25T20:59:51.995734879Z'

Xác định các dự án liên kết được cập nhật cần xem xét

Đăng nhập vào dự án đang lưu trữ trung tâm NCC. Trên Cloud Shell, hãy dùng lệnh này để kiểm tra trạng thái của bản cập nhật VPC liên dự án.

  • Giá trị ETAG là gì? Giá trị này phải khớp với đầu ra từ bản cập nhật vpc spoke.
gcloud network-connectivity hubs list-spokes ncc-hub \ 
--filter="reasons:UPDATE_PENDING_REVIEW" \
--format=yaml

Chấp nhận các thay đổi mới nhất từ spoke của dự án chéo

Sử dụng lệnh này để chấp nhận yêu cầu tham gia NCC Hub của spoke trên nhiều dự án

gcloud network-connectivity hubs accept-spoke-update ncc-hub \
 --spoke=https://www.googleapis.com/networkconnectivity/v1/projects/xproject/locations/global/spokes/xproj-spoke \
 --spoke-etag={etag value}

Nếu muốn, hãy từ chối các thay đổi mới nhất từ nhánh dự án

Sử dụng lệnh này để từ chối yêu cầu tham gia NCC Hub của spoke trên nhiều dự án

gcloud network-connectivity hubs reject-spoke-update ncc-hub  \
--spoke=https://www.googleapis.com/networkconnectivity/v1/projects/xproject/locations/global/spokes/xproj-spoke  \
--details="not today" \
--spoke-etag={etag value} 

Xác minh rằng spoke của dự án chéo đã tham gia vào trung tâm NCC

gcloud network-connectivity hubs list-spokes ncc-hub \ --filter="name:xproj-spoke"

7. NAT riêng giữa(các) VPC

Tổng quan

Trong phần này, bạn sẽ định cấu hình NAT riêng tư cho các dải mạng con trùng lặp giữa hai VPC. Xin lưu ý rằng NAT riêng tư giữa(các) VPC yêu cầu NCC.

Trong phần trước, VPC2 và VPC3 được định cấu hình với dải mạng con trùng lặp là "10.3.3.0/24". Cả hai VPC đều được định cấu hình dưới dạng một mạng ngang hàng đám mây(NCC) để loại trừ mạng con trùng lặp khỏi việc được chèn vào bảng định tuyến trung tâm NCC. Điều này có nghĩa là không có đường dẫn dữ liệu lớp 3 để tiếp cận các máy chủ lưu trú trên mạng con đó.

Sử dụng các lệnh này trong dự án trung tâm NCC để tìm(các) dải mạng con trùng lặp.

gcloud compute networks subnets list --network vpc2-ncc

gcloud compute networks subnets list --network vpc3-ncc

Trên vpc2-ncc, tên mạng con nào chứa dải IP trùng lặp?

*Ghi chú và lưu tên mạng con ở đâu đó. Bạn sẽ định cấu hình NAT nguồn cho dải này.

Định cấu hình NAT riêng tư

Dành riêng một dải mạng con có thể định tuyến cho lưu lượng truy cập NAT nguồn từ mạng con trùng lặp của VPC2. Bằng cách định cấu hình một dải mạng con không trùng lặp bằng cờ "–purpose=PRIVATE_NAT".

gcloud beta compute networks subnets create ncc2-spoke-nat \
--network=vpc2-ncc \
--region=us-central1 \
--range=10.10.10.0/29 \
--purpose=PRIVATE_NAT

Tạo một bộ định tuyến đám mây chuyên dụng để thực hiện NAT riêng tư

gcloud compute routers create private-nat-cr \
--network vpc2-ncc \
--region us-central1

Định cấu hình bộ định tuyến đám mây để NAT nguồn cho dải trùng lặp 10.3.3.0/24 từ vpc2-ncc. Trong cấu hình ví dụ bên dưới, "overlapping-vpc3" là tên của mạng con trùng lặp. Từ khoá "ALL" chỉ định rằng tất cả các dải IP trong mạng con sẽ được NAT nguồn.

gcloud beta compute routers nats create ncc2-nat \
--router=private-nat-cr \
--type=PRIVATE \
--nat-custom-subnet-ip-ranges=overlapping-vpc3:ALL \
--router-region=us-central1

Các bước trước đó đã tạo một nhóm dải IP NAT và mạng con cụ thể sẽ được dịch. Trong bước này, hãy tạo Quy tắc NAT "1" để dịch các gói mạng khớp với lưu lượng truy cập có nguồn từ dải mạng con trùng lặp nếu mạng đích lấy đường dẫn từ bảng định tuyến của trung tâm NCC.

gcloud beta compute routers nats rules create 1 \
--router=private-nat-cr \
--region=us-central1 \
--match='nexthop.hub == "//networkconnectivity.googleapis.com/projects/$projectname/locations/global/hubs/ncc-hub"' \
--source-nat-active-ranges=ncc2-spoke-nat \
--nat=ncc2-nat

Xác minh đường dẫn dữ liệu cho NAT riêng tư

gcloud beta compute routers nats describe ncc2-nat --router=private-nat-cr

Kết quả ví dụ

enableDynamicPortAllocation: true
enableEndpointIndependentMapping: false
endpointTypes:
- ENDPOINT_TYPE_VM
name: ncc2-nat
rules:
- action:
    sourceNatActiveRanges:
    - https://www.googleapis.com/compute/beta/projects/xxxxxxxx/regions/us-central1/subnetworks/ncc2-spoke-nat
  match: nexthop.hub == "//networkconnectivity.googleapis.com/projects/xxxxxxxx/locations/global/hubs/ncc-hub"
  ruleNumber: 1
sourceSubnetworkIpRangesToNat: LIST_OF_SUBNETWORKS
subnetworks:
- name: https://www.googleapis.com/compute/beta/projects/xxxxxxxx/regions/us-central1/subnetworks/overlapping-vpc3
  sourceIpRangesToNat:
  - ALL_IP_RANGES
type: PRIVATE

Bạn có thể chọn

  • Chuyển sang bảng điều khiển trên web
  • chuyển đến "Network Services > Cloud NAT > ncc2-nat" (Dịch vụ mạng > Cloud NAT > ncc2-nat)

Xác minh rằng tính năng phân bổ cổng động được bật theo mặc định.

7317d3cfb7e9468b.png

Tiếp theo, bạn sẽ xác minh đường dẫn dữ liệu sử dụng đường dẫn NAT riêng được định cấu hình cho VPC2.

444d45616f1d0cae.png

Mở một phiên SSH đến "vm1-vpc1-ncc" và sử dụng lệnh tcpdump bên dưới để ghi lại các gói có nguồn gốc từ dải nhóm NAT "10.10.10.0/29".

vm1-vpc1-ncc

sudo tcpdump -i any net 10.10.10.0/29 -n

Tại thời điểm viết lớp học lập trình này, NAT riêng tư không hỗ trợ các gói ICMP. Phiên SSH đến "pNat-vm-vpc2" và sử dụng lệnh curl như minh hoạ bên dưới để kết nối với "vm1-vpc1-ncc" trên cổng TCP 80.

pnat-vm-vpc2

curl 10.1.1.2 -v 

Kiểm tra đầu ra của tcpdump trên "vm1-vpc1-ncc." Địa chỉ IP nguồn nào đã bắt đầu phiên TCP đến máy chủ web của chúng tôi trên "vm1-vpc1-ncc".

tcpdump: data link type LINUX_SLL2
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes
19:05:27.504761 ens4  In  IP 10.10.10.2.1024 > 10.1.1.2:80: Flags [S], seq 2386228656, win 65320, options [mss 1420,sackOK,TS val 3955849029 ecr 0,nop,wscale 7], length 0
19:05:27.504805 ens4  Out IP 10.1.1.2:80 > 10.10.10.2.1024: Flags [S.], seq 48316785, ack 2386228657, win 64768, options [mss 1420,sackOK,TS val 1815983704 ecr 3955849029,nop,wscale 7], length 0
<output snipped>

8. Hỗ trợ NCC cho mạng con IPv6

Network Connectivity Center hỗ trợ trao đổi mạng con IPv6 và trao đổi tuyến động giữa các VPC Spoke và Hybrid Spoke của NCC. Trong phần này, hãy định cấu hình NCC để hỗ trợ chế độ trao đổi tuyến đường mạng con chỉ IPv6 và IPv4-và-IPv6 ngăn xếp kép.

57282c3276d50671.png

Tạo một VPC mới cho IPv6 sẽ tham gia NCC-Hub dưới dạng một VPC phụ. GCP sẽ tự động chỉ định tất cả địa chỉ ULA trong dải fd20::/20.

gcloud compute networks create vpc5-ncc \
--subnet-mode custom \
--enable-ula-internal-ipv6 

gcloud compute networks subnets create vpc5-ext-ipv6 \ --network=vpc5-ncc \ 
--stack-type=IPV6 \ 
--ipv6-access-type=EXTERNAL \ 
--region=us-central1

gcloud compute networks subnets create vpc5-ipv4-subnet1 \
--network vpc5-ncc \
--range 10.5.5.0/24 \
--region us-central1

Sử dụng lệnh này để định cấu hình VPC5 làm một mạng ngang hàng NCC và loại trừ tuyến đường mạng con IPv4 khỏi việc được xuất vào bảng định tuyến trung tâm. Xuất mạng ULA IPv6 vào bảng định tuyến của trung tâm NCC.

gcloud network-connectivity spokes linked-vpc-network create vpc5-spoke5 \
--hub=ncc-hub \
--vpc-network=vpc5-ncc \
--exclude-export-ranges=10.5.5.0/24
--global

Bật VPC1 và VPC4 cho Địa chỉ cục bộ duy nhất (ULA) IPv6 riêng tư. GCP sẽ tự động chỉ định tất cả địa chỉ ULA trong dải fd20::/20.

gcloud compute networks update vpc-ncc4 \
    --enable-ula-internal-ipv6

gcloud compute networks update vpc-ncc1 \
    --enable-ula-internal-ipv6

Tạo một mạng con ipv6 gốc và một mạng con ipv4_v6 hai ngăn xếp trong VPC1

gcloud compute networks subnets create vpc1-ipv6-sn1 \
    --network=vpc-ncc1 \
    --stack-type=IPV6_ONLY \
    --ipv6-access-type=INTERNAL \
    --region=us-central1

gcloud compute networks subnets create vpc1-ipv64-sn2 \
    --network=vpc-ncc1 \
    --range=10.10.10.0/24 \
    --stack-type=IPV4_IPV6 \
    --ipv6-access-type=INTERNAL \
    --region=us-east1

Tạo một mạng con ipv6 gốc và một mạng con ipv4_v6 hai ngăn xếp trong VPC4

gcloud compute networks subnets create vpc4-ipv6-sn1 \
    --network=vpc-ncc4 \
    --stack-type=IPV6_ONLY \
    --ipv6-access-type=INTERNAL \
    --region=us-central1

gcloud compute networks subnets create vpc4-ipv64-sn2 \
    --network=vpc-ncc4 \
    --range=10.40.40.0/24 \
    --stack-type=IPV4_IPV6 \
    --ipv6-access-type=INTERNAL \
    --region=us-east1

Trên VPC1, hãy tạo một quy tắc tường lửa VPC IPv6 để cho phép lưu lượng truy cập có nguồn gốc từ dải ULA IPv6.

gcloud compute firewall-rules create allow-icmpv6-ula-ncc1 \
    --network=vpc-ncc1 \
    --action=allow \
    --direction=ingress \
    --rules=all \
    --source-ranges=fd20::/20

Trên VPC4, hãy tạo một quy tắc tường lửa VPC IPv6 để cho phép lưu lượng truy cập có nguồn từ dải ULA IPv6.

gcloud compute firewall-rules create allow-icmpv6-ula-ncc4 \
    --network=vpc-ncc4 \
    --action=allow \
    --direction=ingress \
    --rules=all \
    --source-ranges=fd20::/20

Tạo 3 phiên bản IPv6 GCE để xác minh khả năng kết nối đường dẫn dữ liệu trong phần tiếp theo. Lưu ý: "vpc1-dualstack-vm" sẽ được dùng làm máy chủ chuyển tiếp để truy cập ngoài băng tần vào các VM GCE IPv6 gốc.

gcloud compute instances create vpc4-ipv6-vm \
    --zone us-central1-a \
    --subnet=vpc4-ipv6-sn1 \
    --stack-type=IPV6_ONLY

gcloud compute instances create vpc1-ipv6-vm \
    --zone us-central1-a \
    --subnet=vpc1-ipv6-sn1 \
    --stack-type=IPV6_ONLY

gcloud compute instances create vpc1-dual-stack-vm \
    --zone us-east1-b \
    --network=vpc-ncc1 \
    --subnet=vpc2-ipv64-sn2 \
    --stack-type=IPV4_IPV6

Kiểm tra NCC Hub để biết mạng con IPv6

Kiểm tra bảng định tuyến của trung tâm NCC để biết các mạng con ULA IPv6.

gcloud network-connectivity hubs route-tables routes list --route_table=default \
--hub=ncc-hub \
--filter="IP_CIDR_RANGE:fd20"

Xin lưu ý rằng đầu ra của lệnh trên không liệt kê các mạng con IPv6. Theo mặc định, các mạng con IPv6 từ các VPC vệ tinh sẽ KHÔNG được đưa vào để xuất sang bảng định tuyến của trung tâm NCC.

Listed 0 items.

Sử dụng các lệnh gcloud bên dưới để cập nhật các mạng nhánh VPC1 và VPC4 nhằm xuất các mạng con IPv6 vào bảng định tuyến trung tâm NCC.

gcloud network-connectivity spokes linked-vpc-network update vpc1-spoke1 \
  --global \
  --include-export-ranges=ALL_IPV6_RANGES

gcloud network-connectivity spokes linked-vpc-network update vpc4-spoke4 \
  --global \
  --include-export-ranges=ALL_IPV6_RANGES

gcloud network-connectivity spokes linked-vpc-network update vpc5-spoke5 \
  --global \
  --include-export-ranges=ALL_IPV6_RANGES

Một lần nữa, hãy kiểm tra bảng định tuyến của trung tâm NCC để biết các mạng con ULA IPv6.

gcloud network-connectivity hubs route-tables routes list --route_table=default \
--hub=ncc-hub \
--filter="IP_CIDR_RANGE:fd20"

Kết quả ví dụ

IP_CIDR_RANGE                  PRIORITY  LOCATION     STATE   TYPE                SITE_TO_SITE  NEXT_HOP  HUB            ROUTE_TABLE
fd20:c95:95d2:1000:0:0:0:0/64            us-east1     ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc4  ncc-hub  default
fd20:c95:95d2:1:0:0:0:0/64               us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc4  ncc-hub  default
fd20:670:3823:0:0:0:0:0/64               us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc5  ncc-hub  default
fd20:90:6768:1000:0:0:0:0/64             us-east1     ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc2  ncc-hub  default
fd20:90:6768:0:0:0:0:0/64                us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc2  ncc-hub  default

Lọc mạng con IPv6 bằng các mạng VPC phụ NCC

Kiểm tra bảng định tuyến của trung tâm NCC để biết các tuyến đường của mạng con IPv6 bên ngoài

gcloud network-connectivity hubs route-tables routes list --route_table=default \
--hub=ncc-hub \
--filter="NEXT_HOP:vpc-ncc5"

Ví dụ về đầu ra, bảng định tuyến của trung tâm ncc đã tìm hiểu dải IPv6 bên ngoài.

IP_CIDR_RANGE                  PRIORITY  LOCATION     STATE   TYPE                SITE_TO_SITE  NEXT_HOP  HUB            ROUTE_TABLE
10.5.5.0/24                              us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc5  ncc-hub  default
2600:1900:4001:ce6:0:0:0:0/64            us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc5  ncc-hub  default
fd20:670:3823:0:0:0:0:0/64               us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc5  ncc-hub  default
10.50.10.0/24                            us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc5  ncc-hub  default

Sử dụng lệnh gcloud bên dưới để cập nhật các mạng nhánh VPC5 nhằm loại trừ 2 mạng con IPv6 nội bộ cụ thể và 1 mạng con IPv6 bên ngoài khỏi việc được chèn vào bảng định tuyến của trung tâm NCC.

gcloud network-connectivity spokes linked-vpc-network update vpc5-spoke5 \
 --global \
 --include-export-ranges=fd20:670:3823:0:0:0:0:0/48 \
 --exclude-export-ranges=fd20:670:3823:1::/64,fd20:670:3823:2::/64  

Sử dụng lệnh gcloud để xác minh bộ lọc xuất của VPC5 spoke

gcloud network-connectivity spokes linked-vpc-network update vpc5-spoke5 \
 --global \
 --include-export-ranges=fd20:670:3823:0:0:0:0:0/48 \
 --exclude-export-ranges=fd20:670:3823:1::/64,fd20:670:3823:2::/64  

Kiểm tra bảng định tuyến của trung tâm NCC để biết các tuyến đường của mạng con IPv6 bên ngoài

gcloud network-connectivity hubs route-tables routes list --route_table=default \
--hub=ncc-hub \
--filter="NEXT_HOP:vpc-ncc5"

Ví dụ về đầu ra, bảng định tuyến của trung tâm ncc đã tìm hiểu được dải IPv6 bên ngoài.

IP_CIDR_RANGE               PRIORITY  LOCATION     STATE   TYPE                SITE_TO_SITE  NEXT_HOP  HUB            ROUTE_TABLE
fd20:670:3823:0:0:0:0:0/64            us-central1  ACTIVE  VPC_PRIMARY_SUBNET  N/A           vpc-ncc5  demo-mesh-hub  default

9. Xác minh khả năng kết nối đường dẫn dữ liệu

Kết nối đường dẫn dữ liệu IPv4

Tham khảo sơ đồ, xác minh đường dẫn dữ liệu IPv4 giữa mỗi máy ảo.

27c61b09f2bf2d02.png

SSH đến "vm1-vpc1-ncc" và bắt đầu kết xuất TCP để theo dõi các gói ICMP từ "vm2-vpc2-ncc". Xin lưu ý rằng VM này nằm trên VPC2.

vm1-vpc1-ncc

sudo tcpdump -i any icmp -v -e -n

Thiết lập một phiên SSH đến "vm1-vpc2-ncc" và "ping" địa chỉ IP của "vm1-vpc1-ncc".

vm1-vpc2-ncc

ping 10.1.1.2

Thiết lập SSH cho "vm1-vpc2-ncc" và "ping" địa chỉ IP của "vm1-vpc4-ncc".

vm1-vpc2-ncc

ping 240.0.0.2

Khả năng kết nối đường dẫn dữ liệu IPv6

Tham khảo sơ đồ, xác minh đường dẫn dữ liệu IP64 giữa mỗi máy ảo.

3afe67968317a16d.png

Sử dụng lệnh gcloud để liệt kê địa chỉ IP cho từng phiên bản có hỗ trợ IPv6.

 gcloud compute instances list --filter="INTERNAL_IP:fd20"

Đầu ra mẫu

NAME                ZONE           MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP                   EXTERNAL_IP      STATUS
vpc1-ipv6-vm        us-central1-a  n1-standard-1               fd20:90:6768:0:0:1:0:0/96                      RUNNING
vpc4-ipv6-vm        us-central1-a  n1-standard-1               fd20:c95:95d2:1:0:1:0:0/96                     RUNNING
vpc1-dual-stack-vm  us-east1-b     n1-standard-1               10.10.10.3                    XXX.196.137.107  RUNNING
                                                               fd20:90:6768:1000:0:1:0:0/96

Thiết lập một phiên SSH đến "vpc1-dualstack-vm" và "ping" địa chỉ IPv6 của "vpc1-ipv6-vm" để xác thực khả năng kết nối IPv6 trong một VPC toàn cầu

ping fd20:90:6768:1000:0:1::

Thiết lập một phiên SSH đến "vpc1-dualstack-vm" và "ping" địa chỉ IPv6 của "vpc4-ipv6-vm" để xác thực khả năng kết nối IPv6 qua một kết nối NCC.

ping fd20:c95:95d2:1:0:1::

10. Dọn dẹp

Đăng nhập vào Cloud Shell và xoá các phiên bản máy ảo trong mạng lưới trung tâm và mạng lưới chi nhánh

Xoá cấu hình NAT VPC riêng tư

gcloud beta compute routers nats rules delete 1 \
--nat=ncc2-nat \
--router=private-nat-cr \
--region=us-central1 \
--quiet

gcloud beta compute routers nats delete ncc2-nat \
--router=private-nat-cr \
--router-region=us-central1 \
--quiet

gcloud compute routers delete private-nat-cr \
--region=us-central1 \
--quiet

Xoá các trung tâm ncc

gcloud network-connectivity spokes delete vpc1-spoke1 --global --quiet

gcloud network-connectivity spokes delete vpc2-spoke2 --global --quiet

gcloud network-connectivity spokes delete vpc3-spoke3 --global --quiet

gcloud network-connectivity spokes delete vpc4-spoke4 --global --quiet

Từ chối dự án trung tâm liên kết

Từ chối VPC phụ thuộc giữa các dự án từ NCC hub.

gcloud network-connectivity spokes reject projects/$xprojname/locations/global/spokes/xproj-spoke \--details="cleanup" \
--global

Xoá NCC Hub

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

Xoá quy tắc tường lửa

gcloud compute firewall-rules delete ncc1-vpc-internal --quiet
gcloud compute firewall-rules delete ncc2-vpc-internal --quiet
gcloud compute firewall-rules delete ncc3-vpc-internal --quiet
gcloud compute firewall-rules delete ncc4-vpc-internal --quiet
gcloud compute firewall-rules delete ncc1-vpc-iap --quiet
gcloud compute firewall-rules delete ncc2-vpc-iap --quiet
gcloud compute firewall-rules delete ncc3-vpc-iap --quiet
gcloud compute firewall-rules delete ncc4-vpc-iap --quiet
gcloud compute firewall-rules delete allow-icmpv6-ula-ncc1 
gcloud compute firewall-rules delete allow-icmpv6-ula-ncc4 

Xoá các phiên bản GCE

gcloud compute instances delete vm1-vpc1-ncc --zone=us-central1-a --quiet
gcloud compute instances delete vm2-vpc2-ncc --zone=us-central1-a --quiet
gcloud compute instances delete pnat-vm-vpc2 --zone=us-central1-a --quiet
gcloud compute instances delete vm1-vpc4-ncc --zone=us-east1-b --quiet
gcloud compute instances delete vpc4-ipv6-vm  --zone us-central1-a --quiet
gcloud compute instances delete vpc2-dual-stack-vm --zone us-east1-b --quiet
gcloud compute instances delete vpc2-ipv6-vm --zone us-central1-a --quiet

Xoá mạng con VPC

gcloud compute networks subnets delete ncc2-spoke-nat --region us-central1 --quiet
gcloud compute networks subnets delete vpc1-ncc-subnet1 --region us-central1 --quiet
gcloud compute networks subnets delete vpc1-ncc-subnet2 --region us-central1 --quiet
gcloud compute networks subnets delete vpc1-ncc-subnet3 --region us-central1 --quiet
gcloud compute networks subnets delete vpc2-ncc-subnet1 --region us-central1 --quiet
gcloud compute networks subnets delete overlapping-vpc2 --region us-central1 --quiet 
gcloud compute networks subnets delete overlapping-vpc3 --region us-central1 --quiet

gcloud compute networks subnets delete benchmark-testing-rfc2544 --region us-east1 --quiet
gcloud compute networks subnets delete class-e-rfc5735 --region us-east1 --quiet
gcloud compute networks subnets delete ietf-protcol-assignment-rfc6890 --region us-east1 --quiet
gcloud compute networks subnets delete ipv6-4-relay-rfc7526 --region us-east1 --quiet
gcloud compute networks subnets delete pupi --region us-east1 --quiet
gcloud compute networks subnets delete test-net-1-rfc5737 --region us-east1 --quiet
gcloud compute networks subnets delete test-net-2-rfc5737 --region us-east1 --quiet
gcloud compute networks subnets delete test-net-3-rfc5737 --region us-east1 --quiet
gcloud compute networks subnets delete vpc1-ipv64-sn2 --region=us-east1 --quiet
gcloud compute networks subnets delete vpc1-ipv6-sn1 --region=us-central1 --quiet
gcloud compute networks subnets delete vpc4-ipv64-sn2 --region=us-east1 --quiet
gcloud compute networks subnets delete vpc4-ipv6-sn1 --region=us-central1 --quiet
gcloud compute networks subnets delete vpc5-ext-ipv6 --region=us-central1 --quiet

Xoá(các) VPC

gcloud compute networks delete vpc1-ncc vpc2-ncc vpc3-ncc vpc4-ncc, vpc5-ncc --quiet 

11. Xin chúc mừng!

Bạn đã hoàn thành bài thực hành Network Connectivity Center!

Nội dung bạn đã đề cập

  • Đã định cấu hình mạng Kết nối ngang hàng VPC dạng lưới đầy đủ bằng NCC Hub
  • Bộ lọc loại trừ NCC Spoke
  • Hỗ trợ spoke trên nhiều dự án
  • NAT riêng tư giữa VPC

Các bước tiếp theo

©Google, LLC hoặc các đơn vị liên kết của Google. Bảo lưu mọi quyền. Không được phân phối.