[Network] ドメインについての学習

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

何気なく使っているインターネットのURLですが、ネットワークについての理解をする上でドメインという要素は欠かせませんが、意外と難しいドメインについて調べてみました。

ドメインて何?

ネットで調べてみると「アドレス(住所)」のようなものという風に出てくると思うが、ドメインという言葉には以下の様な種類もある。
http://d.hatena.ne.jp/keyword/%A5%C9%A5%E1%A5%A4%A5%F3

パブリックドメイン:知的財産権が発生していない状態又は消滅した状態
https://ja.wikipedia.org/wiki/%E3%83%91%E3%83%96%E3%83%AA%E3%83%83%E3%82%AF%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3

切り離せないIPアドレス

基本的にインターネットはIPアドレスの集合体です。
だけど数字だけのアドレスでは分かりにくいという事もあり、ドメインが登場しました。
基本的にドメインはIPアドレスの置き換え文字なのですね。
昔から脆弱性と指摘されていたhostsというファイルがWindowsもMacもLinuxもどのOSにも存在します。
これは、個別のOSでドメインとIPアドレスを結びつける役割をしているのですが、本来この役割はDNSが行うため、あまり個別にはいじくらないほうが賢明です。
ネットワークに詳しい方であれば、手を入れても問題ないのですが・・・

ドメインを詳しく調査

一般的にドメインというものは、細かく分類されることをご存知だろうか?

http://www.google.com/

というURLアドレスがある場合、

www.google.com

の部分を「ドメイン」と呼ばれる事があるが、正確には以下の様な分類で且つ呼び名が違う事を覚えておこう。


www(第3ドメイン)
google(第2ドメイン)
com(第1ドメイン:トップレベルドメイン)

少し違うドメインでも確認してみます。

www.google.co.jp


www(第4ドメイン)
google(第3ドメイン)
co(第2ドメイン)
jp(第1ドメイン:トップレベルドメイン)

ここまではそんなに難しい話ではないですね。

ネイティブドメインとサブドメイン

www.google.comで考えてみましょう。

ネイティブドメイン

google.com

サブドメイン

www

サブドメインは無限大

ドメインは登録所で有料で取得しなければいけないのですが、サブドメインはDNS管理者であれば、任意に何でも登録できます。
ただし、ドメイン全体で使える文字列というのがあり、これに注意しないといけません。

【使える文字列】

半角英数字(大文字小文字)と「-」(ハイフン)のみです。
サブドメインには「.」(ピリオド)も使用できます。

ネイティブドメインの難点

javascriptでドメインを取得するには、

とすることでサブドメインを含めたドメイン全体が取得できますが、ネイティブドメインのみを判定しようとするとこれが大変。
“.”区切りで分割して行おうとしても、「co」と「jp」と「co.jp」を区別する方法が非常に難しかったり、サブドメインに「.」(ピリオド)が使えてしまうので、これも分割方式だととても難しいという事がわかります。
現時点では、ネイティブドメインを柔軟に取り出す事は難しく、.comや.co.jpなどのドメイン部分をデータで持っていればできるかと思ったんですが、日々ドメインの種類も増えているという事もわかったので、無駄なことは止めにすることにしました。

ドメイン情報の取得

Macであればターミナルで以下のようにコマンドを打ち込む事で、情報を取得できます。

でも、jpドメインであれば上記のように表示されますが、.comドメインは表示されないこともあるようです。

しかし、コマンドが使えなくても、whoisを表示してくれるwebサービスもあります。
https://www.cman.jp/network/support/ip.html

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です