IPv4
2023-10-15 (日) 20:24:53
IPv4 とは †
IPv4 のIPアドレス †
- IPアドレスのサイズは、4バイト(32bit)
- 8bit × 4 = 32bit
- 2^32(42億9496万7296)個の固有アドレスを識別できる。
IPv4 のIPアドレスの種類 †
(ローカル)ループバックアドレス †
- 自身のアドレス。127.0.0.1 (localhost)が一般的に使われる。
- 127.0.0.0/8
- (127.0.0.0 〜 127.255.255.254)
プライベートアドレス †
クラスA:ネットワーク部(8bit:0~)、ホスト部(24bit) †
- 10.0.0.0/8
- (10.0.0.0 〜 10.255.255.255)
- サブネットマスク(255.0.0.0 〜 255.255.255.255)
- 100.64.0.0/10
- Shared Address Space
- CGNで使われる
- (10.64.0.0 〜 10.127.255.255)
- サブネットマスク(255.0.0.0 〜 255.192.0.0)
- Shared Address Space
クラスB:ネットワーク部(16bit:10~)、ホスト部(16bit) †
- 172.16.0.0/12
- (172.16.0.0 〜 172.31.255.255)
- サブネットマスク(255.255.0.0 〜 255.255.255.255)
- 約65000台のホストの割り当てが可能
クラスC:ネットワーク部(24bit:110~)、ホスト部(8bit) †
- 192.168.0.0/16
- (192.168.0.0 〜 192.168.255.255)
- サブネットマスク(255.255.255.0 〜 255.255.255.255)
- 約250台のホストの割り当てが可能
リンクローカルアドレス †
- DHCPサーバからIPアドレスを割り当てられなかった場合に自動的に設定する(APIPA)
- 同一リンク上でのみ有効なアドレス
- 169.254.0.0/16
- (169.254.0.0 〜 169.254.255.255)
テストネットワーク用アドレス †
- テストや例示で使うためのアドレス
- 192.0.2.0/24
- (192.0.2.0 〜 192.0.2.255)
- 198.51.100.0/24
- (198.51.100.0 〜 198.51.100.255)
- 203.0.113.0/24
- (203.0.113.0 〜 203.0.113.255)
マルチキャストアドレス †
クラスD:ネットワーク部(4bit:1110~)、ホスト部(28bit) †
- ホストの全体を指すアドレス
- 224.0.0.0/4
- (224.0.0.0 〜 239.255.255.255)
実験用アドレス †
クラスE:ネットワーク部(4bit:1111~)、ホスト部(28bit) †
- 240.0.0.0/4
- (240.0.0.0~255.255.255.255)
制限ブロードキャストアドレス(リミテッドブロードキャストアドレス) †
- 同じサブネットの全てのホストを宛先として指定するブロードキャストアドレス
- 255.255.255.255
ネットワークアドレス †
- 0.0.0.0/8
IP(IPv4)のデータ構造 †
IPヘッダ †
- 1〜32bit
- バージョン(4) ※0x04(バージョン4)
- ヘッダ長(IHL)(4) ※単位:4Byte(20Byteの場合、0x05)
- サービスタイプ(ToS)(8)
- 全長(16) ※IPヘッダを含めたIPパケットの長さ
- 33〜64bit
- 識別子(16)
- フラグ(3)
- フラグメントオフセット(13)
- 65〜96bit
- パケット生存時間(TTL)(8) ※通過可能なルータの最大数(0〜255)。ルータを経由する度にカウントダウンする
- プロトコル番号(8)
- チェックサム(16) ※IPヘッダの誤り検出に使われる
- 97〜128bit
- 発信元IPアドレス(32)
- 129〜160bit(20Byte)
- 宛先IPアドレス(32)
- 161〜(+32×n bit)bit
- オプション(可変長)
- パディング(可変長)
フラグ †
- IPパケットの分割の制御に使われる
- 1bit目:0(固定)
- 2bit目:DFビット(0:分割可能、1:分割不可能)
- 3bit目:MFビット(0:最後のフラグメント、1:後続フラグメントあり)
プロトコル番号 †
- 上位層のプロトコルを識別ための番号
- IANA のプロトコル番号
https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml
- 一部抜粋
IPv4 で使われる機能 †
経路MTU探索(パスMTU探索) †
IPv6 と比較したIPv4 の性質・特徴 †
- ネットワーク機器の負担
- ヘッダーが可変長であることが、ネットワーク機器に負担がかかることとなり、パフォーマンスを低下させる要因となっている。
IPv4の脆弱性 †
- パケットの暗号化が標準的に装備されていない
IPv4 アドレス在庫枯渇問題 †
- インターネットに接続する端末の増加により、IPv4 アドレスの中央在庫が枯渇して、新しいIPv4 アドレスが供給されなくなる問題。
対策 †
関連サイト †
- IANA IPv4 Address Space Registry
https://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xhtml
- 予約されているIPアドレス
- 例示で使うことが認められているIPアドレス(テストネットワーク用アドレス)(RFC5737)
- IPv4 Address Blocks Reserved for Documentation
https://tools.ietf.org/html/rfc5737
- プライベートアドレス(RFC1918)
- Address Allocation for Private Internets
https://tools.ietf.org/html/rfc1918
- Address Allocation for Private Internets
- IPv4 アドレスの枯渇時に生じる諸課題に適切に対処するための手順書 (総務省)
https://www.soumu.go.jp/main_content/000240919.pdf
- サブネットマスク計算(IPv4) - CMAN
https://note.cman.jp/network/subnetmask.cgi