【図解/初心者向け】IPアドレスの仕組みと種類 ~クラス, グローバルとプライベート, 例示用など特殊用途~ | SEの道標
IP

【図解/初心者向け】IPアドレスの仕組みと種類 ~クラス, グローバルとプライベート, 例示用など特殊用途~

IP アドレスとは

IP アドレスとは、ネットワーク通信する上での住所のことです。

例えば端末 A が端末 B に通信したいときは、端末 A は [送信元=端末 A の IP アドレス, 宛先=端末 B の IP アドレス] という情報を付け加えて通信します。

ルータ等の NW 機器は宛先である端末 B の IP アドレスを見て、通信経路を決定していき、やがて端末 B に辿り着きます。

これらの経路決定プロセスをルーティングと言います。

端末 B が端末 A に返信したい場合は同じように [送信元=端末 B の IP アドレス, 宛先=端末 A の IP アドレス] という情報を付け加えて通信します。

今や IP はインターネットで利用されている、世界標準の通信方法です。インターネット通信をする端末は、必ず IP アドレスが割り振られています。

IP アドレスは 32 bit で構成され、8 bit ずつ 10 進数に変換し、.(ドット) で区切られて表現されます。

以下に、192.168.1.1 という IP アドレスを持つ端末 A と、10.2.3.4 という IP アドレスを持つ端末 B との通信の例を示します。

IP アドレスの範囲別用途

IP アドレスの範囲は 0.0.0.0 から 255.255.255.255 までですが、範囲によって用途が定められています。具体的には以下です。

IPアドレス帯割り当て用途
0.0.0.0~0.255.255.255予約デフォルトルートの表示等
1.0.0.0~126.255.255.255クラスA一般的なユニキャスト通信
127.0.0.0~127.255.255.255ループバックホストが自身宛への通信時に利用
(DNSサーバとして自らを指定する
場合等で利用)
128.0.0.0~191.254.255.255クラスB一般的なユニキャスト通信
191.255.0.0~191.255.255.255予約未定
192.0.0.0~223.255.254.255クラスC一般的なユニキャスト通信
223.255.255.0~223.255.255.255予約未定
224.0.0.0~239.255.255.255クラスDマルチキャスト通信
240.0.0.0~255.255.255.255クラスE予約 (実験用や、
ブロードキャストアドレス等)

ネットワークアドレスとは

IP アドレスはネットワーク部とホスト部に分けることができ、ネットワーク部を表現したアドレスを特にネットワークアドレスと呼びます。

例えば、192.168.1.254 というアドレスがあるとき、ネットワーク部を先頭から 24 bit としたとき、ネットワークアドレスは 192.168.1.0 となります。

なお、このネットワークアドレスは、端末に IP アドレスとして設定することはできません。

ネットワークアドレスを別名でネットワークセグメント、もしくは単にセグメントと呼ぶこともあります。

同一ネットワークセグメント内のホスト同士は、ハブや L2 スイッチだけで通信ができ、 異なるネットワークセグメントのホスト同士は、ルータや L3 スイッチにより通信ができるようになります。

詳細は以下をご参照下さい。

【図解】ルーティングの流れ ~同一セグメント内通信とデフォルトゲートウェイによる別セグメント間通信
今日の IP 通信は Ethernet がベースになっていることが多いので、この...

先の例ではネットワーク部を先頭から「24 bit」と仮定しましたが、何 bit にするか、というのは決め方が 2 つあります。

1 つはクラスフルという考え方によるもの、もう 1 つはサブネットマスクという考え方によるものです。

クラスフル (今は使われていない方式)

クラスフルとは、IP アドレスの範囲によってネットワーク部の bit 数が決まる、というものです。

具体的には以下の通りです。

クラスAの範囲 = 1.0.0.0~126.255.255.255

クラスAにおいては、先頭 8 bit がネットワーク部となります。例えば 10.2.3.4 という IP アドレスであれば、ネットワークアドレスは 10.0.0.0 になります。

クラスBの範囲 = 128.0.0.0~191.254.255.255

クラスBにおいては、先頭 16 bit がネットワーク部となります。例えば 172.20.30.40 という IP アドレスであれば、ネットワークアドレスは 172.20.0.0 になります。

クラスCの範囲 = 192.0.0.0~223.255.254.255

クラスCにおいては、先頭 24 bit がネットワーク部となります。例えば 192.168.33.44 という IP アドレスであれば、ネットワークアドレスは 192.168.33.0 になります。

サブネットマスク (現在使われている方式)

クラスフルという考え方は今はほぼ使われていません。理由としては、IP アドレスの枯渇により、効率的な割り当てが出来なくなっているためです。

特にクラスAでは理論上ではホスト部が 2 の 24 乗≒ 1600 万台の端末の配置が可能ですが、現実的にそのような構成は不可能です。

それよりも色々なネットワークアドレスに 256 台程度の端末を置くくらいがちょうどよいのです。

そこで、クラスという概念を取り外し、全ての IP アドレスでネットワーク部を自由に決められるようにしました

それがサブネットマスクです。

また、この考え方をクラスレスと言います。

例えば "1.1.1.1/28" という表記があった場合、"1.1.1.1" が IP アドレスを意味し、"/28"というのが『先頭 28 bit がネットワーク部である』ことを示したサブネットマスクを意味します。

なお、 "192.168.0.0/16" という、クラスフルにおいては 24 bit であったネットワーク部が 16 bit に減るような場合、"/16"をスーパーネットマスクとも言いますが、押し並べてサブネットマスク、と呼ぶことが多いです。

このクラスレスによるルーティングサポートを CIDR (サイダー:Classless InterDomain Routing) と呼び、元々 CIDR をサポートしていなかったルーティングプロトコル (RIPv1等) が CIDR を制限付きでサポートする方式を FLSM (Fixed Length Subnet Mask) と呼びます。

また、FLSM の制限に打ち勝つために作られた CIDR をフルサポートするルーティングプロトコル (RIPv2 や OSPF、EIGRP、BGP 等) が扱う方式を VLSM (Variable Length Subnet Mask) と呼びます。

この辺りは分かりにくい解説が多いですが、以下の記事に分かり易い説明を詳しく載せています。

【絶対分かる!】CIDR/VLSM/FLSMの違い、classful/classlessの違い、RIPv1/v2の違い ~サブネットマスクの進化~
クラスフル時代の問題とCIDRの登場 クラスフルアドレスの時代はサブネットマスク...
たまに、サブネットが /16 であることを総じて『クラス B』と呼ぶ人がいますが、これは誤りです。クラス B というのはあくまで「128.0.0.0~191.254.255.255」のアドレス帯のことを指します。

ブロードキャストアドレスとは

ネットワーク部の一番最初の IP アドレスをネットワークアドレスと呼ぶ、ということを理解して頂いたと思いますが、逆にネットワーク部の一番最後の IP アドレスブロードキャストアドレスと呼びます。

このブロードキャストアドレスを宛先としたパケットは、スイッチが受信すると複製し、全てのポートから送信します。

つまり、同セグメント内の全ての端末やルータに放送 (ブロードキャスト) するわけです。

ネットワークアドレスと同様に、このブロードキャストアドレスも端末にIPアドレスとして設定することはできません

プライベートIPアドレス

IP ネットワークにおいて通信を行うホストには、その NW 網において一意な IP アドレスが割り当たっている必要があります。

インターネットという世界中を接続した IP ネットワークにおいては、全ての機器に一意の IP アドレスを割り当てるには IP アドレスが足りない状態です。

そこで現在は、会社等の単位で利用するプライベート IP アドレスを使うのが一般的です。

ただし、プライベート IP ではインターネットへの接続ができないため、インターネットに出るときだけ NAPT (PAT) を使う構成が一般的です。

プライベート IP アドレスは、会社などの IP ネットワーク網で使われ、他の会社と同じ(一意でない)アドレスで構いません。

プライベート IP アドレスは以下のアドレス帯です。

  • 10.0.0.0 ~ 10.255.255.255 = 10.0.0.0/8
  • 172.16.0.0 ~ 172.31.255.255 = 172.16.0.0/12
  • 192.168.0.0 ~ 192.168.255.255 = 192.168.0.0/16

また、プライベート IP アドレス同士の通信をインターネット越しで実現するには、インターネット VPN という技術が必要になります。

前述の通り、プライベート IP アドレスではインターネット上で経路を一意に定めることができず、ルーティングができないからです。

特殊なアドレス帯

例示用グローバルIPアドレス

以下のアドレス帯は各メーカのコンフィグガイド等の例示用で使えるグローバルアドレス帯として予約されています。(実通信では使われないことになっています)

  • 192.0.2.0/24
  • 198.51.100.0/24
  • 203.0.113.0/24

リンクローカルアドレス

169.254.0.0/16 のアドレス帯は IP 自動取得にしているにも関わらず DHCP から IP 取得ができない場合に自動生成される IP アドレス帯です。下位 16 bit は MAC アドレスから一意に生成されるのが一般的です。また、最近は Amazon AWS での接続にもこのアドレス帯が流用されているようです。

【図解】IPv4/IPv6のリンクローカルアドレスの使い方~ユニークローカルとの違い,ルーティング,中間セグメントとの関係
リンクローカルアドレスとは Ethernet 等のマルチアクセス環境において、L...

自分の IP アドレスの確認方法

Windows であれば、コマンドプロンプトから "ipconfig" と打つことで確認できます。

  1. Windowsキー + R
  2. 「ファイル名を指定して実行」の名前欄に "cmd" と打ち、Enter
  3. ポップアップしたコマンドプロンプトにて "ipconfig"と打ち、Enter

「 IPv4 アドレス . . . . . . . . . . . .: 」と表示された横にあるのが IP アドレスです。

この欄にグローバル IP アドレスではなくプライベート IP アドレスが表示されていて、かつ、インターネットとも通信ができる状態であれば、ルータによって NAT (PAT) 変換されています。

NAT については以下を参照して下さい。

【図解】初心者にも分かるNATの仕組みと種類 ~静的/動的NAT/NAPT(PAT),セキュリティ等メリット/デメリット~
NAT とは NAT (読み方:なっと) とは、Network Address ...

NAT 変換後の IP アドレスを確認したい場合は、以下サイト等で調べることができます。

確認くん http://www.ugtop.com/spill.shtml

「あなたのIPアドレス (IPv4)」と表示された横にあるのが NAT 変換後の IP アドレスです。

コメント

タイトルとURLをコピーしました