程式碼實驗室:搭配 PANW SSE 使用 NCC Gateway

1. 簡介

總覽

在本實驗室中,使用者將瞭解 Network Connectivity Center (NCC) 如何運用 NCC 閘道建立安全連線。使用者將導入 Secure Access Connect,整合第三方安全服務邊緣 (SSE) 產品,以便對流量進行嚴格檢查及保護。這項設定提供以閘道為基礎的集中式模型,可保護進出 Google Cloud 環境的流量,簡化網路管理作業。

建構項目

在本程式碼研究室中,您將運用 NCC 中樞建立邏輯中樞和輪輻拓撲,在三個不同的 VPC 之間實作全網狀 VPC 連線架構。

課程內容

  • 混合式檢查拓撲
  • NCC 閘道
  • Secure Access Connect
  • Palo Alto Network SSE

軟硬體需求

  • 瞭解 GCP 虛擬私有雲網路
  • 瞭解 Cloud Router 和 BGP 路由
  • 本程式碼研究室需要 5 個 VPC。其中一個虛擬私有雲必須位於與 NCC 中樞不同的專案中
  • 檢查「配額:網路」,並視需要要求新增網路,如下方螢幕截圖所示:

6d1b99c6da87fd84.png

目標

  • 設定 GCP 環境
  • 設定 Network Connectivity Center,以進行混合式檢查
  • 為 SSE 佈建 Palo Alto Network Stratacloud Manager
  • 驗證資料路徑
  • 探索 NCC 服務功能
  • 清理所用資源

事前準備

Google Cloud 控制台和 Cloud Shell

在本實驗室中,我們將使用 Google Cloud 控制台和 Cloud Shell 與 GCP 互動。

Google Cloud 控制台的 NCC 中樞專案

如要使用 Cloud 控制台,請前往 https://console.cloud.google.com

在 Google Cloud 中設定下列項目,即可更輕鬆地設定 Network Connectivity Center:

在 Google Cloud 控制台的專案選取器頁面中,選取或建立 Google Cloud 專案。

注意:如果您不打算保留在這項程序中建立的資源,請建立新專案,而不要選取現有專案。完成這些步驟後,您就可以刪除專案,並移除與該專案相關聯的所有資源

啟動 Cloud Shell。本程式碼研究室會使用 $variables,協助在 Cloud Shell 中實作 gcloud 設定。

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

IAM 角色

NCC 需要 IAM 角色才能存取特定 API。請務必視需要為使用者設定 NCC IAM 角色。

角色/說明

權限

networkconnectivity.editor:網路管理員可藉此管理中樞和輪輻。

networkconnectivity.hubs.networkconnectivity.spokes.networkconnectivity.gatewaynetworkconnectivity.locations.

networkconnectivity.HubAdmin - 啟用中樞和輪輻資源的完整存取權限。

networkconnectivity.gatewayAdvertisedRoutes.networkconnectivity.groups. networkconnectivity.hubRouteTables.networkconnectivity.hubRoutes.networkconnectivity.hubs. networkconnectivity.locations. networkconnectivity.operations.* networkconnectivity.spokes.*resourcemanager.projects.getresourcemanager.projects.list

networkconnectivity.hubViewer - 啟用中樞與輪輻資源的唯讀存取權。

networkconnectivity.gatewayAdvertisedRoutes.getnetworkconnectivity.gatewayAdvertisedRoutes.listnetworkconnectivity.groups.getnetworkconnectivity.groups.getIamPolicynetworkconnectivity.groups.listnetworkconnectivity.hubRouteTables.getnetworkconnectivity.hubRouteTables.getIamPolicynetworkconnectivity.hubRouteTables.listnetworkconnectivity.hubRoutes.getnetworkconnectivity.hubRoutes.getIamPolicynetworkconnectivity.hubRoutes.listnetworkconnectivity.hubs.getnetworkconnectivity.hubs.getIamPolicynetworkconnectivity.hubs.listnetworkconnectivity.hubs.listSpokesnetworkconnectivity.hubs.queryStatus networkconnectivity.locations.*networkconnectivity.spokes.getnetworkconnectivity.spokes.getIamPolicynetworkconnectivity.spokes.listresourcemanager.projects.getresourcemanager.projects.list

2. 設定網路環境

在本節中,我們會在單一專案中部署虛擬私有雲網路和防火牆規則。邏輯圖說明您將在本步驟中設定的網路環境。

1bdc7a5ed9b5a79c.png

建立虛擬私有雲和子網路

虛擬私有雲網路包含子網路,您將安裝 GCE VM 來驗證資料路徑

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 subnets create vpc1-ncc-subnet1 \
--network vpc1-ncc \
--range 10.1.1.0/24 \
--region us-central1

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

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

設定虛擬私有雲防火牆規則

在每個虛擬私有雲上設定防火牆規則,允許

  • SSH
  • 內部 IAP
  • 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 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

在每個虛擬私有雲中設定 GCE VM

您需要暫時連上網際網路,才能在「vm1-vpc1-ncc」上安裝套件。

建立四部虛擬機器,每部 VM 都會指派給先前建立的其中一個 VPC。

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: vpc1-vm1</h3>" | tee /var/www/html/index.html'


gcloud compute instances create vm1-vpc2-ncc \
--zone us-central1-a \
--subnet vpc2-ncc-subnet1 \
--no-address \
--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: vpc2-vm2</h3>" | tee /var/www/html/index.html'

gcloud compute instances create vm1-vpc3-ncc \
--zone us-central1-a \
--subnet vpc3-ncc-subnet1 \
--no-address \
--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: vpc3-vm3</h3>" | tee /var/www/html/index.html'

3. NCC 混合式檢查拓撲

在本節中,我們將部署混合式檢查拓撲的 Network Connectivity Center 中樞。NCC 混合式檢查拓撲會實作預設 NCC 輪輻政策,專門支援 NCC 閘道。邏輯圖說明您將在本步驟中設定的網路環境。

83c59356faadfea3.png

NCC Hub for Hybrid Spoke Inspection

建立 NCC 中樞時,請使用「-preset-topology=hybrid-inspection」旗標建立四組 NCC 輪輻類型。NCC 輪輻有四種類型:

群組:閘道

閘道輪輻可做為區域進入和退出點,供流量從地端部署或其他雲端進入 Google Cloud。這些閘道可透過第三方 SSE 服務 (例如 Palo Alto NetworksSymantec) 檢查流量。注意:在這個拓撲中,只有這個群組可以包含 NCC 閘道輪輻

Groups:services

這個群組是共用資源的「中樞」,這個群組中的輪輻可連線至所有其他輪輻群組 (生產、非生產和閘道)。共用服務虛擬私有雲 (例如用於記錄、驗證、監控或常見工具)

群組:prod

用途:分配包含關鍵任務工作負載 (VM、GKE 叢集) 的生產環境應用程式 VPC。

群組:non-prod

指派的資源:用於開發、測試或暫存環境的非實際工作環境應用程式虛擬私有雲。

設定 NCC 中樞,使用混合式檢查預設拓撲

gcloud beta network-connectivity hubs create cl-hi-hub \ --preset-topology=hybrid-inspection

輸出範例

Create request issued for: [cl-hi-hub]
Waiting for operation [projects/"${projectname}"/locations/global/operations/operation-1759424304217-6402fe4a97da0-5de6
e5a1-2ea2de02] to complete...done.                                                                                 
Created hub [cl-hi-hub].

使用 gcloud 指令驗證 NCC 中樞的預設路由表:

gcloud network-connectivity hubs describe cl-hi-hub

輸出範例

createTime: '2026-02-18T16:14:45.828597880Z'
exportPsc: false
name: projects/"${projectname}"/locations/global/hubs/cl-hi-hub
policyMode: PRESET
routeTables:
- projects/"${projectname}"/locations/global/hubs/cl-hi-hub/routeTables/gateways
- projects/"${projectname}"/locations/global/hubs/cl-hi-hub/routeTables/non-prod
- projects/"${projectname}"/locations/global/hubs/cl-hi-hub/routeTables/prod
- projects/"${projectname}"/locations/global/hubs/cl-hi-hub/routeTables/services
spokeSummary:
state: ACTIVE
uniqueId: c0fbb826-173b-42dd-a5d2-00c2aa66fed8
updateTime: '2026-04-21T19:13:50.269721594Z'

您可以將 NCC 輪輻新增至群組,套用流量政策。NCC 輪輻只能屬於一個群組。在這個版本中,我們推出名為 HYBRID-INSPECTION 的特定預設拓撲,其中包含 4 個群組:閘道、正式環境、非正式環境和服務。

所有 NCC 閘道資源 (包括混合式連線) 都屬於閘道群組。閘道群組中的輪輻可以相互通訊,且閘道和其他輪輻群組之間的流量可接受檢查 (視服務政策設定而定)。

NCC 輪輻群組連線規則

來源群組

可存取 (已允許)

無法存取 (受限)

服務群組

閘道、正式環境、非正式環境、服務

產品群組

閘道、服務、prod 輪輻

非正式環境輪輻

非正式環境群組

閘道、服務、非正式版輪輻

正式環境輪輻

閘道群組

閘道、服務、正式環境、非正式環境

使用 gcloud 指令列出 NCC 中樞上的預設群組

gcloud network-connectivity hubs groups list --hub cl-hi-hub  --project "${projectname}"

輸出範例

NAME      HUB        DESCRIPTION
gateways  cl-hi-hub
non-prod  cl-hi-hub
prod      cl-hi-hub
services  cl-hi-hub

在網路控制台中,依序前往「網路連線」>「Network Connectivity Center」,然後選取「cl-hi-hub」查看 NCC 中樞設定

4acd63c7bd2dcb0a.png

工作負載 VPC2 是 NCC 群組:prod 中的輪輻

使用 gcloud 指令將工作負載 VPC3 設為 (工作負載) 輪輻,並將輪輻指派給 group:prod:

gcloud network-connectivity spokes linked-vpc-network create vpc2-sp \
--hub=cl-hi-hub \
--description=codelab-vpc2-ncc-spoke \
--vpc-network=vpc2-ncc \
--global \
--group=prod

輸出範例

Create request issued for: [vpc2-sp]
Waiting for operation [projects/"${projectname}"/locations/global/operations/operation-1776966793852-650245286757a-766d806c-1bc4fabe] to complete...done.                         
Created spoke [vpc2-sp].
createTime: '2026-04-23T17:53:14.083783233Z'
description: codelab-vpc2-ncc-spoke
etag: '2'
group: projects/"${projectname}"/locations/global/hubs/cl-hi-hub/groups/prod
hub: projects/"${projectname}"/locations/global/hubs/cl-hi-hub
linkedVpcNetwork:
  uri: https://www.googleapis.com/compute/v1/projects/"${projectname}"/global/networks/vpc-ncc2
name: projects/"${projectname}"/locations/global/spokes/vpc2-sp
spokeType: VPC_NETWORK
state: ACTIVE
uniqueId: 92972784-e4ed-47e5-be22-08a516a39b0c
updateTime: '2026-04-23T17:53:55.029481722Z'

執行 gcloud 指令,查看 NCC 中樞「prod」路由表中的前置字元。

gcloud network-connectivity hubs route-tables routes list --hub=cl-hi-hub --route_table=prod

輸出範例

IP_CIDR_RANGE: 10.1.2.0/24
PRIORITY: 
LOCATION: us-central1
STATE: ACTIVE
TYPE: VPC_PRIMARY_SUBNET
SITE_TO_SITE: N/A
NEXT_HOP: vpc2-ncc
HUB: cl-hi-hub
ROUTE_TABLE: prod

將工作負載 VPC3 設為 NCC 群組:non-prod 中的輪輻

使用 gcloud 指令將工作負載 VPC3 設為 (工作負載) 輪輻,並將輪輻指派給群組:non-prod

gcloud network-connectivity spokes linked-vpc-network create vpc3-sp \
--hub=cl-hi-hub \
--description=codelab-vpc3-ncc-spoke \
--vpc-network=vpc3-ncc \
--global \
--group=non-prod

輸出範例

Create request issued for: [vpc3-sp]
Waiting for operation [projects/cloudnet-demo/locations/global/operations/operation-1778757016454-651c5241b83fe-18b62f78-02d70f9a] to complete...done.                                                                  
Created spoke [vpc3-sp].
createTime: '2026-05-14T11:10:16.758117151Z'
description: codelab-vpc3-ncc-spoke
etag: '2'
group: projects/cloudnet-demo/locations/global/hubs/cl-hi-hub/groups/non-prod
hub: projects/cloudnet-demo/locations/global/hubs/cl-hi-hub
linkedVpcNetwork:
  uri: https://www.googleapis.com/compute/v1/projects/cloudnet-demo/global/networks/vpc3-ncc
name: projects/cloudnet-demo/locations/global/spokes/vpc3-sp
spokeType: VPC_NETWORK
state: ACTIVE
uniqueId: efe8cfed-d77f-4636-aaae-898e73897b49
updateTime: '2026-05-14T11:10:52.880508489Z'

執行 gcloud 指令,查看 NCC 中樞「prod」路由表中的前置字元。

gcloud network-connectivity hubs route-tables routes list --hub=cl-hi-hub --route_table=prod

輸出範例

IP_CIDR_RANGE: 10.1.2.0/24
PRIORITY: 
LOCATION: us-central1
STATE: ACTIVE
TYPE: VPC_PRIMARY_SUBNET
SITE_TO_SITE: N/A
NEXT_HOP: vpc2-ncc
HUB: cl-hi-hub
ROUTE_TABLE: prod

將工作負載 VPC1 設為 NCC 群組:服務中的輪輻

使用 gcloud 指令將工作負載 VPC1 設為 (工作負載) 輪輻,並將輪輻指派給 group:services:

gcloud network-connectivity spokes linked-vpc-network create vpc1-sp \
--hub=cl-hi-hub \
--description=codelab-vpc1-ncc-spoke \
--vpc-network=vpc1-ncc \
--global \
--group=services

輸出範例

Create request issued for: [vpc1-sp]
Waiting for operation [projects/cloudnet-demo/locations/global/operations/operation-1778758397065-651c57665f795-1af6d94f-942c9ebd] to complete...done.                                                                  
Created spoke [vpc1-sp].
createTime: '2026-05-14T11:33:17.359361160Z'
description: codelab-vpc1-ncc-spoke
etag: '2'
group: projects/cloudnet-demo/locations/global/hubs/cl-hi-hub/groups/services
hub: projects/cloudnet-demo/locations/global/hubs/cl-hi-hub
linkedVpcNetwork:
  uri: https://www.googleapis.com/compute/v1/projects/cloudnet-demo/global/networks/vpc1-ncc
name: projects/cloudnet-demo/locations/global/spokes/vpc1-sp
spokeType: VPC_NETWORK
state: ACTIVE
uniqueId: 82b29a2b-50cb-4557-8b12-3345f5a36ad6
updateTime: '2026-05-14T11:33:55.914406863Z'

在 us-central1 中為 SSE 閘道設定 NCC 閘道輪輻

使用 gcloud 指令在 us-central1 建立 NCC Gateway spoke:

gcloud beta network-connectivity spokes gateways create cl-ncc-gw-usc-sp \
--region=us-central1 \
--hub=cl-hi-hub \
--capacity=1g \
--ip-range-reservations=10.100.0.0/23 \
--group=gateways

輸出範例

Create request issued for: [cl-ncc-gw-usc-sp]
Waiting for operation [projects/cloudnet-demo/locations/us-central1/operations/operation-1778758907555-651c594d36fc5-783a8d5d-8d3e341b] to complete...done.                                                             
Created spoke [cl-ncc-gw-usc-sp].
createTime: '2026-05-14T11:41:48.066042872Z'
etag: '2'
gateway:
  capacity: CAPACITY_1_GBPS
  ipRangeReservations:
  - ipRange: 10.100.0.0/23
group: projects/cloudnet-demo/locations/global/hubs/cl-hi-hub/groups/gateways
hub: projects/cloudnet-demo/locations/global/hubs/cl-hi-hub
name: projects/cloudnet-demo/locations/us-central1/spokes/cl-ncc-gw-usc-sp
spokeType: GATEWAY
state: ACTIVE
uniqueId: ffe8e2b7-c864-4279-9d21-ca72d87083fe
updateTime: '2026-05-14T11:44:08.787947523Z'

使用 gcloud 指令列出 NCC 輪輻:

gcloud network-connectivity spokes list 

輸出範例

NAME: vpc2-sp
LOCATION: global
HUB: cl-hi-hub
GROUP: prod
TYPE: VPC network
RESOURCE COUNT: 1
DATA TRANSFER: N/A
DESCRIPTION: codelab-vpc2-ncc-spoke

NAME: vpc3-sp
LOCATION: global
HUB: cl-hi-hub
GROUP: non-prod
TYPE: VPC network
RESOURCE COUNT: 1
DATA TRANSFER: N/A
DESCRIPTION: codelab-vpc3-ncc-spoke

NAME: vpc1-sp
LOCATION: global
HUB: cl-hi-hub
GROUP: services
TYPE: VPC network
RESOURCE COUNT: 1
DATA TRANSFER: N/A
DESCRIPTION: codelab-vpc1-ncc-spoke

NAME: cl-ncc-gw-usc-sp
LOCATION: us-central1
HUB: cl-hi-hub
GROUP: gateways
TYPE: 
RESOURCE COUNT: 1
DATA TRANSFER: Off
DESCRIPTION: 

檢查在「cl-hi-hub」NCC 中樞上設定的 NCC 輪輻:

f3d7f75773fcb95.png

設定 NCC 閘道,向 NCC 中樞路由表 advertise 特定前置字元。

gcloud beta network-connectivity spokes gateways advertised-routes create example-dot-com \
--ip-range=1.1.1.1/32 \
--priority=200 \
--advertise-to-hub \
--region=us-central1 \
--spoke=cl-ncc-gw-usc-sp 


gcloud beta network-connectivity spokes gateways advertised-routes create google-dot-com \
--ip-range=173.194.204.101/32 \
--priority=200 \
--advertise-to-hub \
--region=us-central1 \
--spoke=cl-ncc-gw-usc-sp 


gcloud beta network-connectivity spokes gateways advertised-routes create branch \
--ip-range=192.168.1.0/24 \
--priority=200 \
--advertise-to-hub \
--region=us-central1 \
--spoke=cl-ncc-gw-usc-sp 


gcloud beta network-connectivity spokes gateways advertised-routes create prod \
--ip-range=192.168.11.0/24 \
--priority=200 \
--advertise-to-hub \
--region=us-central1 \
--spoke=cl-ncc-gw-usc-sp 

gcloud beta network-connectivity spokes gateways advertised-routes create non-prod \
--ip-range=192.168.12.0/24 \
--priority=200 \
--advertise-to-hub \
--region=us-central1 \
--spoke=cl-ncc-gw-usc-sp 

使用 gcloud 指令列出從閘道 Spoke 宣傳的路由

gcloud beta network-connectivity spokes gateways advertised-routes list --region=us-central1

輸出範例

438f80012017f535.png

檢查 NCC 閘道輪輻 advertise 的路由

在網路控制台中,依序前往「Network Connectivity」(網路連線) >「Network Connectivity Center」(網路連線中心),然後選取「Spokes」(輪輻) 分頁標籤,並點選「cl-ncc-gw-usc-sp」

e4a35a5ec4cf7b8e.png

4. Cloud Interconnect 混合式連線

撰寫本文時,NCC 閘道僅支援 Google Cloud Interconnect。NCC 閘道會使用 Google 租戶專案中的全域 VPC 和 Cloud Router,終止 VLAN 連結和 BGP 對等互連工作階段。

雖然圖表顯示一對 Cloud Interconnect 和 VLAN 連結在邏輯上連線至 NCC 閘道,但 Google 管理的租戶全域 VPC 中的 Cloud Router 是終止 VLAN 連結的基礎元件。在本節中,您將設定與 NCC Gateway 相關聯的 Cloud Router,以管理地端部署連線的 BGP 工作階段。

6caca812b4f0fa4d.png

us-central1 中的 NCC 閘道專屬 Cloud Router

使用 gcloud 指令,專為 NCC 閘道設定 Cloud Router。

gcloud beta compute routers create ncc-gw-usc1-cr \
--ncc-gateway=https://networkconnectivity.googleapis.com/v1/projects/"${projectid}"/locations/us-central1/spokes/cl-ncc-gw-usc-sp \
--asn=64666 \
--advertisement-mode=CUSTOM \
--set-advertisement-ranges=10.100.2.0/23 \
--region=us-central1

輸出範例

Creating router [ncc-gw-usc1-cr]...done.                                                                                                                           
NAME            REGION       NCC_GATEWAY
ncc-gw-usc1-cr  us-central1  cl-ncc-gw-usc-sp
  • NCC_GW_NAME:NCC 閘道輪輻的完整 URI。URI 的格式如下:https://networkconnectivity.googleapis.com/v1/projects/"${projectid}"/locations/REGION/spokes/GATEWAY_SPOKE_NAME
  • ADVERTISED_IP_RANGES:要向地端部署網路通告的 IP 範圍,吸引流量前往 Google Cloud。

使用這項 gcloud 指令列出剛才建立的路由器

gcloud compute routers list --filter="region:(us-central1)"

請注意,Cloud Router 並未與 VPC 建立關聯

NAME                      REGION       NETWORK
ncc-gw-usc1-cr            us-central1  N/A

從現有的專屬 Cloud Interconnect 建立 VLAN 連結,做為 Cloud Router 上的介面。下列範例設定會使用連結本機 IP 位址做為候選子網路範圍。這個範圍內的特定主機位址會用於設定 BGP 對等互連。

gcloud compute interconnects attachments dedicated create vl2029-ead1 \
--region=us-central1 \
--interconnect=projects/some-interconnect-project/global/interconnects/interconnect-lab-sea26-zone1 \
--router=ncc-gw-usc1-cr \
--vlan=2024 \
--bandwidth=500m \
--mtu=1440 \
--candidate-subnets=169.254.222.216/29
Created [https://www.googleapis.com/compute/v1/projects/"${projectname}"/regions/us-central1/interconnectAttachments/vl2029-ead1].
gcloud compute interconnects attachments dedicated create vl3029-ead2 \
--region=us-central1 \
--interconnect=projects/some-interconnect-project/global/interconnects/interconnect-lab-sea26-zone2 \
--router=ncc-gw-usc1-cr  \
--vlan=3026 \
--bandwidth=500m \
--mtu=1440 \
--candidate-subnets=169.254.220.184/29 
Created [https://www.googleapis.com/compute/v1/projects/"${projectname}"/regions/us-central1/interconnectAttachments/vl3029-ead2].

在 us-central1 中設定 NCC 閘道 Cloud Router 的介面

使用 gcloud 指令,將在 us-central 建立的 VLAN 連結與 NCC 閘道 Cloud Router 建立關聯。

gcloud compute routers add-interface ncc-gw-usc1-cr \
--region=us-central1 \
--interface-name=if-vl2029-ead1 \
--interconnect-attachment=vl2029-ead1

輸出內容:

Updated [https://www.googleapis.com/compute/v1/projects/cloudnet-demo/regions/us-central1/routers/ncc-gw-usc1-cr].

為上述建立的 VLAN 連結設定 BGP 對等點。

使用下列 gcloud 指令,在 Cloud Router 介面上啟用 BGP 對等互連。

gcloud compute routers add-bgp-peer ncc-gw-usc1-cr \
--region=us-central1 \
--peer-name=bgp-vl2029-ead1 \
--interface=if-vl2029-ead1 \
--peer-asn=65112 \
--advertisement-mode=DEFAULT

輸出內容:

Creating peer [bgp-vl2029-ead1] in router [ncc-gw-usc1-cr]...done.

在 us-central1 中設定 NCC 閘道 Cloud Router,並使用第二個 VLAN 連結介面

使用 gcloud 指令,將第二個 VLAN 連結新增為 NCC 閘道 Cloud Router 的介面

gcloud compute routers add-interface ncc-gw-usc1-cr \
--region=us-central1 \
--interface-name=if-vl3029-ead2 \
--interconnect-attachment=vl3029-ead2

輸出內容:

Updated [https://www.googleapis.com/compute/v1/projects/cloudnet-demo/regions/us-central1/routers/ncc-gw-usc1-cr]

使用下列 gcloud 指令,在 Cloud Router 介面上啟用 BGP 對等互連。

gcloud compute routers add-bgp-peer ncc-gw-usc1-cr \
--region=us-central1 \
--peer-name=bgp-vl3029-ead2 \
--interface=if-vl3029-ead2 \
--peer-asn=65112 \
--advertisement-mode=DEFAULT

使用地端 BGP 路由器驗證 BGP 對等互連狀態

使用 gcloud 指令驗證地端路由器上的 BGP 對等互連狀態,並查看 NCC 閘道 Cloud Router 傳送至地端網路的路由。

gcloud compute routers get-status ncc-gw-usc1-cr \
--region=us-central1

**

--format="yaml(result.bgpPeerStatus)" 

輸出內容:

確認 BGP 狀態為「已建立」。

result:
  bgpPeerStatus:
  - advertisedRoutes:
    - destRange: 10.100.2.0/23
      kind: compute#route
      nextHopIp: 169.254.111.217
      nextHopOrigin: INCOMPLETE
      priority: 100
      routeType: BGP
    enableIpv4: true
    enableIpv6: false
    ipAddress: 169.254.111.217
    md5AuthEnabled: false
    name: bgp-vl2029-ead1
    numLearnedRoutes: 2
    peerIpAddress: 169.254.111.218
    state: Established
    status: UP
    uptime: 6 minutes, 27 seconds
    uptimeSeconds: '387'
  - advertisedRoutes:
    - destRange: 10.100.2.0/23
      kind: compute#route
      nextHopIp: 169.254.112.217
      nextHopOrigin: INCOMPLETE
      priority: 100
      routeType: BGP
    enableIpv4: true
    enableIpv6: false
    ipAddress: 169.254.112.217
    md5AuthEnabled: false
    name: bgp-vl3029-ead2
    numLearnedRoutes: 1
    peerIpAddress: 169.254.112.218
    state: Established
    status: UP
    uptime: 1 minutes, 35 seconds
    uptimeSeconds: '95'

使用 gcloud 指令,查看 NCC 閘道 Cloud Router 從地端部署網路接收的路由:

gcloud compute routers get-status ncc-gw-usc1-cr \
--region=us-central1 \
--format="yaml(result.bestRoutes)"

輸出內容:

result:
  bestRoutes:
  - asPaths:
    - asLists:
      - 65112
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2026-05-14T10:02:44.265-07:00'
    destRange: 172.16.0.0/16
    kind: compute#route
    nextHopInterRegionCost: 0
    nextHopIp: 169.254.111.218
    nextHopMed: 0
    nextHopOrigin: IGP
    priority: 65536
    routeType: BGP
  - asPaths:
    - asLists:
      - 65112
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2026-05-14T09:54:04.340-07:00'
    destRange: 3.3.3.0/24
    kind: compute#route
    nextHopInterRegionCost: 0
    nextHopIp: 169.254.111.218
    nextHopMed: 0
    nextHopOrigin: IGP
    priority: 65536
    routeType: BGP
  - asPaths:
    - asLists:
      - 65112
      pathSegmentType: AS_SEQUENCE
    creationTimestamp: '2026-05-14T09:58:56.189-07:00'
    destRange: 4.4.4.0/24
    kind: compute#route
    nextHopInterRegionCost: 0
    nextHopIp: 169.254.112.218
    nextHopMed: 0
    nextHopOrigin: IGP
    priority: 65536
    routeType: BGP
cloud compute routers update ncc-gw-usc1-cr \
    --project=cloudnet-demo \
    --region=us-central1 \
    --advertisement-mode custom \
    --set-advertisement-groups=all_subnets \
    --set-advertisement-ranges="10.1.0.0/16"

輸出內容:

Updating router [ncc-gw-usc1-cr]...done. 

5. 將第三方 SSE 與 NCC 閘道整合

Secure Access Connect 這項功能可讓您將第三方安全服務邊緣 (SSE) 產品連至 NCC Gateway,確保傳入和傳出流量安全無虞。主要功能是在 GCP 與第三方 SSE 供應商之間建立連結。

在本節中,您將登入 Strata Cloud Manager,在 NCC 閘道中啟用及設定 SSE 代理服務。

66981a054554007c.png

這項服務由兩項主要資源組成:

  • Secure Access Connect 運作範圍:連結 Google Cloud 專案與 SSE 服務的全域性資源。這項功能會為一組 VPC 或使用者建立共用的安全性政策空間,向 SSE 供應商揭露應受同一組安全性政策規範的閘道。
  • Secure Access Connect 連結:區域性邏輯資源,可實際啟用 NCC Gateway,透過 SSE 服務處理流量。其中包含與合作夥伴 SSE 堆疊建立信任關係和連線所需的中繼資料

建立 Secure Access Connect 領域

gcloud beta network-security secure-access-connect realms create codelab-sac-realm \
--security-service=prisma-access

找出配對金鑰

如要將安全存取連線領域與 Prisma Access 建立關聯,您需要配對金鑰。這個英數字串將用於透過 Strata Cloud Manager 網路入口網站設定及佈建 SSE 閘道。

gcloud beta network-security secure-access-connect realms describe codelab-sac-realm 
createTime: '2026-04-21T13:48:53.760262401Z'
name: projects/"${projectname}"/locations/global/sacRealms/codelab-cden
pairingKey:
  expireTime: '2026-04-28T13:48:51.107221733Z'
  key: 2a52a7e2-7c95-4dc7-9155-c3234976fad4
securityService: PALO_ALTO_PRISMA_ACCESS
state: PENDING_PARTNER_ATTACHMENT
updateTime: '2026-04-21T13:48:55.874553834Z'

在 Prisma Access 中使用 Managed Cloud WAN 建立合作夥伴領域

  1. 登入 Strata Cloud Manager,確認您使用的是指派的 SSE 閘道租戶

5dfa2931b945d839.png

  1. 如要將 SAC 領域連結至合作夥伴租戶,請前往

系統設定 -> 整合 -> 受管理 Cloud WAN,以及

按一下「連結」

91513aea55be8742.png

  1. 在「Connect Google NCC Gateway Account」(連結 Google NCC 閘道帳戶) 對話方塊中,輸入 SAC 領域的配對金鑰。按一下「確認」即可開始建立領域。

259a1029320d89cd.png

NCC 閘道狀態更新為「已連線」需要幾分鐘的時間。

在 GCP Cloud Shell 中,使用 gcloud 指令找出與 SAC 領域相關聯的配對金鑰。

gcloud beta network-security secure-access-connect realms describe codelab-sac-realm 

您也可以在 GCP 主控台中查看配對金鑰

c25be63c1e74102c.png

4f6690dff8096cea.png

前往「Cloud WAN」連線,將 NCC 閘道 SSE 叢集新增為受管理的連線。

依序點選「Configuration」>「NGFW and Prisma Access」>「Configuration Scope」,然後在「Prisma Access」部分選取「Remote Network」

f7ff2d52eec2be40.png

在「總覽」頁面中,按一下「設定」,然後選取「受管理 Cloud WAN 連線」

按一下「新增受管理 Cloud WAN 網站」。

326ce68c7c358ea.png

在 NCC 閘道中啟用 SSE 執行個體

切換至 GCP 主控台,使用 gcloud 指令建立 Secure Access Connect 附件。

gcloud alpha network-security secure-access-connect attachments create codelab-sac-attachment-usc1 \
--location=us-central1 \
--realm=codelab-sac-realm  \
--gateway=cl-ncc-gw-usc-sp

2ffc5b6fcdde36c7.png

建立合作夥伴閘道

輸入代管 Cloud WAN 連線的參數。

  • 網站名稱:輸入連線的專屬名稱。
  • **服務類型:**選取 Google NCC Gateway 做為服務類型。
  • 連線名稱:選取您在 N CC 閘道 SAC 附件啟用和建立期間建立的 GCP 服務位置。
  • Prisma Access Compute Location:選取要部署 NCC 閘道與 Prisma Access 整合的運算位置。
  • 頻寬 (Mbps):選取要分配的頻寬 (以 Mbps 為單位)。您最多可分配 10000 Mbps (10 Gbps

最多可分配 10000 Mbps (10 Gbps)。

完成後,按一下「儲存」

3fe90e079c507b17.png

同步處理 NCC 閘道的 SSE 執行個體設定

選取「Push Config」,在 NCC 閘道輪輻上建立合作夥伴 SSE 執行個體。

81e1d345f9e51aa4.png

e80303abe25160d8.png

7a3246320db4f3c6.png

按一下「Push Config」,然後選取「Jobs」,即可監控進度。等待特定作業的所有「結果」完成。

完成後,按一下「完成」

e95c9bdb0f6fb671.png

如要查看合作夥伴 SSE 閘道的狀態,請依序前往「Configuration」(設定) >「NGFW and Prisma Access」(NGFW 和 Prisma Access) >「Configuration Scope」(設定範圍) >「Prisma Access」(Prisma Access) >「Remote Networks」(遠端網路) >「Setup」(設定) >「Managed Cloud WAN Connections」(受管理雲端 WAN 連線)

Prisma Access 會自動佈建 Managed Cloud WAN Connection 的 BGP 設定。

98c10cb0879865f5.png

6. 透過 NCC 閘道驗證資料路徑

ba4232f600dd8a55.png

切換至 GCP Cloud Shell 控制台

使用 gcloud 指令查看來自閘道 Spoke 的通告路徑:

gcloud beta network-connectivity spokes gateways advertised-routes list --region=us-central1

438f80012017f535.png

透過 SSH 連線至「vm1-vpc1-ncc」**,然後啟動 TCP 傾印,追蹤來自「vm2-vpc2-ncc」的 ICMP 封包。提醒您,這個 VM 位於 VPC2。

vm1-vpc1-ncc

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

建立連至「vm1-vpc2-ncc**」** 的 SSH 工作階段,並連線偵測 (ping)「vm1-vpc1-ncc」的 IP 位址。

vm1-vpc2-ncc

ping 10.1.1.2

輸出內容:

您應該會在 vm1-vpc1-ncc 上看到下列追蹤記錄。

9e612b0897b5d188.png

在 VM-1 上對地端部署 HTTP 伺服器執行 curl 指令,測試地端部署連線能力

vm1-vpc1-ncc

curl 172.16.101.11 -vv

輸出內容:

b359d78e57ec33e5.png

建立連至「vm1-vpc2-ncc**」** 的 SSH 工作階段,並連線偵測 (ping)「1.1.1.1」IP 位址。

vm1-vpc2-ncc

ping 1.1.1.1

輸出內容:

8760e85a562a158b.png

Ping 無法運作,因為必須在 Prisma(Strata Cloud Manager) 中允許 Ping。讓我們啟用這項功能!

依序前往 Strata Cloud Manager —-> Configuration —-> NGFW 和 Prisma Access,您會看到以下內容:

e5be1682f8bcbccd.png

按一下左上方的「Global」下拉式選單,然後選擇「Remote Networks」,接著按一下「Security Services」分頁標籤,然後選擇「Security Policy」,如下所示:

e5243244c1d05008.png

按一下右上方的「新增規則」,建立「允許 ICMP」規則,允許 vm1-vpc2-ncc 與 1.1.1.1 之間的 ICMP 流量,完成後按一下右上方的「推送設定」。

cb5f9c94598ae27f.png

請務必查看「工作」,確認設定已順利推送。依序點選「Push Config」>「Jobs」。

2b549ca26b38671f.png

工作完成後,請再次從 vm1-vpc2-ncc 測試連線偵測 (ping)。

b644dd0502383e3b.png

成功!您已成功完成本程式碼研究室!

7. 清理實驗室資源

刪除 VLAN 連結

gcloud compute interconnects attachments delete vl2024-ead1 \
--region=us-central1 \
--quiet

gcloud compute interconnects attachments delete vl3026-ead2 \
--region=us-central1 \
--quiet

刪除 NCC Gateway Cloud Router 的 BGP 對等互連和 BGP 介面

gcloud compute routers remove-bgp-peer ncc-gw-usc1-cr \
--peer-name=bgp-vl2024-ead1 \
--region=us-central1 


gcloud compute routers remove-interface ncc-gw-usc1-cr \
--interface-name=if-vl3026-ead2 \
--region=us-central1 

刪除 ncc-gw-usc1-cr 和 ncc-gw-usc1-cr

gcloud compute routers delete ncc-gw-usc1-cr \
--region=us-central1 \
--quiet

刪除閘道 advertise 路由

gcloud beta network-connectivity spokes gateways advertised-routes delete ncc-gw-usc1-cr \
--region=us-central1 \
--spoke=cl-ncc-gw-usw-sp \

刪除 NCC 虛擬私有雲輪輻

gcloud network-connectivity spokes delete vpc1-sp --global --quiet
gcloud network-connectivity spokes delete vpc2-sp --global --quiet
gcloud network-connectivity spokes delete vpc3-sp --global --quiet

刪除 ncc-gateway 輪輻

gcloud network-connectivity spokes delete cl-ncc-gw-usc-sp --region=us-central1 \
--quiet

刪除安全存取領域

gcloud beta network-security secure-access-connect realms delete codelab-sac-realm --quie

t

刪除 NCC 中樞

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

刪除防火牆規則

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 ncc1-vpc-iap --quiet
gcloud compute firewall-rules delete ncc2-vpc-iap --quiet
gcloud compute firewall-rules delete ncc3-vpc-iap --quiet

刪除 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 vm1-vpc3-ncc --zone=us-east1-b --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 delete vpc1-ncc vpc2-ncc vpc3-ncc vpc4-ncc, vpc5-ncc --quiet 

8. 恭喜!

您已完成 Network Connectivity Center 實驗室!

涵蓋範圍

  • 設定 NCC 混合式檢查拓撲
  • NCC 閘道輪輻
  • Google Cloud 上的 Palo Alto Network SSE Gateway
  • PANW:Strata Cloud Manager

後續步驟