ファイナンス、情報通信技術のスキル・アグリゲーション・サイト
IPアドレスの基礎からサブネット化、NATやDHCPなどの関連技術、そしてIPv6やVLANに至るまで、ネットワーク設計と管理に不可欠な要素を解説しています。これからネットワーク技術を学ぶ方にも、既に知識のある方の復習・整理にも最適です。
IPアドレス(Internet Protocol Address)とは、ネットワーク上で機器を識別するための住所のようなものです。インターネットやLAN上のコンピュータ、スマートフォン、プリンタなどに一意に割り当てられます。
例:192.168.1.1 や 10.0.0.5
IPアドレスがあることで、データが正しい送信先に届きます。
IPアドレスは、ネットワーク部(ネットワークの識別)とホスト部(そのネットワーク内の機器の識別)に分かれています。
例:192.168.1.10(サブネットマスクが 255.255.255.0 の場合)
※補足: サブネットマスクによって、どこまでがネットワーク部かを決定します(詳しくは第2章で解説)
かつてはIPアドレスを以下のようなクラスに分類して使っていました(現在はCIDRという方式が主流)。
クラス | 先頭ビット | 範囲 | 用途例 |
---|---|---|---|
A | 0xxxxxxx | 1.0.0.0~126.255.255.255 | 大規模組織 |
B | 10xxxxxx | 128.0.0.0~191.255.255.255 | 中規模組織 |
C | 110xxxxx | 192.0.0.0~223.255.255.255 | 小規模ネットワーク |
D | 1110xxxx | 224.0.0.0~239.255.255.255 | マルチキャスト |
E | 1111xxxx | 240.0.0.0~255.255.255.255 | 研究用途 |
CIDRは、IPアドレスの枯渇問題を緩和し、より効率的なIPアドレスの割り当てを可能にするために導入されました。従来のクラス分類(A, B, C)のように固定のネットワーク部とホスト部の境界に縛られず、任意のビット長でネットワーク部を定義できます。
表記方法:IPアドレスの後にスラッシュ(/)とネットワーク部のビット数(プレフィックス長)を続けます。例: 192.168.1.0/24
。この/24
は、IPアドレスの先頭から24ビットがネットワーク部であることを示し、サブネットマスク255.255.255.0
と同じ意味を持ちます。
利点:IPアドレスの無駄遣いを減らし、ネットワークの規模に応じた柔軟な設計が可能になります。ルーティングテーブルの集約にも寄与します。
プライベートIPアドレス範囲:
NAT(Network Address Translation:ネットワークアドレス変換)は、プライベートIPアドレスとグローバルIPアドレスを変換する技術です。主に、プライベートネットワーク(LANなど)内の複数のデバイスが、単一のグローバルIPアドレスを共有してインターネットに接続する際に使用されます。
ルーターなどのネットワーク機器にこの機能が搭載されており、特に一つのグローバルIPアドレスで複数のプライベートIPアドレスを持つデバイスが同時にインターネットに接続できるようにする技術をNAPT(Network Address Port Translation)と呼びます。NAPTはポート番号も変換に利用することで実現され、IPマスカレードとも呼ばれます。
必要性:
DHCP(Dynamic Host Configuration Protocol)は、ネットワークに接続されたデバイス(PC、スマートフォンなど)に対して、IPアドレスやサブネットマスク、デフォルトゲートウェイ、DNSサーバーのアドレスなどのネットワーク設定情報を自動的に割り当てるプロトコルです。これにより、手動でIPアドレスを設定する手間を省き、IPアドレスの重複を防ぎ、ネットワーク管理を簡素化できます。
一般家庭では、ルーターがDHCPサーバーの役割を果たすことが多いです。
仕組み:
IPアドレスは人間にわかりやすく10進数で書かれていますが、機械は2進数で処理します。
例:
演習問題:「10.0.0.1」を2進数に直せますか?
答え:00001010.00000000.00000000.00000001
アドレス種別 | 説明 |
---|---|
ユニキャスト | 1対1通信。通常のIP通信 |
ブロードキャスト | ネットワーク内の全ホストに送信 |
マルチキャスト | 特定グループの複数ホストに送信 |
ループバック(127.0.0.1) | 自分自身を指す(自己テストに使用) |
APIPA(169.254.0.0/16) | DHCP失敗時の自動割り当てIP範囲 |
サブネット(サブネットワーク)とは、大きなIPネットワークを小さなグループに分割する仕組みです。
主な目的は次の通りです:
サブネットマスクは、IPアドレスのどの部分がネットワーク部で、どの部分がホスト部であるかを示す32ビットのビット列です。IPアドレスとサブネットマスクを組み合わせることで、特定のIPアドレスがどのネットワークに属しているかを識別できます。
例:サブネットマスク 255.255.255.0
は、IPアドレスの先頭24ビットがネットワーク部であることを意味します。
これにより、ネットワークの境界を明確に定義し、異なるサブネット間の通信をルーターが適切に処理できるようになります。
CIDR(Classless Inter-Domain Routing)は、IPアドレスの新しい表記法で、IPアドレスの後ろにスラッシュとネットワーク部のビット数(プレフィックス長)を付けます。従来のクラス分類(A, B, C)に代わる柔軟なアドレス管理方法です。
CIDRを使用することで、IPアドレスの無駄を減らし、必要な規模のネットワークを柔軟に設計できます。また、ルーティングテーブルの簡素化にも貢献します。
例:192.168.1.0/24
192.168.1.0
→ ネットワークアドレス/24
→ ネットワーク部が24ビット(サブネットマスクが255.255.255.0
)サブネットを設計する際には、利用可能なIPアドレスの範囲やホスト数を正確に把握するための計算が必要になります。
1つのサブネットで利用可能なホスト数 = 2ホスト部ビット数 − 2
(※「−2」は、そのサブネットのネットワークアドレスとブロードキャストアドレスを除くためです。これらのアドレスは、ホストに割り当てることはできません。)
例:/26
(ホスト部が6ビット)の場合 → 26 − 2 = 64 − 2 = 62ホスト
必要なホスト数に応じたサブネットマスクの選定や、サブネットごとのアドレス範囲の特定が重要です。
各サブネットには、ホストに割り当てられない特別な意味を持つIPアドレスが2つあります。
例:192.168.1.0/24
の場合
192.168.1.0
192.168.1.255
192.168.1.1
~ 192.168.1.254
問題:192.168.10.0/26
に含まれるIPアドレス範囲を求めよ。
解答:
CIDR /26
は、サブネットマスクが255.255.255.192
であることを意味します。
ホスト部:32 - 26 = 6ビット → 1サブネットあたりのホスト数は26 = 64です。
192.168.10.0
から始まるサブネットの場合:
192.168.10.0
192.168.10.1
~ 192.168.10.62
192.168.10.63
次のサブネットは192.168.10.64
から始まり、同様に計算されます。
192.168.10.64
192.168.10.65
~ 192.168.10.126
192.168.10.127
問題:1つのサブネットに50台のホストが必要。どのサブネットマスクを使えばよいか?
解答:
必要なホスト数 = 50
利用可能なホスト数 = 2n − 2 ≥ 50 を満たす最小のn(ホスト部ビット数)を探します。
したがって、ホスト部は6ビット必要です。
IPアドレス全体が32ビットなので、ネットワーク部は 32 - 6 = 26ビット となります。
最適なサブネットマスクは /26
(255.255.255.192
)です。
2つのIPアドレスが同じサブネットに属しているかどうかは、それぞれのIPアドレスとサブネットマスクをビット単位で論理積(AND演算)を取ることで確認できます。論理積の結果が同じであれば、それらのIPアドレスは同じサブネットに属しています。
手順:
例:IPアドレス 192.168.1.10
と 192.168.1.20
、サブネットマスク 255.255.255.0
(/24
)の場合
IPアドレスA (192.168.1.10) :11000000.10101000.00000001.00001010 サブネットマスク (/24) :11111111.11111111.11111111.00000000 AND演算結果(ネットワークA):11000000.10101000.00000001.00000000 (192.168.1.0) IPアドレスB (192.168.1.20) :11000000.10101000.00000001.00010100 サブネットマスク (/24) :11111111.11111111.11111111.00000000 AND演算結果(ネットワークB):11000000.10101000.00000001.00000000 (192.168.1.0)
両者のネットワークアドレスが同じ 192.168.1.0
であるため、これらのIPアドレスは同じサブネットに属していると言えます。
IPアドレスをビット単位で分解することで、ネットワーク部とホスト部の境界がはっきりと理解できます。この視覚的な理解は、サブネット設計において非常に役立ちます。
例:
IPアドレス :192.168.1.10 2進数表記 :11000000.10101000.00000001.00001010 サブネットマスク /24 → 上位24ビットがネットワーク部、残り8ビットがホスト部
CIDR | サブネットマスク | ホスト数(利用可能) |
---|---|---|
/24 | 255.255.255.0 | 254 |
/25 | 255.255.255.128 | 126 |
/26 | 255.255.255.192 | 62 |
/27 | 255.255.255.224 | 30 |
/28 | 255.255.255.240 | 14 |
/29 | 255.255.255.248 | 6 |
/30 | 255.255.255.252 | 2 |
ネットワーク上で通信を行う際、私たちが意識することはあまりありませんが、データが正しく目的地に届くためには「住所」であるIPアドレスが不可欠です。しかし、同じネットワーク内の機器と通信する場合と、異なるネットワーク(例えばインターネット)と通信する場合では、データの経路が異なります。ここで重要な役割を果たすのがデフォルトゲートウェイです。
デフォルトゲートウェイとは、自分のいるネットワーク(サブネット)の外にあるネットワークへ通信する際の「出入り口」となる機器のIPアドレスのことです。通常、この役割はルーターが担います。
コンピュータは、送りたいデータの宛先IPアドレスを見て、それが自分のいるサブネット内にあるかどうかを判断します。
デフォルトゲートウェイが設定されていない、または間違っていると、インターネットに接続できない、あるいは他のサブネットにあるサーバーにアクセスできないといった問題が発生します。
自宅やオフィスで使われているルーターは、通常、複数のIPアドレスを持っています。少なくとも、LAN側(内部ネットワーク)のIPアドレスと、WAN側(インターネット側)のIPアドレスです。このうち、LAN側のIPアドレスが、そのネットワークに接続された機器にとってのデフォルトゲートウェイとなります。
例えば、ルーターのLAN側IPアドレスが 192.168.1.1
で、サブネットマスクが 255.255.255.0
の場合、同じネットワークにいるコンピュータは、デフォルトゲートウェイとして 192.168.1.1
を設定します。これにより、コンピュータは自分のサブネット外の通信をすべてこのルーターに任せることになります。
ネットワーク通信では、IPアドレスと並んでMACアドレスというもう一つの重要なアドレスが存在します。これらはそれぞれ異なる階層で異なる役割を担っています。
IPアドレス(Internet Protocol Address):
MACアドレス(Media Access Control Address):
AA-BB-CC-DD-EE-FF
)。簡単に言えば、IPアドレスが「郵便番号と住所」であるのに対し、MACアドレスは「番地内の個別の建物(部屋番号まで含む)」のようなものです。データがルーターを経由して異なるネットワークへ移動する際にはIPアドレスが使われますが、同じネットワーク内の機器間でデータをやり取りする際にはMACアドレスが使われます。
では、IPアドレスとMACアドレスはどのように連携するのでしょうか?ここで登場するのがARP (Address Resolution Protocol)です。
ARPの主な目的は、あるIPアドレスに対応するMACアドレスを突き止めることです。コンピュータはデータを送信する際、宛先のIPアドレスは知っていますが、同じローカルネットワーク内の最終的な物理的な宛先(次のホップ)のMACアドレスは通常知りません。
ARPの動作原理:
このように、ARPはIPアドレスとMACアドレスを結びつけ、データがローカルネットワーク内で物理的に転送されるための重要な橋渡し役を担っています。ルーターもまた、異なるサブネットへデータを転送する際に、次のルーターや目的地のMACアドレスを知るためにARPを利用します。
IPv6は、IPv4の次世代プロトコルとして開発され、インターネットの爆発的な成長に対応するために、より広大なアドレス空間と効率的な機能を提供します。
この章では、IPv6アドレスの基本的な構成、その自動設定メカニズム、そして様々なアドレスの種類について詳しく見ていきます。
IPv6アドレスは、IPv4の32ビットに対して128ビットの長さを持っています。これにより、ほぼ無限に近いアドレス空間が提供されます。IPv6アドレスは、通常、16ビットごとにコロン(:)で区切られた8つの16進数ブロックで表現されます。
IPv6アドレスは、大きく分けてネットワーク部(またはプレフィックス部)とインターフェースIDの2つの部分で構成されます。IPv4のネットワーク部とホスト部に相当しますが、IPv6ではより柔軟な設計が可能です。
/64
)。ISPや組織に割り当てられるアドレスブロックを表します。/64
の場合、インターフェースIDは下位64ビットとなります。例: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
128ビットのアドレスは非常に長いため、IPv6には表記を短縮するためのいくつかのルールがあります。
0db8
は db8
に、0000
は 0
に省略可能。0000
ブロックは、二重コロン(::
)で一度だけ省略できます。
2001:0db8:0000:0000:0000:8a2e:0370:7334
は 2001:0db8::8a2e:0370:7334
と省略できます。
::
はアドレス内で一度しか使用できません。最も省略された例: 2001:db8::8a2e:370:7334
IPv6でも、IPv4のCIDR表記と同様に、アドレスの最後にスラッシュ(/)とプレフィックス長(ビット数)を付けてネットワーク部を示します。これはサブネットの範囲を定義するために使用されます。
例: 2001:db8:1234::/48
これは、先頭から48ビットがネットワーク部であり、残りの80ビットをインターフェースIDやさらに細かいサブネットに割り当てられることを意味します。一般的に、末端のサイトには/48
、個々のLANセグメントには/64
が割り当てられることが多いです。
IPv6では、デバイスがIPアドレスを取得するための複数の方法が提供されており、IPv4よりも柔軟性が増しています。
SLAACは、DHCPサーバーなしでIPv6アドレスを自動的に設定できるメカニズムです。ルーターから定期的に送信されるルーターアドバタイズメント(RA)メッセージを利用します。
仕組み:
利点:
DHCPv6は、IPv4のDHCPと同様に、IPv6アドレスやその他のネットワーク設定(DNSサーバーアドレスなど)を中央のサーバーから動的に割り当てるプロトコルです。
一般的には、SLAACでアドレスを取得しつつ、追加情報をDHCPv6(ステートレスモード)で取得するという組み合わせが多く使われます。
IPv6アドレスには、その用途やスコープ(有効範囲)に応じていくつかの種類があります。ここでは主な種類を紹介します。
グローバルユニキャストアドレス(Global Unicast Address - GUA):
2000::/3
の範囲から割り当てられます。リンクローカルアドレス(Link-Local Address):
fe80::/10
の範囲から自動的に生成されます。ユニークローカルアドレス(Unique Local Address - ULA):
fc00::/7
の範囲から割り当てられます。ループバックアドレス(Loopback Address):
::1
(または 0:0:0:0:0:0:0:1
)と表記されます。127.0.0.1
に相当し、自分自身を表すアドレスです。マルチキャストアドレス(Multicast Address):
ff00::/8
の範囲から始まります。これまでの章では、IPアドレスとサブネットを使ってネットワークを論理的に分割する方法について学びました。しかし、これらの分割はIPアドレスの設計によるものであり、物理的なネットワーク機器の構成とは独立しています。
ここで登場するのが、物理的な制約を超えてネットワークを分割し、柔軟な設計を可能にするVLAN(Virtual LAN)です。
VLAN(Virtual Local Area Network)とは、物理的なネットワークスイッチのポートを論理的にグループ化することで、あたかも複数の独立したLANが存在するかのように機能させる技術です。
例えば、1台のスイッチに接続されたコンピュータが、物理的には同じスイッチに繋がっていても、VLANを分けることで異なるネットワークに属しているかのように扱えます。これにより、以下のような目的を達成できます。
VLANは、主に次の2つの方法で実装されます。
最も基本的なVLANの方式で、スイッチの各ポートを特定のVLANに割り当てる方法です。
イーサネットフレームにVLANタグ(VLAN ID)を挿入することで、複数のVLANのトラフィックを1本の物理リンクで伝送できるようにする方式です。これが最も一般的に利用されるVLANの実装方法です。
動作原理:
特徴:
VLANによって分割された異なるVLAN同士は、デフォルトでは通信できません。VLAN間の通信を可能にするためには、VLAN間ルーティング(Inter-VLAN Routing)が必要になります。
VLAN間ルーティングは、通常、次のいずれかの方法で実現されます。
ルーターオンアスティック(Router-on-a-Stick):
レイヤー3スイッチ(Multi-Layer Switch):
VLANは、さまざまなネットワーク環境で活用されています。