Code Lab: NCC VPC как спикер

1. Введение

Обзор

В этой лабораторной работе пользователи изучат, как использовать Network Connectivity Center (NCC) для организации масштабируемого соединения между VPC благодаря поддержке VPC Spokes. Определение VPC как VPC Spoke позволяет подключать его к нескольким сетям VPC через NCC Hub. NCC с конфигурацией VPC Spokes снижает операционную сложность управления парными соединениями между VPC через пиринг VPC, используя вместо этого централизованную модель управления соединениями.

Напомним, что Network Connectivity Center (NCC) — это модель плоскости управления сетевыми подключениями типа «звезда» для управления сетевыми подключениями в Google Cloud. Ресурс концентратора обеспечивает централизованную модель управления подключениями для соединения распределительных устройств.

Что вы построите

В этой лабораторной работе вы построите логическую топологию «звезда» с концентратором NCC, которая реализует полносвязную структуру соединений VPC в трех отдельных VPC.

Чему вы научитесь

  • Полносетевое VPC-подключение с NCC
  • Частный NAT через VPC

Что вам понадобится

  • Знание сети GCP VPC
  • Знание облачного маршрутизатора и маршрутизации BGP
  • Два отдельных проекта GCP
  • Для этой практической работы требуется 5 VPC. Одна из этих VPC должна находиться в отдельном проекте, отличном от NCC-центра.
  • Проверьте свою Квоту:Сети и запросите дополнительные сети, если необходимо, снимок экрана ниже:

6bc606cb34bce7e8.png

Цели

  • Настройка среды GCP
  • Настройте Центр сетевых подключений с VPC в качестве сервера-распределителя
  • Проверить путь к данным
  • Изучите особенности обслуживания NCC
  • Очистите использованные ресурсы

Прежде чем начать

Google Cloud Console и Cloud Shell

Для взаимодействия с GCP на протяжении всей этой лабораторной работы мы будем использовать как Google Cloud Console, так и Cloud Shell.

Проект NCC Hub Консоль Google Cloud

Доступ к Cloud Console можно получить по адресу https://console.cloud.google.com .

Настройте следующие элементы в Google Cloud, чтобы упростить настройку Центра сетевых подключений:

В консоли Google Cloud на странице выбора проекта выберите или создайте проект Google Cloud.

Запустите Cloud Shell . В этой лабораторной работе используются $переменные для упрощения реализации конфигурации gcloud в 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

Роли IAM

Для доступа к определённым API NCC требуются IAM-роли. Обязательно настройте пользователя с IAM-ролями NCC при необходимости.

Роль/Описание

Разрешения

networkconnectivity.networkAdmin — позволяет сетевым администраторам управлять концентратором и периферийными узлами.

сетевые.коннективность.хабы.сетевые.коннективность.спицы .

networkconnectivity.networkSpokeManager — позволяет добавлять и управлять спелеосерверами в хабе. Используется в Shared VPC, где хост-проект владеет хабом, но другие администраторы других проектов могут добавлять спелеосерверы для своих подключений к хабу.

сетевые соединения.спицы.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer — позволяет пользователям сети просматривать различные атрибуты концентратора и лучей.

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

2. Настройте сетевое окружение

Обзор

В этом разделе мы развернём сети VPC и правила брандмауэра в одном проекте. Логическая схема иллюстрирует сетевую среду, которая будет настроена на этом этапе.

Чтобы продемонстрировать поддержку межпроектных распределенных серверов, на следующем этапе мы развернем VPC и правила брандмауэра в другом проекте.

dc4ed09dae1a0056.png

Создайте VPC и подсети

Сеть VPC содержит подсети, в которых вы установите 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 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

Поддерживаемые диапазоны подсетей VPC

NCC поддерживает все допустимые диапазоны подсетей IPv4, за исключением частных публичных IP-адресов. На этом этапе создайте допустимые диапазоны IP-адресов в VPC4, которые будут импортированы в таблицу маршрутизации концентратора.

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

Создание перекрывающихся диапазонов подсетей

NCC не импортирует перекрывающиеся диапазоны IP-адресов в таблицу маршрутизации концентратора. Пользователи смогут обойти это ограничение позже. Пока же создайте два перекрывающихся диапазона IP-адресов для VPC2 и 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

Настройка правил брандмауэра VPC

Настройте правила брандмауэра на каждом VPC, чтобы разрешить

  • 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 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

Настройте GCE VM в каждом VPC

Для установки пакетов на «vm1-vpc1-ncc» вам понадобится временный доступ в Интернет.

Создайте четыре виртуальные машины, каждая виртуальная машина будет назначена в одну из ранее созданных 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: 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. Центр сетевых подключений Hub

Обзор

В этом разделе мы настроим NCC Hub с помощью команд gcloud. NCC Hub будет выступать в качестве плоскости управления, отвечающей за построение конфигурации маршрутизации между каждым VPC-сервером.

860347511de47cea.png

Включить службы API

Включите API сетевого подключения, если он еще не включен:

gcloud services enable networkconnectivity.googleapis.com

Создать NCC Hub

Создайте концентратор NCC с помощью команды gCloud

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]

Опишите недавно созданный NCC Hub. Запишите название и путь к нему.

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 представил таблицу маршрутизации, которая определяет плоскость управления для создания подключений к данным. Найдите имя таблицы маршрутизации NCC Hub.

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

Найдите URI таблицы маршрутизации 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'

Выведите содержимое таблицы маршрутизации NCC Hub по умолчанию. Примечание: Таблица маршрутизации NCC Hub будет пустой до тех пор, пока не будут установлены скаты.

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

Таблица маршрутизации NCC Hub должна быть пустой.

4. NCC со спицами VPC

Обзор

В этом разделе вы настроите три VPC в качестве NCC Spoke с помощью команд gCloud.

b367b1659d2df694.png

Настройте VPC как NCC Spoke

Настройте следующие VPC как NCC Spoke в этом порядке

  • ВПК4
  • ВПК1
  • ВПК2
  • ВПК3

Настройте VPC4 как распределенный сервер NCC и назначьте его ранее созданному концентратору NCC. Для вызовов API распределенного сервера NCC необходимо указать местоположение. Флаг «–global» упрощает синтаксис gcloud, позволяя пользователю не указывать полный путь URI при настройке нового распределенного сервера NCC.

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

Настройте VPC1 как маршрутизатор NCC.

Администраторы могут исключить экспорт маршрутов подсетей из VPC-луча в таблицу маршрутизации концентратора NCC. В этой части лабораторной работы создайте правило исключения экспорта на основе суммарного префикса, чтобы предотвратить экспорт маршрутов подсети VPC1 в таблицу маршрутизации концентратора NCC.

Используйте эту команду gcloud для вывода списка всех подсетей, принадлежащих VPC1.

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

Обратите внимание на пару подсетей /25, созданных ранее в разделе настройки.

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

Настройте VPC1 как луч NCC и исключите пару подсетей /25 из импорта в таблицу маршрутизации концентратора, используя ключевое слово «export-exclude-ranges» для фильтрации сводного маршрута /24 из этого конкретного диапазона.

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 

Примечание* Пользователи могут фильтровать до 16 уникальных диапазонов IP-адресов на каждый маршрутизатор NCC.

Перечислите содержимое таблицы маршрутизации по умолчанию концентратора NCC. Что случилось с парой подсетей /25 в таблице маршрутизации концентратора NCC?

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

Настройте VPC2 как маршрутизатор NCC

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

Настройте VPC3 как маршрутизатор NCC и назначьте его ранее созданному концентратору NCC.

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

Что случилось?

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 обнаружил перекрывающийся диапазон IP-адресов с VPC2. Напомним, что VPC2 и VPC3 были настроены на одну и ту же IP-подсеть 10.3.3.0/24.

Фильтрация перекрывающихся диапазонов IP-адресов с помощью функции «Исключить экспорт»

Используйте команду gcloud для обновления сервера VPC2 с целью исключения перекрывающегося диапазона IP-адресов.

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

Используйте команду gcloud для обновления NCC-луча для VPC3, чтобы исключить перекрывающийся диапазон подсетей.

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

Перечислите содержимое таблицы маршрутизации по умолчанию концентратора NCC и изучите выходные данные.

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

Перекрывающиеся диапазоны IP-адресов VPC2 и VPC3 исключены. Таблица маршрутизации концентратора NCC поддерживает все допустимые типы диапазонов IPv4, за исключением частных публичных IP-адресов (PUPI).

5. NCC с перекрестными спицами

Обзор

До сих пор вы настраивали серверы NCC Spoke, принадлежащие тому же проекту, что и концентратор. В этом разделе вы настроите VPC как сервер NCC Spoke из отдельного проекта, отличного от NCC Hub, с помощью команд gCloud.

Это позволяет владельцам проектов, управляющим собственными VPC, участвовать в сетевом подключении с помощью NCC Hub.

a90b3185e30832e8.png

Кросс-проект: Google Cloud Console и Cloud Shell

Для взаимодействия с GCP на протяжении всей этой лабораторной работы мы будем использовать как Google Cloud Console, так и Cloud Shell.

Cross Project Spoke Консоль Google Cloud

Доступ к Cloud Console можно получить по адресу https://console.cloud.google.com .

Настройте следующие элементы в Google Cloud, чтобы упростить настройку Центра сетевых подключений:

В консоли Google Cloud на странице выбора проекта выберите или создайте проект Google Cloud.

Запустите Cloud Shell . В этой лабораторной работе используются $переменные для упрощения реализации конфигурации gcloud в 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

Роли IAM

Для доступа к определённым API NCC требуются IAM-роли. Обязательно настройте пользователя с IAM-ролями NCC при необходимости.

Как минимум, администратору межпроектного распределения должна быть предоставлена роль IAM: «networkconnectivity.networkSpokeManager».

В таблице ниже для справки перечислены роли IAM, необходимые для администратора NCC Hub and Spoke.

Роль/Описание

Разрешения

networkconnectivity.networkAdmin — позволяет сетевым администраторам управлять концентратором и периферийными узлами.

сетевые.коннективность.хабы.сетевые.коннективность.спицы .

networkconnectivity.networkSpokeManager — позволяет добавлять и управлять спелеосерверами в хабе. Используется в Shared VPC, где хост-проект владеет хабом, но другие администраторы других проектов могут добавлять спелеосерверы для своих подключений к хабу.

сетевые соединения.спицы.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer — позволяет пользователям сети просматривать различные атрибуты концентратора и лучей.

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

Создайте VPC и подсети в кросс-проекте

Сеть VPC содержит подсети, в которых вы установите GCE VM для проверки пути данных.

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 проекта NCC Hub

Используйте эту команду gcloud, чтобы найти URI NCC Hub. Путь к URI понадобится вам для настройки межпроектного NCC-распределителя на следующем шаге.

gcloud network-connectivity hubs describe ncc-hub

Cross Project Spoke VPC

Войдите в другой проект, где VPC НЕ является частью проекта NCC Hub. В CloudShell используйте эту команду для настройки VPC как NCC-спакера.

  • HUB_URI должен быть URI хаба в другом проекте.
  • VPC_URI должен находиться в том же проекте, что и сервер
  • VPC-сеть указывает, что VPC в этом кросс-проекте присоединится к NCC Hub в другом проекте.
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'

Каково состояние кросс-проекта NCC Spice? Почему?

6. Отклонение или принятие перекрестного проекта

Обзор

Администраторы NCC Hub должны явно разрешить присоединение к нему межпроектного лучевого сервера. Это предотвращает добавление владельцами проектов мошеннических лучей NCC к глобальной таблице маршрутизации NCC. После того, как лучевой сервер был принят или отклонён, его можно впоследствии отклонить или принять любое количество раз, выполнив команды, указанные выше.

Вернитесь в проект, в котором расположен хаб NCC, войдя в облачную оболочку.

Определите перекрестные спицы проекта для обзора

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

Принятие спицы

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

Необязательно: Отклонение спицы

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

Список активных списков на 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

Список маршрутов подсети на концентраторе

Видите ли вы в выходных данных маршруты подсетей из перекрестного маршрутизатора VPC?

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

Обновление Cross Project Spoke VPC с помощью фильтра Include-Export

Войдите в проект, где VPC НЕ является частью проекта NCC Hub. В CloudShell используйте эту команду для настройки VPC как NCC-спакера.

  • HUB_URI должен быть URI хаба в другом проекте.
  • VPC_URI должен находиться в том же проекте, что и сервер
  • VPC-сеть указывает, что VPC в этом кросс-проекте присоединится к NCC Hub в другом проекте.
  • Импортируйте только диапазон подсети 10.100.2.0/24 в таблицу маршрутизации концентратора NCC.
  • Обратите внимание на значение «ETAG» в выходных данных. Это значение генерируется NCC, и вам необходимо предоставить его администратору хаба NCC. Администратору хаба NCC необходимо будет указать это значение при принятии запроса от кросс-проектного ведомого на присоединение к хабу.
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'

Определите обновленные перекрестные спицы проекта для обзора

Войдите в проект, на котором размещен хаб NCC. В CloudShell используйте эту команду, чтобы проверить статус обновления VPC-спейсера между проектами.

  • Что такое значение ETAG? Оно должно совпадать с результатом обновления VPC Specked.
gcloud network-connectivity hubs list-spokes ncc-hub \ 
--filter="reasons:UPDATE_PENDING_REVIEW" \
--format=yaml

Принять обновленные изменения из перекрестного проекта

Используйте команду, чтобы принять запрос кросс-проекта на присоединение к NCC Hub.

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}

При желании отклоните обновленные изменения из перекрестного проекта.

Используйте команду, чтобы отклонить запрос кросс-проекта на присоединение к NCC Hub.

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} 

Убедитесь, что перекрестный проектный луч присоединился к хабу NCC.

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

7. Частный NAT между VPC

Обзор

В этом разделе вы настроите частную NAT для перекрывающихся диапазонов подсетей между двумя VPC. Обратите внимание, что для частной NAT между VPC требуется NCC.

В предыдущем разделе VPC2 и VPC3 настроены на перекрывающийся диапазон подсетей «10.3.3.0/24». Обе VPC настроены как луч NCC, чтобы исключить добавление перекрывающейся подсети в таблицу маршрутизации концентратора NCC. Это означает отсутствие пути данных уровня 3 для доступа к хостам, находящимся в этой подсети.

Используйте эти команды в проекте концентратора NCC для поиска перекрывающихся диапазонов подсетей.

gcloud compute networks subnets list --network vpc2-ncc

gcloud compute networks subnets list --network vpc3-ncc

Какое имя подсети содержится в перекрывающемся диапазоне IP-адресов на vpc2-ncc?

*Запишите и сохраните имя подсети где-нибудь. Вам нужно будет настроить исходный NAT для этого диапазона.

Настроить частный NAT

Выделите маршрутизируемый диапазон подсетей для получения трафика NAT из перекрывающейся подсети VPC2. Для этого настройте неперекрывающийся диапазон подсетей с помощью флага «–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

Создайте выделенный облачный маршрутизатор для выполнения частного NAT

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

Настройте облачный маршрутизатор для преобразования исходного NAT в перекрывающийся диапазон 10.3.3.0/24 из vpc2-ncc. В примере конфигурации ниже "overlapping-vpc3" — имя перекрывающейся подсети. Ключевое слово "ALL" указывает, что все диапазоны IP-адресов в подсети будут преобразованы исходным NAT.

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

На предыдущих шагах был создан пул диапазонов IP-адресов NAT и конкретная подсеть, которая будет транслироваться. На этом шаге создайте правило NAT «1», которое транслирует сетевые пакеты, соответствующие трафику из перекрывающегося диапазона подсетей, если сеть назначения использует путь из таблицы маршрутизации концентратора 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

Проверьте путь данных для частного NAT

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

Пример вывода

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

По желанию,

  • Переключиться на веб-консоль
  • перейдите в раздел «Сетевые службы > Облачный NAT > ncc2-nat »

Убедитесь, что динамическое распределение портов включено по умолчанию.

7317d3cfb7e9468b.png

Далее вам необходимо проверить путь данных, который использует частный путь NAT, настроенный для VPC2.

444d45616f1d0cae.png

Откройте сеанс SSH с «vm1-vpc1-ncc» и используйте команду tcpdump, указанную ниже, для захвата пакетов, полученных из диапазона пула NAT «10.10.10.0/29».

vm1-vpc1-ncc

sudo tcpdump -i any net 10.10.10.0/29 -n

На момент написания этой лабораторной работы частный NAT не поддерживал пакеты ICMP. Откройте сеанс SSH на " pNat-vm-vpc2" и используйте команду curl, как показано ниже, для подключения к " vm1-vpc1-ncc" через порт TCP 80.

pnat-vm-vpc2

curl 10.1.1.2 -v 

Изучите вывод tcpdump для «vm1-vpc1-ncc». Какой IP-адрес источника инициировал TCP-сеанс с нашим веб-сервером на «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. Поддержка NCC для подсетей IPv6

Центр сетевых подключений поддерживает обмен подсетями IPv6 и динамическими маршрутами между VPC-споками NCC и гибридными спицами. В этом разделе настройте NCC для поддержки режима обмена маршрутами подсетей IPv6 и двойного стека IPv4 и IPv6.

57282c3276d50671.png

Создайте новую VPC для IPv6, которая присоединится к NCC-Hub в качестве VPC-списка. GCP автоматически назначит все адреса ULA из диапазона 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

Используйте эту команду, чтобы настроить VPC5 как маршрутизатор NCC и исключить маршрут подсети IPv4 из таблицы маршрутизации концентратора. Экспортируйте сеть IPv6 ULA в таблицу маршрутизации концентратора 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

Включите VPC1 и VPC4 для частных уникальных локальных адресов IPv6 (ULA). GCP автоматически назначит все адреса ULA из диапазона fd20::/20.

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

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

Создайте собственную подсеть IPv6 и подсеть IPv4_v6 с двойным стеком в 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

Создайте собственную подсеть IPv6 и подсеть IPv4_v6 с двойным стеком в 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

На VPC1 создайте правило брандмауэра VPC IPv6, чтобы разрешить трафик, исходящий из диапазона IPv6 ULA.

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

На VPC4 создайте правило брандмауэра VPC IPv6, чтобы разрешить трафик, исходящий из диапазона IPv6 ULA.

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

Создайте три экземпляра GCE IPv6 для проверки подключения к путям передачи данных в следующем разделе. Примечание: vpc1-dualstack-vm будет использоваться в качестве бастионного хоста для получения внеполосного доступа к собственным виртуальным машинам GCE IPv6.

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

Проверьте NCC Hub на наличие подсетей IPv6

Проверьте таблицу маршрутизации концентратора NCC на наличие подсетей IPv6 ULA.

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

Обратите внимание, что в выводе команды выше не указаны подсети IPv6. По умолчанию подсети IPv6 из VPC-спейсеров НЕ включаются в экспорт в таблицу маршрутизации концентратора NCC.

Listed 0 items.

Используйте команды gcloud ниже для обновления серверов VPC1 и VPC4 для экспорта подсетей IPv6 в таблицу маршрутизации концентратора 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

Еще раз проверьте таблицу маршрутизации концентратора NCC на наличие подсетей IPv6 ULA.

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

Пример вывода

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

Фильтрация подсетей IPv6 с помощью NCC VPC Spreader

Проверьте таблицу маршрутизации концентратора NCC на наличие внешних маршрутов подсети IPv6.

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

Пример выходных данных: таблица маршрутизации концентратора ncc узнала внешний диапазон IPv6.

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

Используйте команду gcloud ниже для обновления серверов VPC5 с целью исключения двух конкретных внутренних подсетей IPv6 и одной внешней подсети IPv6 из таблицы маршрутизации концентратора 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  

Используйте команду gcloud для проверки фильтров экспорта сервера VPC5.

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  

Проверьте таблицу маршрутизации концентратора NCC на наличие внешних маршрутов подсети IPv6.

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

Пример выходных данных: таблица маршрутизации концентратора ncc узнала внешний диапазон IPv6.

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. Проверьте подключение к каналу данных

Подключение к каналу передачи данных IPv4

Ознакомьтесь со схемой и проверьте путь данных IPv4 между каждой виртуальной машиной.

27c61b09f2bf2d02.png

Подключитесь по SSH к « vm1-vpc1-ncc» и запустите дамп TCP для отслеживания ICMP-пакетов от «vm2-vpc2-ncc». Напоминаем, что эта виртуальная машина находится на VPC2.

vm1-vpc1-ncc

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

Установите сеанс SSH с « vm1-vpc2-ncc» и выполните команду «ping» на IP-адрес « vm1-vpc1-ncc ».

vm1-vpc2-ncc

ping 10.1.1.2

Установите SSH-соединение с « vm1-vpc2-ncc» и выполните команду «ping» на IP-адрес « vm1-vpc4-ncc ».

vm1-vpc2-ncc

ping 240.0.0.2

Подключение к каналу передачи данных IPv6

Ознакомьтесь со схемой и проверьте путь передачи данных IP64 между каждой виртуальной машиной.

3afe67968317a16d.png

Используйте команду gcloud для вывода списка IP-адресов для каждого экземпляра с поддержкой IPv6.

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

Пример вывода

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

Установите сеанс SSH с vpc1-dualstack-vm и выполните команду ping на IPv6-адрес vpc1-ipv6-vm для проверки подключения IPv6 в глобальном VPC.

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

Установите сеанс SSH с « vpc1-dualstack-vm» и выполните команду «ping» на IPv6-адрес « vpc4-ipv6-vm », чтобы проверить возможность подключения IPv6 через соединение NCC.

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

10. Уборка

Войдите в облачную оболочку и удалите экземпляры виртуальных машин в сетях узлового и филиального сайтов.

Удалить частные конфигурации VPC Nat

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

Удалить спицы 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

Отклонить кросс-проектный спикер

Отклонить перекрестный проект VPC-спикера из концентратора NCC.

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

Удалить NCC Hub

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

Удалить экземпляры 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

Удалить подсети 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

Удалить VPC

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

11. Поздравляем!

Вы завершили лабораторную работу по Центру сетевых подключений!

Что вы охватили

  • Настроенная пиринговая сеть Full Mesh VPC с NCC Hub
  • Фильтр исключения спицы NCC
  • Поддержка Cross Project Spoke
  • Частный NAT между VPC

Следующие шаги

©Google, LLC или её аффилированные лица. Все права защищены. Не распространять.