BLOG

社員ブログ - 仕事から たわいの無い話まで ざっくばらんにご紹介します。

2017/01/30

【勉強会】IPアドレス、ホスト名、ドメインを正しく説明できますか?

【勉強会】IPアドレス、ホスト名、ドメインを正しく説明できますか?

社内では勉強会を定期的に開催しておりますが。
せっかくですので、勉強会で行った内容をまとめ、ご紹介したいと思います。

IPアドレス

IPネットワーク(インターネットやイントラネット)上で通信を行うためには、IPアドレスという住所が必要です。
住所が分からないと、行先いを特定できない為です。

IPアドレスは、通信を行う機器全てに必ず1つ以上割り振られています。
IPアドレスには、現在IPv4とIPv6の2つが混在しています(バージョン4とバージョン6)。
ここでは説明を簡単にするため、IPv4で説明します。

IPアドレスの例

182.22.59.229

↑ YAHOO! JAPANウェブサイトのIPアドレスです。

0~255で示される、4つの数字を「.」で区切った文字列がIPアドレスです。
このIPアドレスでのみ、インターネットをはじめとするIPネットワークは、通信相手を特定する事が出来ます。

IPアドレスとホスト名

上で示した通り、IPアドレスは数字の羅列なので人間にとって分かりにくいものです。
そのため、通信先をIPアドレスではなく英数字で「www.yahoo.co.jp」というように名前で表そう、という事になりました。
これが「ホスト名」です。

しかしながら(繰り返しますが)、IPネットワークではIPアドレスでしか通信相手を特定できません
そこで、ホスト名からIPアドレスを変換するという作業が必要となるわけです。

この「ホスト名からIPアドレス」の変換のために使われる情報が、「hostsファイル」です。
Linuxであれば「/etc/hosts」ファイル。
Windowsであれば「C:\Windows\system32\drivers\etc\hosts」がそれです。
一度は見聞きした事ありませんか?

上のYAHOO! JAPANウェブサイトだとこのようなhostsファイルが出来るはずです。

182.22.59.229 www.yahoo.co.jp
182.22.59.229 yahoo.co.jp

IPアドレスとホスト名の管理

IPネットワークが出来た当初は、こういったファイルを皆で作成、管理しあうという事を行っていました。
※本当にファイルをコピーしあっていました。
 通信機器(ホスト)が追加されたら、hostsファイルを書き換えて、そのファイルを全員に配布していました。
 そのため、UUCP(Unix to Unix Copy Protocol)という通信手順が作られたり、独自の配布方法を考案したりと・・皆頑張っていました。

しかし、インターネットをはじめとするIPネットワークの利用者が増えてくると、こういった管理は段々難しくなってきます
配布先が膨大になりますし、ホスト名を各々が勝手に決める事が出来てしまうので、ホスト名が重複する、事も起き始めてきました。

ドメインの発明

そこで偉い人達は考えました。
そして、膨大に増えたホスト名を、うまく管理するための概念「ドメイン」を発明したのです。

まず、ホスト名を次のような名前で管理するように決めました。

www.yahoo.co.jp

ホスト名を途中「.」で区切り、ホスト名を管理する範囲(つまりこれが「ドメイン」です)を明示出来る様にしたのです。

そして、

①範囲(ドメイン)単位でホストを管理して下さい(*1)
②ドメインを管理する人を決めてください(*1)
③ドメイン配下にドメインがあるのであれば、配下(1つ下)のドメインを管理する人(*1)を知っておいて下さい

というルールを作ったのです。

*1 管理する人とは、実在する人や組織、そしてネームサーバの事です

www.yahoo.co.jp というホスト名は

①yahoo.co.jp という範囲(ドメイン)内で、「www」というホスト名とIPアドレスを管理して下さい
②yahoo.co.jp というドメインを管理する人を決めてください

という事を行う前提で名前付けされたものなのです。

co.jp はドメインです

co.jp ドメインには、配下のyahoo.co.jpドメインがあります。しかしながらホストは持っていないようです。
つまり

②co.jpドメインを管理する人を決めてください
③配下にいる yahoo.co.jpドメインの管理者を知っておいてください。

というルールのもと、co.jpドメインは運営されているわけです。

jp もドメインです

jpドメイン管理者は、配下に「co.jp」ドメインがあります。こちらもホストは持っていないようなので

②jpドメインを管理する人を決めてください
②配下にいる co.jpドメインの管理者を知っておいてください。

というルールのもと、jpドメインは運営されております。

なお、jpドメインのように最上位に位置するドメインを「トップレベルドメイン」と呼びます。

ドメインは階層化されている

・yahoo.co.jp ドメインは、co.jp ドメイン配下です。
・co.jp ドメインは jp ドメイン配下です。

このように、ドメインは階層化されていると言うことができます。
この階層の上下関係を示すための言葉として、配下のドメインを「サブドメイン」と呼ぶようになっています。

委譲

co.jpドメインや jpドメインは、配下のドメインまでは管理しますが、「www.yahoo.co.jp」 というようなホスト名がどのIPアドレスになるのかまでは知りません。
配下のドメインで管理しているホストは、配下のドメイン管理者だけで管理しなさい、というように管理権限を「委譲」しているのです。

この概念はとても重要です。

なぜなら、ホスト名とIPアドレスの管理を配下のサブドメインに委譲することで、管理の負荷を分散させることが実現出来たからです。

IPアドレスとホスト名の関係で話しました、「利用者が増える事により管理が難しくなる問題」が解決出来たわけです。
本当に世の中には頭のいい人がいるものです。

なお、この仕組みは「DNS(Domain Name System)」と呼ばれております。
よく聞く名前ですよね。

ドメイン名とホスト名の関係

yahoo.co.jpというドメインがあります。

このドメイン管理者が、「yahoo.co.jp」というホスト名とIPアドレスを登録すれば、それはドメイン名でもありホスト名でもあります。

このドメイン管理者が、「www.yahoo.co.jp」というホスト名とIPアドレスを登録し、www.yahoo.co.jpというサブドメインを作らなければ、それはホスト名です。

このドメイン管理者が、「mail.yahoo.co.jp」というサブドメインを登録した場合(サブドメインの管理者を立てた場合)。

 「mail.yahoo.co.jp」というサブドメイン管理者が「mail.yahoo.co.jp」というホスト名とIPアドレスを登録すれば、それはドメイン名でもありホスト名でもあります。

 「mail.yahoo.co.jp」というサブドメイン管理者が「mail.yahoo.co.jp」というホスト名を登録しなかったら、それはドメイン名でしかありません。

この関係から、ホスト名は
 

ホスト名 =(ローカルホスト名.)ドメイン名

と定義付けする事が出来ます。

※実際のところ、ホスト名とIPアドレスの紐付けを

  ローカルホスト名 IPアドレス
  www 182.22.59.229  ← www.yahoo.co.jp というホスト名と、IPアドレスを定義しています
  . 182.22.59.229  ← yahoo.co.jp というホスト名と、IPアドレスを定義しています

 というかたちで登録しているため、このように「ローカルホスト名」という呼び方が必要となるのです。

ここで時間切れとなりました

次回勉強会では、DNSの動きについて、実例を交え説明していきたいと思います。

OUR MISSION

私たちの仕事に対する思想・姿勢

「ITで人を豊かにする」

ITで人を豊かにするという信念のもと、日々新たな製品・サービスを開発・ご提供しております。最後まで誠意をもって取り組んで成果を出す。ご縁を頂いたお客様に安心と満足をご提供出来る様、誠心誠意取り組んで参ります。

CONTACT

お問い合わせはこちらから。

pageTop