
新Linux入門|IPv4とは:インターネット通信を支える基本プロトコルの仕組み
みなさんが毎日使っているインターネット。
その通信を裏で支えている最も基本的な仕組みのひとつが IPv4(Internet Protocol version 4) です。
Webサイトを開くときも、メールを送るときも、実はすべてこのIPv4のルールに従って通信が行われています💡
ここでは、IPv4の仕組みやアドレスの構造、サブネットマスク、ルーティングなどをやさしく解説します。

🌐 IPv4とは何か
IPv4は、ネットワーク上でデータを送受信するための基本プロトコル(通信ルール) です。
すべての通信機器(パソコン、スマートフォン、ルーターなど)は、IPv4によって割り当てられたIPアドレスによって識別されています。
| 項目 | 内容 |
|---|---|
| 名称 | IPv4(Internet Protocol version 4) |
| 主な役割 | データ通信時の「送信元」と「宛先」を指定する。 |
| アドレス形式 | 32ビット(4つの8ビット=オクテット) |
| 例 | 192.168.1.1 |
| 使用範囲 | インターネット・LANなど、現在も最も広く利用されている。 |
💬ポイント
IPv4は1983年に標準化され、現在でも世界中のネットワークで使用されています。
ただし、32ビットという制限のため、約43億個のアドレスしか存在せず、「アドレス枯渇問題」 が発生しています。
🧩 IPv4アドレスの構造
IPv4アドレスは 32ビット の数値で構成され、8ビットずつ区切って4つの部分(オクテット)に分けられます。
通常は「10進数」で表記され、各オクテットは0〜255の範囲の値を持ちます。
| ビット構成 | 例 | 説明 |
|---|---|---|
| 32ビット | 192.168.1.1 | 各8ビットごとにドットで区切る(例:192.168.1.1) |
| 2進数表記 | 11000000.10101000.00000001.00000001 | コンピュータ内部では2進数で扱われる |
| 10進数表記 | 192.168.1.1 | 人間が理解しやすい表現 |
💡ポイント
この32ビットの中で、どこまでが「ネットワーク部」で、どこからが「ホスト部」なのかを区別するのがサブネットマスクです。
🏷️ IPアドレスのクラス分類
IPv4アドレスは、もともとネットワーク規模に応じて「クラス」と呼ばれる区分に分けられていました。
| クラス | 先頭ビット | 範囲(10進数) | ネットワーク部の長さ | ホスト数(理論値) | 用途 |
|---|---|---|---|---|---|
| A | 0 | 1.0.0.0 ~ 126.255.255.255 | 8ビット | 約1,600万 | 大規模ネットワーク |
| B | 10 | 128.0.0.0 ~ 191.255.255.255 | 16ビット | 約6万5千 | 中規模ネットワーク |
| C | 110 | 192.0.0.0 ~ 223.255.255.255 | 24ビット | 254 | 小規模ネットワーク |
| D | 1110 | 224.0.0.0 ~ 239.255.255.255 | マルチキャスト | - | 特殊用途 |
| E | 1111 | 240.0.0.0 ~ 255.255.255.255 | 研究用 | - | 実験・保留用 |
💬ポイント
現在では「クラスレスアドレッシング(CIDR)」が主流となっており、柔軟にネットワークを分割できるようになっています。
📏 サブネットマスクとは
サブネットマスクは、IPアドレスのどこまでがネットワーク部で、どこからがホスト部かを示すための仕組みです。
| 項目 | 説明 |
|---|---|
| 役割 | ネットワーク部とホスト部を区別する |
| 表記形式 | IPアドレスと同じ32ビット形式(例:255.255.255.0) |
| 1ビット | ネットワーク部を表す |
| 0ビット | ホスト部を表す |
例
IPアドレス:192.168.1.10
サブネットマスク:255.255.255.0→ ネットワーク部:192.168.1(24ビット)
ホスト部:10(8ビット)
💡ポイント
つまり、192.168.1.0/24 のようにスラッシュ(/)の後にネットワーク部のビット数を付けて表現することもできます。
🔍 AlmaLinuxでのIPv4確認コマンド
IPv4アドレスの設定や確認には、ipコマンド を使用します。
CentOS7時代のifconfigの代替として、現在はipコマンドが主流です。
コマンド書式
ip addr show使用例
[suzuki@AlmaLinux ~]$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:f8:25:ac brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3
valid_lft 17182sec preferred_lft 17182sec
inet6 fd17:625c:f037:2:a00:27ff:fef8:25ac/64 scope global dynamic noprefixroute
valid_lft 85944sec preferred_lft 13944sec
inet6 fe80::a00:27ff:fef8:25ac/64 scope link noprefixroute
valid_lft forever preferred_lft forever| オプション | 説明 |
|---|---|
| ip addr show | IPアドレス情報を表示 |
| ip route show | ルーティングテーブルを表示 |
| ping アドレス | IP通信の疎通確認を行う |
| hostname -I | 現在のIPアドレスのみを表示 |
💬ポイント
この出力から、ネットワークインターフェース名(ens33)やIPv4アドレス、サブネットマスク(/24)を確認できます。
🚀 IPv4のルーティングとパケット転送
IPv4では、通信データは「パケット」に分割され、ルーターを通じて目的地まで転送されます。
ルーターは「ルーティングテーブル」と呼ばれる情報を使い、どの経路で送るかを判断します。
ルーティングテーブルの確認
[suzuki@AlmaLinux ~]$ ip route show
default via 10.0.2.2 dev enp0s3 proto dhcp src 10.0.2.15 metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100💬ポイント
上記の例では、デフォルトゲートウェイ(192.168.1.1)を通じて外部ネットワークへ通信しています。
| 項目 | 説明 |
|---|---|
| default via | ルーター(ゲートウェイ)のアドレス |
| dev ens33 | 使用しているネットワークインターフェース |
| src | 送信元IPアドレス |
| metric | 経路の優先度(数値が小さいほど優先) |
🌍 IPv4プロトコルスイート
IPv4は単体で動作するわけではなく、他のプロトコルと組み合わせて動作します。
代表的なものを以下にまとめます👇
| プロトコル名 | 役割 | 通信の特徴 |
|---|---|---|
| TCP | 信頼性のある通信(接続型) | Web・メールなど |
| UDP | 高速な通信(非接続型) | DNS・動画配信など |
| ICMP | 通信エラー通知・疎通確認 | pingコマンドなどで使用 |
| ARP | MACアドレスの解決 | LAN内での通信制御 |
| DHCP | IPアドレスの自動割り当て | 動的ネットワーク設定 |
💡ポイント
これらのプロトコルが協力することで、IPv4はネットワーク通信を効率的に行っています。
⚠️ IPv4アドレスの枯渇とIPv6への移行
IPv4は32ビットのため、約43億個のアドレスしか存在しません。
インターネットの普及とともに、そのアドレスが不足する「IPv4枯渇問題」が発生しました。
現在は、IPv6(128ビットアドレス) への移行が進んでいますが、
IPv4は依然として多くの環境で使われ続けています。
🌈 まとめ
🔹 IPv4は、ネットワーク通信の基盤となる「インターネットプロトコル」の第4版。
🔹 32ビットのアドレス構造で、ネットワーク部とホスト部を区別して通信を制御。
🔹 サブネットマスクによってネットワークの分割と識別が可能。
🔹 TCP・UDP・ICMPなどのプロトコルと連携して通信を実現。
🔹 IPv6が登場しても、IPv4は依然として世界中のネットワークで広く使われている。
IPv4を理解することは、ネットワークの仕組みを理解する第一歩です。
次回は、IPv6との違いやアドレス拡張の仕組みを見ていきましょう📘
