1. Pengantar
Akses Google Pribadi untuk host lokal menyediakan cara bagi sistem lokal untuk terhubung ke Google API dan layanan Google dengan mengarahkan traffic melalui tunnel Cloud VPN atau lampiran VLAN untuk Cloud Interconnect. Akses Google Pribadi untuk host lokal adalah cara 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 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 yang disebut on-premises-vpc
untuk mewakili lingkungan lokal. Untuk deployment Anda, vpc lokal tidak akan ada, tetapi jaringan hybrid ke pusat data lokal atau penyedia cloud Anda akan digunakan.
Yang akan Anda build
Dalam codelab ini, Anda akan membuat jaringan IPv6 menyeluruh yang menunjukkan akses lokal ke API penyimpanan cloud menggunakan CNAME *.googleapis.com ke alamat IPv6 private.googleapis.com 2600:2d00:0002:2000::/64
seperti yang diilustrasikan dalam Gambar 1.
Gambar 1
Yang akan Anda pelajari
- Cara membuat jaringan VPC stack ganda
- Cara membuat VPN HA dengan IPv6
- Cara mengupdate DNS untuk mengakses Akses Google Pribadi
- Cara membuat dan memvalidasi konektivitas Akses Google Pribadi
Yang Anda butuhkan
- Project Google Cloud
2. Sebelum memulai
Mengupdate project agar 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. Membuat vpc transit
Membuat 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. Membuat jaringan lokal
Jaringan VPC ini mewakili lingkungan lokal.
Membuat 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
Membuat 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. Membuat VPN dengan ketersediaan tinggi (HA) untuk transit-vpc dan VM lokal
Membuat GW VPN dengan ketersediaan tinggi (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
Membuat GW VPN dengan ketersediaan tinggi (HA) untuk vpc on-premise
Di dalam Cloud Shell, buat GW VPN dengan ketersediaan tinggi (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)
Dengan menggunakan konsol, buka Konektivitas Hybrid → VPN → CLOUD VPN GATEWAYS.
Membuat Cloud Router untuk transit-vpc
Di dalam Cloud Shell, buat Cloud Router yang terletak di us-central1
gcloud compute routers create transit-vpc-cr-us-central1 \
--region=us-central1 \
--network=transit-vpc\
--asn=65001
Membuat Cloud Router untuk on-premises-vpc
Di dalam Cloud Shell, buat Cloud Router yang terletak di us-central1
gcloud compute routers create on-premises-vpc-cr-us-central1 \
--region=us-central1 \
--network=on-premises-vpc \
--asn=65002
Membuat tunnel VPN untuk transit-vpc
Anda akan membuat dua tunnel VPN di setiap gateway VPN dengan ketersediaan tinggi (HA).
Membuat tunnel VPN0
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
Membuat 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
Membuat tunnel VPN untuk on-premises-vpc
Anda akan membuat dua tunnel VPN di setiap gateway VPN dengan ketersediaan tinggi (HA).
Membuat tunnel VPN0
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
Membuat 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
Dengan menggunakan konsol, buka Konektivitas Hybrid → VPN → CLOUD VPN DMCAS.
Membuat sesi BGP
Di bagian ini, Anda akan mengonfigurasi antarmuka Cloud Router dan peer BGP.
Saat membuat tunnel VPN yang mengizinkan traffic IPv6, tentukan --enable-ipv6
saat Anda menjalankan perintah add-bgp-peer
.
Membuat antarmuka BGP dan peering 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 BGP dan peering untuk vpc lokal
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 Konektivitas Hybrid → VPN untuk melihat detail tunnel VPN.
Validasi bahwa transit-vpc mempelajari rute IPv4 dan IPv6 melalui VPN dengan ketersediaan tinggi (HA)
Karena tunnel VPN dengan ketersediaan tinggi (HA) dan sesi BGP telah ditetapkan, rute dari VPC lokal dipelajari dari vCPU transit. Dengan menggunakan konsol, buka jaringan VPC → Jaringan VPC → transit-vpc → ROUTES.
Amati rute dinamis IPv4 dan IPv6 yang telah dipelajari yang diilustrasikan di bawah ini:
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. Dengan menggunakan konsol, buka jaringan VPC → Jaringan VPC → lokal-vpc → ROUTES.
6. Mengiklankan VIP6 private.googleapis.com
Untuk mengakses Akses Google Pribadi dari infrastruktur lokal, Anda harus membuat iklan rute khusus dari transit-vpc. Alamat IPv6 2600:2d00:0002:2000::
akan diiklankan ke lingkungan lokal dan digunakan oleh beban kerja 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 atau tidak.
Dari konsol, buka Konektivitas Hybrid → Cloud Routers → transit-vpc-cr-us-central1, lalu pilih EDIT.
Di bagian Advertised routes, pilih opsi Create custom routes, perbarui kolom berdasarkan contoh di bawah, pilih DONE, lalu klik SAVE.
Validasi bahwa vpc lokal mempelajari rute IPv6
Setelah VIP private.googleapis.com IPv6 diiklankan dari transit-vpc, on-premises-vpc akan mempelajari rute dinamis IPv6 untuk VIP. Dengan menggunakan konsol, buka jaringan VPC → Jaringan VPC → lokal-vpc → ROUTES.
Amati rute IPv6 yang ditampilkan dari transit-vpc:
7. Membuat 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 guna mengizinkan akses Identity-Aware Proxy (IAP) untuk akses SSH.
- Membuat Cloud Router dan Cloud NAT untuk mendownload tcpdump dan dnsutils.
- Buat zona Cloud DNS pribadi untuk googleapis.com.
- Membuat bucket Cloud Storage.
Membuat 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 di 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, testbox lokal
Membuat instance pengujian yang akan digunakan untuk menguji dan memvalidasi konektivitas ke IPv6 private.googleapis.com VIP.
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"
Membuat zona pribadi Cloud DNS
Kita akan menggunakan Cloud DNS untuk membuat zona pribadi dan kumpulan data untuk *.googleapis.com, di bawah ini 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 Layanan jaringan → Cloud DNS → v6-googleapis.
Membuat 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 {i>tcpdump<i} sedangkan Terminal kedua digunakan untuk mengakses bucket Cloud Storage.
Di dalam Cloud Shell, jalankan ssh untuk menguji instance on-premises-testbox.
gcloud compute ssh --zone "us-central1-a" "on-premises-testbox" --project "$projectname"
Di dalam Cloud Shell terminal 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 untuk menguji instance on-premises-testbox.
gcloud compute ssh --zone "us-central1-a" "on-premises-testbox" --project "$projectname"
Melakukan dig untuk memvalidasi pencarian DNS
Di dalam terminal Cloud Shell kedua, lakukan dig terhadap storage.googleapis.com.
dig AAAA storage.googleapis.com
Periksa BAGIAN JAWABAN, CNAME zona DNS pribadi storage.googleapis.com ke AAAA 2600:2d00:2:2000::
private.googleapis.com, 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 dalam terminal Cloud Shell satu, periksa tcpdump yang lebih lanjut 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.
Jalankan daftar gsutil untuk memvalidasi akses ke penyimpanan cloud
Di dalam terminal Cloud Shell kedua, buat daftar bucket penyimpanan yang dibuat sebelumnya menggunakan gsutil. Ubah bucket_name ke bucket yang Anda buat sebelumnya.
gsutil -d ls gs://bucket_name
Misalnya menggunakan bucket Cloud Storage 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 dalam terminal Cloud Shell satu, periksa tcpdump yang lebih lanjut 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-premises-testbox, 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 mengaktifkan resolusi untuk domain Google API menggunakan IPv6. Anda belajar cara menguji dan memvalidasi akses IPv6 menggunakan dig dan penyimpanan {i>cloud<i}.
Cosmopup menganggap codelab itu luar biasa.
Apa selanjutnya?
Lihat beberapa codelab ini...