ドメインとドメイン名の定義
ドメインはそもそも「範囲、領域」といった意味である。
「example.co.jp」を例にすると、
「example」「co」「jp」というドットで区切られた名前空間がドメインで、「example.co.jp」などのように一意であるものがドメイン名。
また「example.co.jp」はFQDN(Fully Qualified Domain Name、完全修飾ドメイン名)と呼ばれる。
正しくは「example.co.jp.」のようにドメイン名には最後に「.」がつく。「example」が第3レベルドメイン、「co」が第2レベルドメイン(SLD、Second Level Domain)、「jp」がTLD、「.」がルートである。
「www.example.co.jp」「test.example.co.jp」はどちらもFQDNであり、「www」「test」が第4レベルドメイン(ホスト名)と呼称される。
「www.example.co.jp」「test.example.co.jp」は「example.co.jp」のサブドメインとも呼ばれる。ドメイン名全体で考えた時には「example」は「co」前の階層のドメインのため、「example」は「co」のサブドメインとも呼べる。
「example.com」などのように「www」などのサブドメインを含まないドメイン名をZONE APEXと呼ぶ。
また、ドメイン名は大文字と小文字を区別しない。
ドメイン名を購入するときに気をつけること
ドメイン名を販売する事業者には、レジストラとリセラの2種類の事業者がある。
レジストラは登録事業者、リセラは再販事業者でレジストラがリセラにドメイン名を卸している。
レジストラからドメイン名が購入できれば、レジストラから購入した方が、倒産によるドメイン名喪失のリスクが低くなる。
また後述するTLD選定の際に、過去に障害が発生していないかなどを確認して信頼性のあるTLDを選択する。
ちなみにドメイン名は購入という表現ではなく、登録という表現を用いるのが正しい(お金を出してレジストリのデータベースに情報を登録することでドメイン名が使えるようになるため)。
DNSの浸透を短くする方法
DNSの浸透に時間がかかっている状態とは、TTLに指定された時間はフルリゾルバにキャッシュが残っている状態のこと。
DNSの浸透を待つ時間を極力短くするために、移行前のIPアドレスのTTL(Time To Live)を事前に短く(300程度)しておいて、当日IPアドレスを書き換えた時にすぐに反映されるようにする。
ただし、実際にはフルリゾルバの実装によっては、名前解決に至るまでのどのネームサーバーのTTLが使用されるか変わってくる。
ドメイン名の生まれ方
レジストリ(登録管理組織、直販はできない)からドメイン名は生まれる。その後レジストラ、リセラに卸され、ユーザーが購入するという流れ。
レジストラ、リセラは仲介事業者で実際に購入するときには、ユーザーは直接レジストリとドメイン名登録契約を結んでいる。
TLD(Top Level Domain)とは
TLDは例えば、「example.com」「example.co.jp」の場合、一番右側の「com」「jp」をTLDと呼ぶ。
ひとつのTLDは必ずひとつのレジストリによって管理される(レジストリは複数のTLDを管理できる)。
ちなみに「com」はVeriSign Global Registry Services、「jp」は株式会社日本レジストリサービス(JPRS)がレジストリ。
「jp」など国ごとのドメインはccTLD(Country Code TLD)と呼ばれる。
ccTLD以外のTLDをgTLD(generic TLD)と呼ぶことが多い。
ドメインの価格について
必ず一意となるようにレジストリがTLDを一元管理し、またネームサーバーに障害が起きないように監視・運用するのがレジストリの役割。
レジストリにはどのような企業でもなれるわけではなく、レジストリになるには大金と政府の推薦など非常に厳しい条件が課せられる。
ドメインの価格はレジストリが決めるが、高い理由は管理体制に差があり、実績があることが理由であることが多い。
ICANN(アイキャン)について
ICANNはレジストリの会社を決めたりなど、IPアドレスやドメイン名などの資源を調整・管理する非営利法人。
プロトコルのポート番号などを決めているのもICANNであり、またルートネームサーバーを管理しているため、全ドメインの生産元ともいえる。
Whoisとは
Whoisはレジストリが提供するサービスで、ドメイン名を所有している組織や個人の氏名・連絡先などの情報を誰でも検索して閲覧できるサービスのこと。
レジストリごとに別々なので、レジストリが所有するTLDを検索してから使用する。
aguse.jpを使うと、どのドメイン名でも検索できるためおすすめ。
公開する理由は使用者同士のトラブルを自律的に解決するため(レジストラに問い合わせがいかないようにするため)。
またICANNがレジストラに対して、最低年一回はWhois情報を最新のものにするよう義務付けており、情報登録をしなかったり虚偽の情報を入力した場合にはドメイン名を抹消される可能性があるため、Whois情報は必ず正しいものを入力する必要がある。
Authコードとは
gTLDドメイン名の不正なドメイン移管を防ぐ目的として、ドメインに割り当てられているコードのこと。
一般にgTLDドメイン名を移管する際には、移管するドメイン名が登録されているレジストラ、リセラからAuthCodeを入手し、それを利用して移管手続きを行う。
HSTS プリロードが設定されたドメイン名
ハッキング対策として SSL 証明書のインストールは必須ですが、万全を期すには HSTS プリロードも使用する必要があります。ウェブサイトに HSTS が設定されていないと、第三者が SSL 証明書を無効にすることができるため、そのウェブサイトのページは(HTTPS ではなく)HTTP 経由で読み込めるようになります。SSL ストリップ攻撃からウェブサイトを保護する最善の方法は、HSTS プリロード ドメイン名を使用すること、または HSTS プリロード リスト(暗号化された接続経由でなければ最新のブラウザに読み込まれないウェブサイトのリスト)にウェブサイトを登録することです。HSTS プリロード リストにウェブサイトを登録する方法は 2 つあります。
https://domains.google/intl/ja_jp/tld/security/
HSTS プリロードリストに登録する最も手っ取り早い方法は、すでにリストに登録されている .app、.dev、.page などで終わるドメインを使用することです。トップレベル ドメイン(TLD)がリストに掲載されているウェブサイトは、HSTS プリロードによって自動的に保護されます。
ウェブサイトの所有者が hstspreload.org の HSTS プリロード リストにウェブサイトを個別に追加することもできますが、このプロセスには時間がかかります。ブラウザが更新されるか新しいリリースが出るまではリストへの更新がブラウザに認識されない可能性があるからです。ウェブサイトを追加したことが最新のすべてのブラウザに認識されるまで数か月かかる場合もあります。
このようにドメインによってはSSLが必須になったりする。
また Google Domains には下記のようなサービスもあるらしい。いつか試したい。
Google Domains で登録したドメインでは、プライバシー保護機能、ワンクリックで適用できる DNSSEC、Google の 2 段階認証を必ず利用でき、追加費用は一切かかりません。サイド プロジェクトを立ち上げる場合でも、ビジネスのオンライン プレゼンスを拡大する場合でも、いくつかの簡単な手順を踏むだけでウェブサイトの保護が強化されます。