はじめに
今回はインターネットの仕組みを知る上で必須な内容であるIPアドレスについて基礎から解説していこうと思います!面白いですよ~!!今後のネットサーフィンが楽しくなること間違いなしです!(←なんか違う)
細かい内容まで全部書こうと思ってるのでもしかしたらちょっと長くなるかも?各々の知りたいところだけを読みのが良いと思います。完璧に知りたい人は全部読んじゃいましょう!
質問などしていただければ回答しますので上の「文句」と書かれたリンクから送ってください!
IPアドレスとは??
じゃまずはWikipediaさまの定義を見てみましょうか。
IPアドレスは、IPでネットワーク上の機器を識別するために指定するネットワーク層における識別用の番号である。
ITの知識がある程度ないとちんぷんかんぷんですね(笑)噛み砕いていきましょう。
IPアドレスは実は32個の0と1の羅列なんです!128個の場合もありますが、それは後で書きます。具体的には以下のようなものです。
役割
IPアドレスは簡単に言うとインターネット上での住所を表しています。
一般的にインターネットで通信を行う際に、通信先の相手を見つけるためにmacアドレスとIPアドレスの2つの住所が用いられます。 macアドレスに関しては別の記事で詳しくまとめようと思うのでここでは簡単に。
macアドレスは同じLAN内での通信をする際に用いられ、IPアドレスは別のLAN内で通信をする際に用いられます。LANというのはコミュニティやグループみたいなものだと思ってください!
言葉では分かりづらいと思うので例を見てみましょ。
これを小さいインターネットだと思ってください(笑)マンション名のあとに書いているのがマンションの住所、mac:A, mac:BというのがAさん、Bさんの部屋番号だと思ってください。
例えばAさんがBさんと連絡取りたいなって考えたときは同じマンションに住んでいるので部屋番号さえ分かれば連絡を取ることができます。しかし、AさんがGさんと連絡取りたくなったとしましょう。このとき部屋番号の他にマンションYの住所を知ることで初めて通信することができます。
その住所の特定のためにIPアドレスが利用されます。つまり同じLAN(マンション)内での通信はmacアドレスのみで可能ですが、別のLANとの通信はmacアドレスに加えてIPアドレスが必要となります。(ちょっとはイメージ湧いたかな??)
私達が実際にインターネットでWEBサイトを閲覧するときで考えてみましょう。このときの流れは
- URLから宛先IPアドレスを知る。(DNSってやつを利用)
- 宛先IPアドレスが同じLANにいるかどうかを判断する。(インターネットやSNSをする際は基本的には同じLANにはいないです!)
- 他のLANの場合、ルータからインターネットへ出ていき、インターネット上のルーティング(地図)に従って宛先IPアドレスまで到達
- 自分が閲覧したい記事がほしい!とリクエスト
的な流れです。だいぶ省略しましたが、この流れについても別の記事に書きたいと思います。
これがIPアドレスの主な役割ですね~!通信相手のインターネット上の大まかな住所を表していると理解してください!
サブネットマスク
ここからもうちょっとややこしくなります(笑)
IPアドレスは32桁の0と1で表すと言いましたが、さらに前半と後半の2つに分けることができます。その前半をネットワーク部、後半をホスト部と呼びます。どこで分けるかを表すためにIPアドレスを次のように表記します。

種類
種類をクラスで分けるか、用途の違いで分けるかの2種類あるんですね~。
クラス
まずはクラスによる分類から。分類の仕方はめっちゃ簡単ですよ~!
クラスA
0から始まるIPアドレスのことです。つまり範囲は0.0.0.0から127.255.255.255の間になります。クラスAのIPアドレスはプレフィックス長が8と決まっています。まぁプレフィックス長が8のIPアドレスもどうせさらに細分化されて16だったり、24だったりになるわけですが(笑)
クラスB
10から始まるIPアドレスです。範囲は128.0.0.0から191.255.255.255となります。そしてプレフィックス長は16と決まっています。
クラスC
110から始まるIPアドレスです。範囲は192.0.0.0から223.255.255.255となります。そしてプレフィックス長は24と決まっています。
クラスD
ここから少し特殊なIPアドレスで、1110から始まります。プレフィックス長などは決まっていませんが、これは以下で説明するマルチキャスト通信に使用されます。
クラスE
1111で始まるIPアドレスです。これは一般的に使われません。今後なにかに使うためにおいているみたいですね。もしこれから使われるとしたらなにか画期的なことに使われそうな予感‥
用途
次は用途です。上で説明したクラスとも関わってきます。
グローバルIPアドレス
下で説明するプライベートIPアドレスとリンクローカルアドレス以外のクラスA,B,CのIPアドレスは全てグローバルIPアドレスとなります。プライベートIPアドレスが特殊なだけでグローバルIPアドレスは一般的にイメージするIPアドレスなので説明は必要ないと思います(笑)普通のWEBサイトの閲覧とかに使われるIPアドレスだと思ってください!
プライベートIPアドレス
特殊なやつです。しかし3種類だけしかありません。以下の3つです。
さぁこいつらは何に使用されるのでしょうか!後にも解説しますが、IPアドレスってのは実は枯渇してるのです。IPアドレスは32桁なので全部通信に使用しても\(2^{32} = 4294967296\)個しかないんですね。一見十分多そうには見えますが42億って70億人の人が1人スマホを持ったら足りなくなるわけです。ましてや企業なんて人の数以上に機器持ってたりしますからね。
そこでやべぇな~って思った人々が1996年のプライベートIPアドレスってのを作りました。これが結構画期的!それまではIPアドレスは常に一意で被っちゃいけないのが当然でした。でも企業のネットワークみたいに閉ざされた空間では決まったIPアドレスを使っていいんじゃね?って考え始めました。
例えばPanasonicの企業内でのPCとTOYOTAの企業内でのPCが同じIPアドレス、192.168.1.1を使用していたとしましょう。
イメージはこんな感じです。このときアドレスが被っちゃてるから良くないんじゃないの??と思うかもしれませんが、これが大丈夫なんです。Panasonic内部のPCが外部と通信するとき、NATやNAPTという技術を用いて192.168.1.1というプライベートIPアドレスから例えば1.1.1.1のようなグローバルIPアドレスに変換して通信を行います。グローバルIPアドレスは一意に割り振られているのでちゃんと通信できるんですね。
ちなみに外部のPCからPanasonicのPC、192.168.1.1にアクセスすることは基本的にはできません。だってTOYOTAのPCも同じアドレスを使っているのだからどちらに送ればいいの~~ってなりますからね。社内のPCがプライベートだからこそこのプライベートIPアドレスを使用することができるんですね~。
現在ではほとんどの会社のPCはプライベートIPアドレスが割り当てられています。なぜなら先ほどチラッと言ったとおり、グローバルIPアドレスを使用するのにはお金がかかり、プレフィックス長が短いほど値段は高くなります。そのため、全PCにグローバルIPアドレスを割り当てるより、プライベートIPアドレスを使用した方が費用的にも安くなるんですね。
ちなみに身近なところで言うとWi-FiでもプライベートIPアドレスが使用されています。iPhoneとかPCとかで確認してみてください!
あとプライベートIPアドレスに変換することにより、各PCのIPアドレスがバレることも防ぎます。通信相手が知るのは変換された後のグローバルIPアドレスだからです。こういった点からセキュリティ面でも安全であると言えるでしょう。
マルチキャストアドレス
名前の通りですが、複数の機器に同時にデータを送るマルチキャスト通信に使用されるアドレスです。先ほど説明した通りクラスDのアドレスで、範囲は224.0.0.0.0から239.255.255.255と決まっています。
一人一人データを送信するよりも一気に送った方がネットワークの負荷がかからないため良いってわけですね。複数人でのビデオ会議とかの通信などで使われています。
その他にも実はルーティングプロトコルなどでも使われているのです。ルーティングプロトコルではルータ同士が頻繁に通信を行うのですが、その際に他のルータに対して一気に送信するんです。(ルーティングプロトコルはそれだけで別に記事を書くことができるから余裕あれば書こう…)
他にはFSRPと呼ばれるデフォルトゲートウェイを冗長化するプロトコルでも使用されます。具体的には以下のアドレスが使用されます。
- ルーティングプロトコル
- RIP version1…255.255.255.255(全機器に送信)
- RIP version2…224.0.0.9
- OSPF…224.0.0.5と224.0.0.6
- EIGRP…224.0.0.10
- FSRP
- HSRP…224.0.0.2
- VRRP…224.0.0.18
- GLBP…224.0.0.102
リンクローカルアドレス
これはあんまり使用されません(笑)
DHCPでIPアドレスを取得できなかったときにとりあえず同じセグメント内で他のIPアドレスと被らないように割り当てられるIPアドレスです。割り当てられる範囲は決まっており、
が予約されています。Wi-Fi繋がってるんだけどなんかネットワークには接続できていないな~って時にIPアドレスを確認してみてください。この範囲のIPアドレスになっていると思います!
同じセグメント内でIPアドレスが被らないという点でプライベートIPアドレスと少し似ているのですが、外部への通信はできないので正直使う必要はないです…
IPアドレスを持つ機器
ところでIPアドレスってどんな機器が持つんだろうって思いませんか?
パソコンはもちろん持ちます。強いパソコンであるサーバも持ちます。身近なところだと、今後IoT化が進むとエアコン、冷蔵庫などのネットワークに接続する電化製品もIPアドレスを持ちます。
あとはネットワークを構築するルータやL3スイッチなどはポートが24個だったり、48個あったりするのですが、ポートごとにIPアドレスを割り当てることができます。1つの機器で48個のIPアドレスを持つなんて贅沢ですね~。(適当)
枯渇問題
先ほど言ったとおり、IPアドレスは枯渇しています!ヤバいんです!!と言われてるけど実際はあんまりヤバくないんです。
それは先ほど言ったよなプライベートIPアドレスやNAPTが活躍しているからです。NAPTというのは複数のプライベートIPアドレスを持った機器の通信を1つのグローバルIPアドレスで行う技術です。おかげさまでさらに必要なグローバルIPアドレスの数が減っているわけです。
しかし同時に別の解決方法も提案されました。それは根本的にIPアドレスの数を増やすというものです。それがIPv6です!!!これはなんと0と1が128桁で構成されます。これについては別の記事で詳しく書きたいと思います。
これまで使ってきたIPv4は少し設計が下手なんですね。IPv6はIPv4での反省を活かしてとても良い設計になっています。IPv4とかなり違う部分もあるので覚えるのがめんどくさいですが(笑)
だからゆくゆくはIPv6に移行していくべきでしょうね。しかし、移行には費用がかかるためあまり進んでおらず、未だにIPv4が主に用いられています。ま、今後に期待ですね!!!
おわりに
ざーーーーっとIPアドレスについて深くまとめて見ました!次はIPv6かmacアドレスの記事書きます~!
コメント
とても分かりやすかったです!ありがとうございます。
図の話なのですが、2丁目のネットワークアドレスは192.160.2.0ではないでしょうか?
ご確認お願いします!
すみせん、上のコメントのアドレスタイポしてました
192.168.2.0
です!
ご指摘ありがとうございます!!そのとおりです。
すぐに修正しますね、、、(笑)
めちゃめちゃわかりやすかったです!
ありがとうございます!
コメントいただき、とても嬉しいです!