Cloud DNSをプロジェクト間で移行するときに困った話

記事タイトルとURLをコピーする

杉村です。 Google Cloud (GCP) のマネージドな DNS サービスである Cloud DNS で、先日困ったことが発生しました。
同じことが起きたときに誰かの助けになるよう、顛末と解決法を記載します。

やりたかったこと

お名前ドットコムでとあるドメイン名を取得しました。
このドメイン名の DNS 管理を Cloud DNS に移譲しました。
このドメイン名を仮に example.com とします。

DNS 管理を移譲するためまず Cloud DNS でパブリックゾーン example.com を作成しました。
NS レコードが発行され、この NS レコードをお名前ドットコムに登録することで、 example.com の DNS レコードを Cloud DNS のパブリックゾーンで管理することができます。

ある日、とある理由からこのパブリックゾーンを別の Google Cloud (GCP) プロジェクトに移動する必要性が出てきてしまいました。
当初考えた移行方法は、以下の通りです。

  1. 移行先プロジェクトにパブリックゾーン example.com を作成する
  2. 移行元ゾーンから gcloud コマンドによりレコードの内容を エクスポート し、移行先ゾーンに インポート する
  3. お名前ドットコム側に、移行先ゾーンの新しい NS レコードを登録する

エラーメッセージ

しかしながら、先ほどの手順 1. で移行先プロジェクトにパブリックゾーンを作成しようとしたところ、以下のようなエラーメッセージが出てしまいました。

http://www.google.com/webmasters/verification/ で「(ドメイン名)」ドメイン(または親)の所有権を確認してから、もう一度お試しください

f:id:ggen-sugimura:20211107103444p:plain
エラーメッセージ

このエラーですが、以下のような条件のときに出てしまうようです。

  1. 既に Cloud DNS あるいは Google Domains でドメイン名の DNS を管理している
  2. この状態で、 Cloud DNS にそのドメイン名のパブリックゾーンを作成する

うっかり英語版のエラーメッセージを取ることを失念していたのですが、 この公式ドキュメントに記載されている Verify ownership of the example.com domain (or a parent), and then try again. に該当しているようです。

解決方法

このエラーメッセージは、ドメイン名の悪用を防止するために Google の DNS で既に管理中のドメイン名について、パブリックゾーンが作成されたときに Google 側がドメインの所有権を確認するために出すメッセージです。

エラーメッセージにある http://www.google.com/webmasters/verification/ にアクセスし Google の ウェブマスター セントラル にてドメイン名を登録します。
ウェブマスター セントラル は Google 検索結果の順位の監視、管理、改善などのために Google によって提供されている Google Search Consoleの一部です。

f:id:ggen-sugimura:20211107105532p:plain
ウェブマスターセントラル

プロパティを追加 を押下してドメイン名の登録を進めます。
ドメインの所有権の確認には、 Google の指定する HTML ファイルを同ドメインを持つウェブサイトにアップロードするなどの方法もありますが、ドメインのゾーンに TXT レコードや CNAME レコードを追加する方法が選択できます。

f:id:ggen-sugimura:20211107105912p:plain
ドメイン名の所有権の確認

なお今回は当該ドメインで Google Workspace を利用しておりネイキッドドメインでの TXT レコードが既に登録されていました。
そのため、 CNAME を追加することでドメイン名の確認を行いました。

スクリーンショットは 2021 年 11 月現在のものですが、以下の方法で追加すべき CNAME レコードを発行することができました。

その他の方法 > ドメイン名プロバイダ > プルダウンメニューから Google Domains を選択 > 下部の CNAME レコードを追加する を押下

指示された CNAME レコードを移行元ゾーンに登録して所有権を確認したところ、以降は移行先プロジェクトに同じドメイン名でパブリックゾーンを作成し、 DNS を移行することができました。

注意点

一連の作業は、同じ作業者の Google アカウントで実施する必要があります。
ドメイン名の所有権の確認は Google アカウントに紐付いているようですので、所有権を確認された Google アカウントでゾーンの作成等を行う必要があります。

杉村 勇馬 (記事一覧)

クラウドソリューション部 部長

クラウド管理運用やネットワークに知見あり。AWSの全12資格をコンプリートしたので、次はGoogle Cloudの認定資格を狙っている。現在、Google Cloud認定資格は3冠。

2021年12月現在、ハマっているものはマーベル (遅い)