Google Domains で .dev ドメイン取得
購入
Googleが .dev ドメインを開放していくつかのレジストラで取得できるようになったらしいですが、とりあえず一番安そうな Google Domainsで取ってみました。 初日ほど混んでなくて普通にドメイン検索できました。
まずは、
で、hogehoge.dev とかなんとか検索すると値段が出ます。 メジャーじゃない名前やで4文字以上ならだいたい1,400円/年で出てくるようです。 有名な人や企業、地名の名前や辞書に載っているような単語は結構高いものもあるようです。 (ちなみにhogehoge.devはUnavailableでした)
気に入ればカートに入れて購入します。 デフォルトで自動更新になっているようです。(とりあえず自動更新にしておきました)
購入に進むと、名前と住所などを入れるフォームが出てきます。 とりあえず日本語はやめておいて英語っぽく半角英数で入れておきました。
次に進むと、Google Payで支払うかと聞いてきます。 どうやらブラウザでログインしていたGoogleアカウントと自動的に紐づけたようです。 ここでポチッと押すとメールが飛んできて、メールの中の「メールアドレスを確認」を押せば購入完了です。
そういえばドメインを買うときは英語しかなさそうでしたけど、買った後でGoogle Domainsにログインして管理するところは右下の言語設定を日本語にすると切り替わりました。
最初開くと日本語になってるけど、あえて日本語をもう一度選んでから保存すると切り替わりましたw
名前解決
もともとGCEの無料インスタンスで遊んでいたついでに.devドメインの事を思い出したので、名前解決ができるようにします。
固定IP設定
普通にGCEのインスタンスを作成すると外部IPがエフェメラルになってます。
まずは固定IPにしちゃいます。
手順は、
です。
これで名前をつければ外向けの固定IPが確保できます。
ネットワークサービス階層
プレミアム (現在のプロジェクトレベル階層、変更)
標準
という選択肢があるのですが、無料でやりたいがゆえに標準にしてしまうと割り当てるインスタンスと階層が違うとかなんとか言われてうまくいきません。
とりあえずプレミアムでいいっぽいです。
私は一度消して作り直しました。
作成した固定IPが外部IPに出ていればおけ。
外部IPを予約して使わないと課金されるのでいらなくなったら消すのを忘れずに。
だいぶ昔の記憶ですがAWSもそんな感じでしたね。
DNS設定
ドメインもIPも準備できたら名前解決しよう。
Google DomainsでもCloud DNSでも出来そうですが、今回はCloud DNSでやりました。(なんとなく)
- Cloud DNSでドメインの設定
GCPのメニューから、ネットワーキング > ネットワークサービス > Cloud DNSを選択。
ゾーンの作成からソーン名と自分が取ったドメイン名を入れます。
DNSSECはデフォルトオフだったのでそのまま。(よく知らないのでちゃんと調べてからでもいいかな)
これでNSレコードができます。
4つのDNSサーバが登録されているので控えておきます。
- Google Domainsの設定
Google Domainsにログインすると管理画面に入れます。
ドメインを選ぶと右のメニューにDNSとあるのでここを開いて、ネームサーバーの設定をします。
デフォルトでGoogleのネームサーバが設定されているのですが↑で作ったNSレコードのサーバと違うので、カスタムネームサーバーを使用するにして登録します。(同じならもちろん何もする必要ないですけど) - サブドメインの設定
Cloud DNSに戻って、ゾーン > 作ったゾーンを選択 > ゾーンの詳細 > レコードセットを追加 します。
ドメイン名でAレコード作ります。
DNS名:example.dev
リソースレコードのタイプ:A
IPv4アドレス:先程作った固定IP
にします。TTLはデフォルトの5分のまま作りましたが、落ち着いたら伸ばしておけばよいかも。
後はとりあえずwwwだけ登録。
DNS名:www.example.dev
リソースレコードのタイプ:CNAME
正規名:example.dev
です。 - 確認
TTL 5分なので、5分たったら確認です。
自分のMacで
$ dig www.example.dev ;; ANSWER SECTION: www.example.dev. 300 IN CNAME example.dev. example.dev. 300 IN A xx.xx.xx.xx
おー、引けてる!
こりゃ簡単だ〜。
bindのコンパイルからやってた時代にとあるコミュニティのサーバ管理やってたけど隔世の感あるなぁ。
クラウド素晴らしい。
あとは
SSHを別ポートであげるのはやった。
devドメインはhttpsじゃないといけないので証明書を設定しなきゃだけど、Google-managed SSL certificateってものがあって中身はLet's Encriptらしい。
ロードバランサー(負荷分散)から登録するということらしいのでまだ試してないが無料の範囲でできるならやってみようかな。それともLet's Encriptを自動更新するようにしたほうがいいか。
まあ、また時間が取れたら考えよ。