1. Pengantar
Akses Google Pribadi untuk host lokal menyediakan cara bagi sistem lokal untuk terhubung ke API dan layanan Google dengan merutekan traffic melalui tunnel Cloud VPN atau lampiran VLAN untuk Cloud Interconnect. Akses Google Pribadi untuk host lokal adalah alternatif untuk terhubung ke Google API dan layanan Google melalui internet.
Akses Google Pribadi untuk host lokal mengharuskan Anda mengarahkan permintaan untuk Google API ke alamat IP virtual (VIP). Untuk IPv6, alamat IP berikut digunakan:
- Untuk private.googleapis.com: 2600:2d00:0002:2000::/64
- Untuk restricted.googleapis.com: 2600:2d00:0002:1000::/64
VIP yang Anda pilih akan menentukan layanan mana yang dapat Anda akses. Dalam codelab ini, kita akan menggunakan private.googleapis.com. Untuk mengetahui informasi selengkapnya, lihat Opsi domain.
Codelab ini menjelaskan cara mengaktifkan Akses Google Pribadi untuk host lokal yang menggunakan alamat IPv6. Anda akan menyiapkan jaringan VPC bernama on-premises-vpc untuk merepresentasikan lingkungan lokal. Untuk deployment Anda, on-premises-vpc tidak akan ada, melainkan jaringan hybrid ke pusat data lokal atau penyedia cloud Anda yang akan digunakan.
Yang akan Anda build
Dalam codelab ini, Anda akan membangun jaringan IPv6 end-to-end yang mendemonstrasikan akses lokal ke Cloud Storage API menggunakan CNAME *.googleapis.com ke alamat IPv6 private.googleapis.com 2600:2d00:0002:2000::/64 seperti yang diilustrasikan pada Gambar 1.
Gambar 1

Yang akan Anda pelajari
- Cara membuat jaringan VPC stack ganda
- Cara membuat VPN dengan ketersediaan tinggi (HA) dengan IPv6
- Cara memperbarui DNS untuk mengakses Akses Google Pribadi
- Cara membuat dan memvalidasi konektivitas Akses Google Pribadi
Yang Anda butuhkan
- Project Google Cloud
2. Sebelum memulai
Perbarui project untuk mendukung codelab
Codelab ini menggunakan $variables untuk membantu penerapan konfigurasi gcloud di Cloud Shell.
Di dalam Cloud Shell, lakukan hal berikut:
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=YOUR-PROJECT-NAME
echo $projectname
3. Buat transit-vpc

Buat jaringan VPC transit
Di dalam Cloud Shell, lakukan hal berikut:
gcloud compute networks create transit-vpc --project=$projectname --subnet-mode=custom --mtu=1460 --enable-ula-internal-ipv6 --bgp-routing-mode=regional
4. Buat jaringan lokal

Jaringan VPC ini merepresentasikan lingkungan lokal.
Buat jaringan VPC lokal
Di dalam Cloud Shell, lakukan hal berikut:
gcloud compute networks create on-premises-vpc --project=$projectname --subnet-mode=custom --mtu=1460 --enable-ula-internal-ipv6 --bgp-routing-mode=regional
Buat subnet
Di dalam Cloud Shell, lakukan hal berikut:
gcloud compute networks subnets create on-premises-subnet1-us-central1 --project=$projectname --range=172.16.10.0/27 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --network=on-premises-vpc --region=us-central1
5. Buat VPN dengan Ketersediaan Tinggi (HA) untuk transit-vpc dan on-premises-vpc
Buat GW VPN HA untuk transit-vpc

Saat setiap gateway dibuat, dua alamat IPv4 eksternal akan dialokasikan secara otomatis, masing-masing untuk setiap antarmuka gateway. Catat alamat IP ini untuk digunakan nanti dalam langkah-langkah konfigurasi.
Di dalam Cloud Shell, buat GW VPN dengan ketersediaan tinggi (HA) dengan jenis stack IPV4_IPV6.
gcloud compute vpn-gateways create transit-vpc-vpngw \
--network=transit-vpc\
--region=us-central1 \
--stack-type=IPV4_IPV6
Buat GW VPN HA untuk on-premise-vpc
Di dalam Cloud Shell, buat GW VPN HA dengan jenis stack IPV4_IPV6
gcloud compute vpn-gateways create on-premises-vpc-vpngw \
--network=on-premises-vpc\
--region=us-central1 \
--stack-type=IPV4_IPV6
Memvalidasi pembuatan GW VPN dengan ketersediaan tinggi (HA)
Menggunakan konsol, buka Konektivitas Hybrid → VPN → CLOUD VPN GATEWAYS.

Buat Cloud Router untuk transit-vpc
Di dalam Cloud Shell, buat Cloud Router yang berada di us-central1
gcloud compute routers create transit-vpc-cr-us-central1 \
--region=us-central1 \
--network=transit-vpc\
--asn=65001
Buat Cloud Router untuk on-premises-vpc
Di dalam Cloud Shell, buat Cloud Router yang berada di us-central1
gcloud compute routers create on-premises-vpc-cr-us-central1 \
--region=us-central1 \
--network=on-premises-vpc \
--asn=65002
Buat tunnel VPN untuk transit-vpc
Anda akan membuat dua tunnel VPN di setiap gateway VPN dengan ketersediaan tinggi (HA).
Buat VPN tunnel0
Di dalam Cloud Shell, buat tunnel0:
gcloud compute vpn-tunnels create transit-vpc-tunnel0 \
--peer-gcp-gateway on-premises-vpc-vpngw \
--region us-central1 \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router transit-vpc-cr-us-central1 \
--vpn-gateway transit-vpc-vpngw \
--interface 0
Buat tunnel VPN1
Di dalam Cloud Shell, buat tunnel1:
gcloud compute vpn-tunnels create transit-vpc-tunnel1 \
--peer-gcp-gateway on-premises-vpc-vpngw \
--region us-central1 \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router transit-vpc-cr-us-central1 \
--vpn-gateway transit-vpc-vpngw \
--interface 1
Buat tunnel VPN untuk on-premises-vpc
Anda akan membuat dua tunnel VPN di setiap gateway VPN dengan ketersediaan tinggi (HA).
Buat VPN tunnel0
Di dalam Cloud Shell, buat tunnel0:
gcloud compute vpn-tunnels create on-premises-tunnel0 \
--peer-gcp-gateway transit-vpc-vpngw \
--region us-central1 \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router on-premises-vpc-cr-us-central1 \
--vpn-gateway on-premises-vpc-vpngw \
--interface 0
Buat tunnel VPN1
Di dalam Cloud Shell, buat tunnel1:
gcloud compute vpn-tunnels create on-premises-tunnel1 \
--peer-gcp-gateway transit-vpc-vpngw \
--region us-central1 \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router on-premises-vpc-cr-us-central1 \
--vpn-gateway on-premises-vpc-vpngw \
--interface 1
Memvalidasi pembuatan tunnel VPN
Menggunakan konsol, buka Konektivitas Hybrid → VPN → TUNNEL CLOUD VPN.

Membuat sesi BGP
Di bagian ini, Anda akan mengonfigurasi antarmuka Cloud Router dan peer BGP.
Saat membuat tunnel VPN yang memungkinkan traffic IPv6, tentukan --enable-ipv6 saat Anda menjalankan perintah add-bgp-peer.
Membuat antarmuka dan peering BGP untuk transit-vpc
Di dalam Cloud Shell, buat antarmuka BGP:
gcloud compute routers add-interface transit-vpc-cr-us-central1 \
--interface-name if-tunnel1-to-onpremise \
--ip-address 169.254.1.1 \
--mask-length 30 \
--vpn-tunnel transit-vpc-tunnel0 \
--region us-central1
Di dalam Cloud Shell, buat peer BGP:
gcloud compute routers add-bgp-peer transit-vpc-cr-us-central1 \
--peer-name bgp-on-premises-tunnel0 \
--interface if-tunnel1-to-onpremise \
--peer-ip-address 169.254.1.2 \
--peer-asn 65002 \
--region us-central1 \
--enable-ipv6 \
--ipv6-nexthop-address 2600:2d00:0:3:0:0:0:1 \
--peer-ipv6-nexthop-address 2600:2d00:0:3:0:0:0:2
Di dalam Cloud Shell, buat antarmuka BGP:
gcloud compute routers add-interface transit-vpc-cr-us-central1 \
--interface-name if-tunnel2-to-onpremise \
--ip-address 169.254.2.1 \
--mask-length 30 \
--vpn-tunnel transit-vpc-tunnel1 \
--region us-central1
Di dalam Cloud Shell, buat peer BGP:
gcloud compute routers add-bgp-peer transit-vpc-cr-us-central1 \
--peer-name bgp-on-premises-tunnel2 \
--interface if-tunnel2-to-onpremise \
--peer-ip-address 169.254.2.2 \
--peer-asn 65002 \
--region us-central1 \
--enable-ipv6 \
--ipv6-nexthop-address 2600:2d00:0:3:0:0:0:11 \
--peer-ipv6-nexthop-address 2600:2d00:0:3:0:0:0:12
Membuat antarmuka dan peering BGP untuk on-premises-vpc
Di dalam Cloud Shell, buat antarmuka BGP:
gcloud compute routers add-interface on-premises-vpc-cr-us-central1\
--interface-name if-tunnel1-to-hub-vpc \
--ip-address 169.254.1.2 \
--mask-length 30 \
--vpn-tunnel on-premises-tunnel0 \
--region us-central1
Di dalam Cloud Shell, buat peer BGP:
gcloud compute routers add-bgp-peer on-premises-vpc-cr-us-central1 \
--peer-name bgp-transit-vpc-tunnel0 \
--interface if-tunnel1-to-hub-vpc \
--peer-ip-address 169.254.1.1 \
--peer-asn 65001 \
--region us-central1 \
--enable-ipv6 \
--ipv6-nexthop-address 2600:2d00:0:3:0:0:0:2 \
--peer-ipv6-nexthop-address 2600:2d00:0:3:0:0:0:1
Di dalam Cloud Shell, buat antarmuka BGP:
gcloud compute routers add-interface on-premises-vpc-cr-us-central1\
--interface-name if-tunnel2-to-hub-vpc \
--ip-address 169.254.2.2 \
--mask-length 30 \
--vpn-tunnel on-premises-tunnel1 \
--region us-central1
Di dalam Cloud Shell, buat peer BGP:
gcloud compute routers add-bgp-peer on-premises-vpc-cr-us-central1\
--peer-name bgp-transit-vpc-tunnel1\
--interface if-tunnel2-to-hub-vpc \
--peer-ip-address 169.254.2.1 \
--peer-asn 65001 \
--region us-central1 \
--enable-ipv6 \
--ipv6-nexthop-address 2600:2d00:0:3:0:0:0:12 \
--peer-ipv6-nexthop-address 2600:2d00:0:3:0:0:0:11
Buka Hybrid Connectivity → VPN untuk melihat detail tunnel VPN.

Memvalidasi bahwa transit-vpc mempelajari rute IPv4 dan IPv6 melalui VPN dengan ketersediaan tinggi (HA)
Karena tunnel VPN dengan ketersediaan tinggi (HA) dan sesi BGP sudah dibuat, rute dari on-premises-vpc dipelajari dari transit-vpc. Dengan menggunakan konsol, buka VPC network → VPC networks → transit-vpc → ROUTES.
Amati rute dinamis IPv4 dan IPv6 yang dipelajari seperti yang diilustrasikan di bawah:

Memvalidasi bahwa on-premises-vpc tidak mempelajari rute melalui VPN dengan ketersediaan tinggi (HA)
Transit-vpc tidak memiliki subnet, sehingga Cloud Router tidak akan mengiklankan subnet apa pun ke on-premises-vpc. Menggunakan konsol, buka VPC network → VPC networks → on-premises-vpc → ROUTES.
6. Mengiklankan VIP private.googleapis.com IPv6
Untuk mengakses Akses Google Pribadi dari lokal, Anda harus membuat pengumuman rute kustom dari transit-vpc. Alamat IPv6 2600:2d00:0002:2000:: akan diiklankan ke lingkungan lokal dan digunakan oleh workload untuk mengakses Google API seperti Cloud Storage, Cloud BigQuery, dan Cloud Bigtable setelah DNS lokal diperbarui.
Dalam codelab ini, Anda akan mengaktifkan akses API ke sebagian besar Google API dan layanan Google terlepas dari apakah keduanya didukung oleh Kontrol Layanan VPC.
Dari konsol, buka Hybrid Connectivity → Cloud Routers → transit-vpc-cr-us-central1, lalu pilih EDIT.

Di bagian Rute yang diiklankan, pilih opsi Buat rute kustom, perbarui kolom berdasarkan contoh di bawah, pilih SELESAI, lalu klik SIMPAN.

Validasi bahwa on-premises-vpc mempelajari rute IPv6
Sekarang setelah VIP private.googleapis.com IPv6 diiklankan dari transit-vpc, on-premise-vpc akan mempelajari rute dinamis IPv6 untuk VIP. Menggunakan konsol, buka VPC network → VPC networks → on-premises-vpc → ROUTES.
Amati rute IPv6 yang diiklankan dari transit-vpc:

7. Membangun komunikasi ke Google API menggunakan Akses Google Pribadi
Di bagian berikut, kita akan mengakses dan memvalidasi konektivitas ke Cloud Storage menggunakan VIP private.googleapis.com IPv6. Untuk melakukannya, kita perlu melakukan tindakan berikut di on-premises-vpc.
- Buat aturan firewall masuk untuk mengizinkan akses Identity-Aware Proxy (IAP) untuk akses SSH.
- Buat Cloud Router dan Cloud NAT untuk mendownload tcpdump dan dnsutils.
- Buat zona Cloud DNS pribadi untuk googleapis.com.
- Membuat bucket Cloud Storage.
Buat aturan firewall IAP
Untuk mengizinkan IAP terhubung ke instance VM Anda, buat aturan firewall yang:
- Berlaku untuk semua instance VM yang ingin Anda akses menggunakan IAP.
- Mengizinkan traffic masuk dari rentang IP 35.235.240.0/20. Rentang ini berisi semua alamat IP yang digunakan IAP untuk penerusan TCP.
Di dalam Cloud Shell, buat aturan firewall IAP.
gcloud compute firewall-rules create ssh-iap-on-premises-vpc \
--network on-premises-vpc \
--allow tcp:22 \
--source-ranges=35.235.240.0/20
Konfigurasi Cloud Router dan NAT
Cloud NAT digunakan dalam codelab untuk penginstalan paket software karena instance VM tidak memiliki alamat IP eksternal.
Di dalam Cloud Shell, buat Cloud Router.
gcloud compute routers create on-premises-cr-us-central1-nat --network on-premises-vpc --region us-central1
Di dalam Cloud Shell, buat gateway NAT.
gcloud compute routers nats create on-premises-nat-us-central1 --router=on-premises-cr-us-central1-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1
Membuat instance pengujian, on-premises-testbox
Buat instance pengujian yang akan digunakan untuk menguji dan memvalidasi konektivitas ke VIP private.googleapis.com IPv6.
Di dalam Cloud Shell, buat instance.
gcloud compute instances create on-premises-testbox \
--project=$projectname \
--machine-type=e2-micro \
--stack-type=IPV4_IPV6 \
--image-family debian-10 \
--no-address \
--image-project debian-cloud \
--zone us-central1-a \
--subnet=on-premises-subnet1-us-central1 \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install tcpdump -y
sudo apt-get install dnsutils -y"
Buat zona pribadi Cloud DNS
Kita akan menggunakan Cloud DNS untuk membuat zona dan data pribadi untuk *.googleapis.com. Berikut adalah langkah-langkah yang diperlukan.
Di dalam Cloud Shell, buat zona DNS pribadi v6-googleapis.com.
gcloud dns --project=$projectname managed-zones create v6-googleapis --description="" --dns-name="googleapis.com." --visibility="private" --networks="on-premises-vpc"
Di dalam Cloud Shell, buat data AAAA untuk private.googleapis.com., yang mengarah ke alamat IPv6 2600:2d00:0002:2000::.
gcloud dns --project=$projectname record-sets create private.googleapis.com. --zone="v6-googleapis" --type="AAAA" --ttl="300" --rrdatas="2600:2d00:0002:2000::"
Di dalam Cloud Shell, buat CNAME untuk *.googleapis.com agar mengarah ke private.googleapis.com.
gcloud dns --project=$projectname record-sets create *.googleapis.com. --zone="v6-googleapis" --type="CNAME" --ttl="300" --rrdatas="private.googleapis.com."
Memvalidasi zona pribadi Cloud DNS
Buka Network services → Cloud DNS → v6-googleapis.

Buat bucket Cloud Storage
Di dalam Cloud Shell, buat bucket Cloud Storage dan ganti bucket_name dengan nama unik global yang Anda inginkan. Coba nama lain jika sudah digunakan.
gsutil mb -l us-central1 -b on gs://bucket_name
8. Mengakses dan memvalidasi Google API menggunakan alamat IPv6
Di bagian berikut, Anda akan melakukan SSH ke dua terminal Cloud Shell. Terminal pertama digunakan untuk memvalidasi pencarian IPv6 menggunakan tcpdump, sedangkan terminal kedua digunakan untuk akses ke bucket penyimpanan cloud.
Di dalam Cloud Shell, lakukan SSH ke instance pengujian on-premises-testbox.
gcloud compute ssh --zone "us-central1-a" "on-premises-testbox" --project "$projectname"
Di terminal Cloud Shell satu, mulai tcpdump dan pantau port 53 untuk traffic DNS.
sudo tcpdump -nn -i ens4 port 53
Contohnya seperti di bawah ini.
user@on-premises-testbox:~$ sudo tcpdump -nn -i ens4 port 53
Buka terminal Cloud Shell baru dengan memilih "+". Setelah tab baru dibuka, perbarui variabel nama project.
Di dalam Cloud Shell, perbarui variabel nama project.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=YOUR-PROJECT-NAME
echo $projectname
Di dalam Cloud Shell dua, lakukan SSH ke instance pengujian on-premises-testbox.
gcloud compute ssh --zone "us-central1-a" "on-premises-testbox" --project "$projectname"
Melakukan dig untuk memvalidasi pencarian DNS
Di terminal Cloud Shell kedua, lakukan dig terhadap storage.googleapis.com.
dig AAAA storage.googleapis.com
Periksa ANSWER SECTION, CNAME storage.googleapis.com zona DNS pribadi ke AAAA private.googleapis.com 2600:2d00:2:2000::, contoh di bawah:
user@on-premises-testbox:~$ dig AAAA storage.googleapis.com
; <<>> DiG 9.11.5-P4-5.1+deb10u8-Debian <<>> AAAA storage.googleapis.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2782
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;storage.googleapis.com. IN AAAA
;; ANSWER SECTION:
storage.googleapis.com. 300 IN CNAME private.googleapis.com.
private.googleapis.com. 300 IN AAAA 2600:2d00:2:2000::
;; Query time: 9 msec
;; SERVER: 169.254.169.254#53(169.254.169.254)
;; WHEN: Mon Feb 20 01:56:33 UTC 2023
;; MSG SIZE rcvd: 101
Di terminal Cloud Shell satu, periksa tcpdump yang selanjutnya mengonfirmasi resolusi DNS ke AAAA 2600:2d00:2:2000::.
user@on-premises-testbox:~$ sudo tcpdump -nn -i ens4 port 53
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens4, link-type EN10MB (Ethernet), capture size 262144 bytes
01:56:33.473208 IP 172.16.10.3.41476 > 169.254.169.254.53: 2782+ [1au] AAAA? storage.googleapis.com. (63)
01:56:33.482580 IP 169.254.169.254.53 > 172.16.10.3.41476: 2782 2/0/1 CNAME private.googleapis.com., AAAA 2600:2d00:2:2000:: (101)
Berdasarkan dig dan tcpdump, kita dapat menyimpulkan bahwa resolusi DNS ke storage.googleapis.com dicapai melalui 2600:2d00:2:2000::, alamat IPv6 untuk private.googleapis.com.
Lakukan daftar gsutil untuk memvalidasi akses ke penyimpanan cloud
Di terminal Cloud Shell kedua, lakukan pencantuman terhadap bucket penyimpanan yang dibuat sebelumnya menggunakan gsutil. Ubah bucket_name menjadi bucket yang Anda buat sebelumnya.
gsutil -d ls gs://bucket_name
Contoh menggunakan bucket penyimpanan cloud codelab-ipv6, periksa output debug yang menunjukkan storage.googleapis.com dan HTTP/1.1 200 OK.
user@on-premises-testbox:~$ gsutil -d ls gs://codelab-ipv6
***************************** WARNING *****************************
*** You are running gsutil with debug output enabled.
*** Be aware that debug output includes authentication credentials.
*** Make sure to remove the value of the Authorization header for
*** each HTTP request printed to the console prior to posting to
*** a public medium such as a forum post or Stack Overflow.
***************************** WARNING *****************************
gsutil version: 5.19
checksum: 49a18b9e15560adbc187bab09c51b5fd (OK)
boto version: 2.49.0
python version: 3.9.16 (main, Jan 10 2023, 02:29:25) [Clang 12.0.1 ]
OS: Linux 4.19.0-23-cloud-amd64
multiprocessing available: True
using cloud sdk: True
pass cloud sdk credentials to gsutil: True
config path(s): /etc/boto.cfg
gsutil path: /usr/lib/google-cloud-sdk/bin/gsutil
compiled crcmod: True
installed via package manager: False
editable install: False
shim enabled: False
Command being run: /usr/lib/google-cloud-sdk/platform/gsutil/gsutil -o GSUtil:default_project_id=myprojectid -o GoogleCompute:service_account=default -d ls gs://codelab-ipv6
config_file_list: ['/etc/boto.cfg']
config: [('working_dir', '/mnt/pyami'), ('debug', '0'), ('https_validate_certificates', 'true'), ('working_dir', '/mnt/pyami'), ('debug', '0'), ('default_project_id', 'myproject'), ('default_api_version', '2')]
DEBUG 0220 02:01:14.713012 multiprocess_file_storage.py] Read credential file
INFO 0220 02:01:14.714742 base_api.py] Calling method storage.objects.list with StorageObjectsListRequest: <StorageObjectsListRequest
bucket: 'codelab-ipv6'
delimiter: '/'
maxResults: 1000
projection: ProjectionValueValuesEnum(noAcl, 1)
versions: False>
INFO 0220 02:01:14.715939 base_api.py] Making http GET to https://storage.googleapis.com/storage/v1/b/codelab-ipv6/o?alt=json&fields=prefixes%2Citems%2Fname%2CnextPageToken&delimiter=%2F&maxResults=1000&projection=noAcl&versions=False
INFO 0220 02:01:14.716369 base_api.py] Headers: {'accept': 'application/json',
'accept-encoding': 'gzip, deflate',
'content-length': '0',
'user-agent': 'apitools Python/3.9.16 gsutil/5.19 (linux) analytics/disabled '
'interactive/True command/ls google-cloud-sdk/416.0.0'}
INFO 0220 02:01:14.716875 base_api.py] Body: (none)
connect: (storage.googleapis.com, 443)
send: b'GET /storage/v1/b/codelab-ipv6/o?alt=json&fields=prefixes%2Citems%2Fname%2CnextPageToken&delimiter=%2F&maxResults=1000&projection=noAcl&versions=False HTTP/1.1\r\nHost: storage.googleapis.com\r\ncontent-length: 0\r\nuser-agent: apitools Python/3.9.16 gsutil/5.19 (linux) analytics/disabled
<SNIP>
reply: 'HTTP/1.1 200 OK\r\n'
header: X-GUploader-UploadID: ADPycdvunHlbN1WQBxDr_LefzLaH_HY1bBH22X7IxX9sF1G2Yo_7-nhYwjxUf6N7AF9Zg_JDwPxYtuNJiFutfd6qauEfohYPs7mE
header: Content-Type: application/json; charset=UTF-8
header: Date: Mon, 20 Feb 2023 02:01:14 GMT
header: Vary: Origin
header: Vary: X-Origin
header: Cache-Control: private, max-age=0, must-revalidate, no-transform
header: Expires: Mon, 20 Feb 2023 02:01:14 GMT
header: Content-Length: 3
header: Server: UploadServer
INFO 0220 02:01:14.803286 base_api.py] Response of type Objects: <Objects
items: []
prefixes: []>
user@on-premises-testbox:~$
Di terminal Cloud Shell satu, periksa tcpdump yang selanjutnya mengonfirmasi resolusi DNS ke AAAA 2600:2d00:2:2000::.
eepakmichael@on-premises-testbox:~$ sudo tcpdump -nn -i ens4 port 53
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens4, link-type EN10MB (Ethernet), capture size 262144 bytes
02:01:14.725000 IP 172.16.10.3.48792 > 169.254.169.254.53: 7056+ A? storage.googleapis.com. (40)
02:01:14.725106 IP 172.16.10.3.48792 > 169.254.169.254.53: 50841+ AAAA? storage.googleapis.com. (40)
02:01:14.732516 IP 169.254.169.254.53 > 172.16.10.3.48792: 50841 2/0/0 CNAME private.googleapis.com., AAAA 2600:2d00:2:2000:: (90)
Keluar dari sistem operasi instance on-premise-testbox, lalu kembali ke perintah Cloud Shell.
9. Pembersihan
Di dalam Cloud Shell, lakukan hal berikut:
gcloud compute vpn-tunnels delete transit-vpc-tunnel0 transit-vpc-tunnel1 on-premises-tunnel1 --region=us-central1 --quiet
gcloud compute vpn-tunnels delete on-premises-tunnel0 on-premises-tunnel1 --region=us-central1 --quiet
gcloud compute vpn-gateways delete on-premises-vpc-vpngw transit-vpc-vpngw --region=us-central1 --quiet
gcloud compute routers delete transit-vpc-cr-us-central1 on-premises-vpc-cr-us-central1 on-premises-cr-us-central1-nat --region=us-central1 --quiet
gcloud compute instances delete on-premises-testbox --zone=us-central1-a --quiet
gcloud compute networks subnets delete on-premises-subnet1-us-central1 --region=us-central1 --quiet
gcloud compute firewall-rules delete ssh-iap-on-premises-vpc --quiet
gcloud compute networks delete on-premises-vpc --quiet
gcloud compute networks delete transit-vpc --quiet
gsutil rb gs://bucket_name
gcloud dns record-sets delete *.googleapis.com. \
--type=CNAME \
--zone=v6-googleapis
gcloud dns record-sets delete private.googleapis.com. \
--type=AAAA \
--zone=v6-googleapis
gcloud dns managed-zones delete v6-googleapis
10. Selamat
Selamat, Anda telah berhasil mengonfigurasi dan memvalidasi Akses Google Pribadi dengan IPv6.
Anda telah membuat infrastruktur transit dan lokal, serta membuat zona DNS pribadi yang memungkinkan resolusi untuk domain Google API menggunakan IPv6. Anda telah mempelajari cara menguji dan memvalidasi akses IPv6 menggunakan dig dan Cloud Storage.
Cosmopup menganggap codelab itu luar biasa!!

Apa selanjutnya?
Lihat beberapa codelab ini...