【正解】C
【0からの解説】
①前提知識:Google Cloud のファイアウォールには、従来からある VPC ファイアウォール ルール(いわゆるクラシック ファイアウォール)と、Cloud NGFW のファイアウォール ポリシー(階層型・グローバル ネットワーク・リージョン ネットワーク ファイアウォール ポリシー)があります。FQDN オブジェクト(宛先をドメイン名で指定する機能)は VPC ファイアウォール ルールでは使えず、ネットワーク ファイアウォール ポリシー(または階層型ポリシー)のルールでのみ使えます。
評価順序は、階層型ファイアウォール ポリシー → VPC ファイアウォール ルールとネットワーク ファイアウォール ポリシーの順です。VPC ネットワークには networkFirewallPolicyEnforcementOrder という設定があり、既定値は AFTER_CLASSIC_FIREWALL(VPC ファイアウォール ルールを先に評価し、その後にネットワーク ファイアウォール ポリシーを評価)です。BEFORE_CLASSIC_FIREWALL に変更すると、ネットワーク ファイアウォール ポリシーが VPC ファイアウォール ルールより先に評価されます。
②状況の整理:既存の VPC ファイアウォール ルールで「すべての下りを拒否」しており、FQDN を使った許可ルールはネットワーク ファイアウォール ポリシーに追加したはずです(FQDN はポリシーでしか使えないため)。既定の AFTER_CLASSIC_FIREWALL のままだと、先に評価される VPC ファイアウォール ルールの「下りすべて拒否」に一致した時点でパケットが拒否され、後で評価されるネットワーク ファイアウォール ポリシーの許可ルールには到達しません。
③正解の根拠:評価順序を BEFORE_CLASSIC_FIREWALL に変更すれば、ネットワーク ファイアウォール ポリシーの FQDN 許可ルールが先に評価され、一致したトラフィックは許可されます(allow は終端アクションのため、その後の VPC ファイアウォール ルールの拒否は評価されません)。一致しないトラフィックは従来どおり VPC ファイアウォール ルールの拒否で止まります。長期的には VPC ファイアウォール ルールをネットワーク ファイアウォール ポリシーへ移行し、ポリシーに一本化するのが推奨です。
【誤りの選択肢】
A:優先度はポリシー(またはルールのグループ)内での順番を決めるもので、VPC ファイアウォール ルールとネットワーク ファイアウォール ポリシーの間の評価順は変わりません。優先度を上げてもポリシーは VPC ファイアウォール ルールの後に評価されるため、拒否は解消されません。
B:優先度を下げても同様に、ポリシーと VPC ファイアウォール ルールの評価順は変わらず、むしろポリシー内で他のルールより後回しになるだけです。
D:AFTER_CLASSIC_FIREWALL は既定値で、まさに現在の状態(VPC ファイアウォール ルールが先に評価され拒否される)です。これに「更新」しても何も変わりません。
【参考】
ファイアウォール ポリシーとルールの評価順序 | Cloud Next Generation Firewall完全修飾ドメイン名オブジェクトの概要 | Cloud Next Generation FirewallFQDN への下り(外向き)トラフィックを許可するグローバル ネットワーク ファイアウォール ポリシーを構成する | Cloud Next Generation Firewall