【7月日本語対応！】GCP資格Professional Cloud Network Engineer受験対策

# はじめに
2023年7月よりGoogle Cloud認定資格Professional Cloud Network Engineerが日本語受験できるようになりました。
そのため、これからProfessional Cloud Network Engineerを受験する方が増えるのではないかと思います。
本記事では、Professional Cloud Network Engineerの合格を目指す方に向けて、キーワードや必要な知識について共有できればと思います。
本記事を読んだだけで合格できる、ということを保証するものではありませんので、ご了承ください。

# もくじ
- Professional Cloud Network Engineerについて
- 要点
- 勉強法
- まとめ

# Professional Cloud Network Engineerについて
本資格ではGoogle Cloudにおけるネットワークアーキテクチャについて問われます。Google Cloudのクラウドネイティブなネットワークアーキテクチャはもちろん、ハイブリッドクラウドやマルチクラウドなネットワークアーキテクチャも対照です。問題は50～60問の選択式であり、試験時間は2時間、受験費用は$200 (税別) です。
[試験ページ](https://cloud.google.com/learn/certification/cloud-network-engineer?hl=ja)では、以下のことが評価されるとあります。

- Google Cloudネットワークの設計、計画、プロトタイピング
- Virtual Private Cloud (VPC) インスタンスを実装する
- ネットワークサービスの構成
- ハイブリッド相互接続の実装
- ネットワークオペレーションの管理、モニタリング、最適化

Professional Cloud Network Engineerの[試験ガイド](https://cloud.google.com/learn/certification/guides/cloud-network-engineer?hl=ja)には試験に出題される可能性があるトピックについて記載があります。全て知りたい方は試験ガイドのリンクに飛んでいただきたいですが、ここでは主に重要だと思われるトピックについてピックアップします。各トピックの詳細については次項の要点で言及するため、ここではこんなことが問われる試験なんだという理解だけで十分です。

## 重要トピック
- ネットワークの高可用性・フェイルオーバー・障害復旧戦略
- DNS戦略
- 負荷分散
- ハイブリッド接続
- 共有VPC
- リージョンとマルチリージョン
- ファイアウォール
- Dedicated InterconnectとPartner Interconnect
- マルチクラウド接続
- ダイレクトピアリング
- IPsecVPN
- VPCネットワークピアリング
- 静的ルーティングと動的ルーティング
- ロードバランサ
- VPC Service Contorols
- Cloud Armor
- Cloud CDN
- Cloud NAT
- Pachet Mirroring
- Network Intelligence Center

# 要点
ここでは試験でよく問われたサービスに関するキーワードを整理したので、勉強する際の参考としていただけますと幸いです。

## VPC
Google Cloudのネットワークサービスといえばまず出てくるサービスです。

https://cloud.google.com/vpc/docs/vpc?hl=ja

VPCに関するキーワードとしては以下の通りです。
- [共有VPC](https://cloud.google.com/vpc/docs/shared-vpc?hl=ja)を使用すると同じ組織内の異なるプロジェクト同士で接続可能 (複数のプロジェクトが共通のVPCに接続できる)
- 他のプロジェクトや組織のVPCと接続するには[VPCネットワークピアリング](https://cloud.google.com/vpc/docs/vpc-peering?hl=ja)を使用
- サブネット作成モードには自動モードとカスタムモードがあり、Google Cloudではカスタムモードを推奨
- [VPCファイアウォールルール](https://cloud.google.com/firewall/docs/firewalls?hl=ja)を用いると特定のプロジェクトとネットワークにおけるインスタンス間の接続を許可または拒否可能
- [階層型ファイアウォールポリシー](https://cloud.google.com/vpc/docs/firewall-policies?hl=ja)を使用すると組織全体で一貫したファイアウォールポリシーを適用することができ、組織もしくはフォルダ単位で割り当て可能
- 内部IPアドレスしか持たないインスタンスをGoogle APIやサービスの外部IPアドレスと接続したい場合には[限定公開のGoogleアクセス (Private Google Access)](https://cloud.google.com/vpc/docs/private-google-access?hl=ja)を用いる
- VPCネットワーク内の監視には[VPCフローログ](https://cloud.google.com/vpc/docs/flow-logs?hl=ja)や[Packet Mirroring](https://cloud.google.com/vpc/docs/packet-mirroring?hl=ja)を用いる

## VPC Service Controls
Google Cloudで明示的に指定したサービスのリソースとデータを保護することができます。

https://cloud.google.com/vpc-service-controls/docs/overview?hl=ja

VPC Service Controlsに関するキーワードとしては以下の通りです。
- [サービス境界](https://cloud.google.com/vpc-service-controls/docs/service-perimeters?hl=ja)を作成して、プロジェクト内のどのGoogle Cloudサービスを保護するか、を指定できる
- サービス境界を作成または変更する際、[ドライランモード](https://cloud.google.com/vpc-service-controls/docs/dry-run-mode?hl=ja)を使用することでVPC Service Controlsの有効化や既存環境の境界変更による影響を把握することができる

## Cloud DNS
Cloud DNSはGoogle Cloudが提供しているDNSサービスです。

https://cloud.google.com/dns/docs/overview?hl=ja

Cloud DNSに関するキーワードとしては以下の通りです。
- Cloud DNSは一般公開ゾーンと限定公開マネージドDNSゾーンを提供 ([参考](https://cloud.google.com/dns/docs/zones/zones-overview?hl=ja))
- [DNSSEC](https://cloud.google.com/dns/docs/dnssec?hl=ja)によりなりすまし攻撃やキャッシュポイズニング攻撃からドメインを保護

キーワードではないですが、[Cloud DNSのベストプラクティス](https://cloud.google.com/dns/docs/best-practices?hl=ja)を参照しておくことをおすすめします。  
※問題の正解はベストプラクティスに基づいていることもあるので

## ネットワーク接続サービス
ここではGoogle Cloudにおけるネットワーク接続サービスについてまとめました。似たようなサービスがあるのでどういうユースケースで用いるのか理解する必要があります。

### Cloud VPN
Cloud VPNはIPsec VPN接続を使用してピアネットワークをVPCへ接続します。データは保護されますが、インターネットを介するので試験問題に「公共のネットワークに接続したくない」とあれば、このソリューションは選択できません。

https://cloud.google.com/network-connectivity/docs/vpn/concepts/overview?hl=ja

### Cloud Router
Cloud RouterはBGPを使用して、VPCとピアネットワーク間でルートを動的に交換できます。MD5認証やASNなどここでしか出てこない単語についてもどんなものか程度は知っておいた方が良いです。

https://cloud.google.com/network-connectivity/docs/router/concepts/overview?hl=ja

### Cloud Interconnect
Cloud InterconnectはGoogle Cloud内のVPCと他のネットワークを低レイテンシで高可用性接続しネットワーク間のデータを転送できます。Cloud InterconnectにはDedicated InterconnectとPartner Interconnectの2種類のオプションがあります。
- Dedicated InterconnectはオンプレミスネットワークとVPCを物理的に直接接続
- Partner Interconnectはサポート対象のサービスプロバイダを介して、オンプレミスとVPCを接続

https://cloud.google.com/network-connectivity/docs/interconnect/concepts/dedicated-overview?hl=ja

https://cloud.google.com/network-connectivity/docs/interconnect/concepts/partner-overview?hl=ja

### ダイレクトピアリング/キャリアピアリング
ダイレクトピアリングとキャリアピアリングを使用すると、オンプレミスとGoogle Workspace、Google APIを接続することができます。ダイレクトピアリングは直接接続し、キャリアピアリングはサービスプロバイダを使用して接続します。イメージとしてダイレクトピアリングがDedicated Interconnect、キャリアピアリングがPartner Interconnectと似ている感じです。  
※機能は異なるので、それぞれの違いは理解する必要があります。

https://cloud.google.com/network-connectivity/docs/direct-peering?hl=ja

https://cloud.google.com/network-connectivity/docs/carrier-peering?hl=ja

## Cloud NAT
Cloud NATは外部IPアドレスを持たない特定のリソースからインターネットへの送信接続を可能にするGoogle Cloudのサービスです。

https://cloud.google.com/nat/docs/overview?hl=ja

## Cloud CDN
Cloud CDNはGoogleのグローバルエッジネットワークを使用してユーザーの近くからコンテンツを配信するGoogle Cloudのサービスです。

https://cloud.google.com/cdn/docs/overview?hl=ja

キーワードとしては以下の通りです。
- 期間限定のコンテンツ配信には[署名付きURL](https://cloud.google.com/cdn/docs/authenticate-content?hl=ja#signed_urls)を用いる
- セキュリティを強化するにはCloud Armorを用いる

## Cloud Load Balancing
Cloud Load Balancingはユーザーのトラフィックをアプリケーションの複数のインスタンスに分散するGoogle Cloudサービスです。

https://cloud.google.com/load-balancing/docs/load-balancing-overview?hl=ja

ロードバランサにはアプリケーションロードバランサとネットワークロードバランサの2種類があります。アプリケーションロードバランサはHTTP(S)トラフィックを使用するアプリケーション用のレイヤ7ロードバランサが必要な場合に選択し、ネットワークロードバランサはTLSロードバランサ (プロキシロードバランサ) を使用したレイヤ4ロードバランサが必要な場合、またはUDP、ESP、ICMPなどのIPプロトコルのサポート (パススルーロードバランサを使用) が必要な場合に選択します。また、それぞれのロードバランサは「外部用」と「内部用」など更に種類が分かれています。どのロードバランサを用いるかについては問題として問われることもありますので、以下のリンクを参照してユースケースを覚えておくと良いです。

https://cloud.google.com/load-balancing/docs/choosing-load-balancer?hl=ja

## Google Cloud Armor
Google Cloud ArmorはDDoS攻撃やクロスサイトスクリプティング、SQLインジェクションなどのアプリケーション攻撃といったさまざまなタイプの脅威からGoogle Cloudのデプロイを保護するGoogle Cloudのサービスです。

https://cloud.google.com/armor/docs/cloud-armor-overview?hl=ja

キーワードとしては以下の通りです。
- [セキュリティポリシー](https://cloud.google.com/armor/docs/security-policy-overview?hl=ja)を使用すると、一般的なウェブ攻撃やトラフィックを妨げる可能性のある他のレイヤ7続成のリクエストをブロックし、アプリケーションを保護できる
- [Managed Protection](https://cloud.google.com/armor/docs/managed-protection-overview?hl=ja)を使用すると、DDoS攻撃やその他のインターネット脅威からウェブアプリケーションを保護できる
- [Adaptive Protection (適応型保護) ](https://cloud.google.com/armor/docs/adaptive-protection-overview?hl=ja)を使用すると、バックエンドサービスに対するトラフィックパターンを分析し、不審な攻撃を検知してWAF推奨ルールを生成する

## Network Intelligence Center
Network Intelligence CenterはGoogle Cloudネットワークの監視サービスです。

https://cloud.google.com/network-intelligence-center?hl=ja

出来ることとしては主に以下の5つです。
1. [ネットワークトポロジー](https://cloud.google.com/network-intelligence-center/docs/network-topology?hl=ja)  
   Google CloudのVPC内におけるリアルタイムのテレメトリーと構成データを収集してリソースを可視化
2. [接続テスト](https://cloud.google.com/network-intelligence-center/docs/connectivity-tests/concepts/overview?hl=ja)  
   ネットワークエンドポイント間の接続を確認できる診断ツール
3. [パフォーマンスダッシュボード](https://cloud.google.com/network-intelligence-center/docs/performance-dashboard/concepts/overview?hl=ja)  
   Google Cloudネットワーク全体のパフォーマンスを可視化
4. [ファイアウォールインサイト](https://cloud.google.com/network-intelligence-center/docs/firewall-insights/concepts/overview?hl=ja)  
   ファイアウォールルールの使用状況に関する分析情報、推奨事項、指標を提供し、機械学習を使用して今後のファイアウォールルールの使用も予測可能
5. [ネットワークアナライザ](https://cloud.google.com/network-intelligence-center/docs/network-analyzer/overview?hl=ja)  
   VPCネットワークの構成を自動的にモニタリングし、構成ミスや最適でない構成を検出

## ハブ＆スポーク型ネットワーク
次項の勉強法2にあるリンクでも記載してありますが、本試験ではこのハブ＆スポーク型ネットワークに関する問題がよく出題された記憶があります。そのため、以下ドキュメントを一読した方が良いです。

https://cloud.google.com/architecture/deploy-hub-spoke-vpc-network-topology?hl=ja

# 勉強法
私が勉強した方法を一例として紹介します。
1. [試験ガイド](https://cloud.google.com/learn/certification/guides/cloud-network-engineer?hl=ja)を読む
2. Qiitaの受験対策記事や[G-gen](https://blog.g-gen.co.jp/entry/professional-cloud-network-engineer)で試験でよく問われることを押さえる
3. [模擬試験](https://docs.google.com/forms/d/e/1FAIpQLSenwtVgqT1eyc3_H_QFdFIAVGezCJ42qAJDmDxUC5Yiq-m-Pw/viewform)を受験する
4. [Udemy](https://www.udemy.com/course/gcp-network-engineer-pratice-exam/)などの問題集を利用して知識強化を図る

# まとめ
以上がProfessional Cloud Netowork Engineer合格に向けた要点です。この内容がこれからProfessional Cloud Network Engineerを目指される方の参考になれば幸いです。  
また、私が別で書いたGoogle Cloud認定資格11種の難易度などについての記事もございますので、こちらも参照ください。

https://qiita.com/yutakon/items/73fa3e853e60620fd777