Skip to content

MS_IPv4v6

nishi_74322014 edited this page Aug 3, 2026 · 1 revision

IPv4, v6

概要

IPアドレスだけでなく、IPプロトコルも。

差異

項目 IPv4 IPv6
パケット優先度・輻輳制御 TOS (Type Of Service) フィールド トラフィック クラス フィールド
チェックサム チェックサムフィールド 廃止
IPヘッダ長 可変長 拡張されたが固定長に変更された
IPアドレス長 8 × 4 = 32ビット(4バイト)
0.0.0.0 - 255.255.255.255
128ビット(16バイト)
0:0:0:0:0:0:0:0 - FFFF:…:FFFF

機能拡張

ルータの負荷軽減

ヘッダの固定長化によりハードウェアで高速処理可能に。

セキュリティ機能追加

  • IPv4 : -
  • IPv6 : IPsec必須で、認証、改ざん検知(AH)、暗号化(ESP)が可能。

※ 「IPsec 必須」は当初の RFC 2460 の規定。 現行の RFC 8200(2017年)では 必須ではなく推奨(SHOULD) に緩和されている。

アドレス自動割当

  • IPv4 : DHCP
  • IPv6 : ルータ(RA:ルータ広告による SLAAC)

NAT不要

  • アドレス空間が膨大であるため。
  • NAT と VPN の併用不可問題をクリアする。

IPヘッダ

IPv4

ビット フィールド
0-3 / 4-7 / 8-15 / 16-31 バージョン (4) / ヘッダ長 (4) / サービスタイプ (8) / 全長 (16)
識別子 (16) / フラグ (3) / フラグメント・オフセット (13)
パケット生存時間(TTL) (8) / プロトコル番号 (8) / チェックサム (16)
発信元IPアドレス (32)
宛先IPアドレス (32)
32×n bit オプション … パディング (n)

IPv6

ビット フィールド
0-3 / 4-11 / 12-31 バージョン (4) / トラフィック クラス (8) / フロー・ラベル (20)
ペイロード長 (16) / 次ヘッダ (8) / ホップリミット (8)
128 bit 発信元IPアドレス (128)
128 bit 宛先IPアドレス (128)

移行メモ(誤記): 原文の「ポップリミット」は「ホップリミット(Hop Limit)」の誤記。 また 2 番目のフィールドは、概要の「差異」節で「トラフィック クラス」と説明されているのに ヘッダ図では「優先度」となっていたため、前者に統一した。

IPアドレス

IPv4

IPv6

  • 書き方
    • 16進数
    • 16bitづつ「:」で区切る。
    • 128bitなので8グループできる。
    • 短縮表記ルールがある。
      • 先頭の連続する0の省略
      • 0だけのグループの省略(1箇所だけ、連続して省略可)
      • 例:2001:0db8:0000:0000:3456:0000:0000:00002001:db8:0:0:3456::
  • IPアドレスクラス
    • クラスレスなアドレス構造
    • CIDR 方式を踏襲しており、クラスの概念は存在しない。
  • Xキャスト用IPアドレス
    • ブロードキャスト アドレス:存在しないためマルチキャスト アドレスを使用する。
    • マルチキャスト アドレス(ff00::/8
      • いくつかの特別なルールに従ってフォーマットされる。
      • prefix(プリフィックス)は ff(続く 00 は flg と sc)
  • ユニキャスト アドレス
    • グローバル ユニキャスト アドレス
    • ユニーク ローカル IPv6 ユニキャスト アドレス (ULA)
  • IPv4射影アドレス
    • IPv4アドレスをIPv6アドレスとして表現したアドレス。

    • 先頭から 80 ビットの0、16 ビットの1、32 ビットのIPv4アドレス

      ::FFFF:nnn.nnn.nnn.nnn
      0000:0000:0000:0000:0000:FFFF:(nnn.nnn.nnn.nnn)
      

移行メモ(正誤): 原文は「先頭から80バイトの0、16バイトの1、32バイトのIPv4アドレス」 となっていたが、合計 128 ビットの内訳なので単位は「ビット」が正しい (80 + 16 + 32 = 128 bit)。

IPv4アドレス詳細

概要

ここでは、

  • IPアドレスと
  • IPルーティング
  • IPアドレス割り当てに関連するネットワーク構成
  • ネットワーク アドレスとIPアドレスの割り当て
  • 動的割り当て、静的割り当て
  • MACアドレスとの関連

など、IPアドレスの基礎について説明する。

IPアドレスとルーティング

  • ブロードキャストで名前解決するようなネットワークでは、ネットワーク上に接続するノード数が増えてくると、
    名前解決のためのブロードキャストによるトラフィックの負担が大きくなり、ネットワークが飽和し易くなる。
  • これらの問題は、IPアドレスとルータを導入し、ネットワークを分割することで解決される。
    • ルータは、必要なネットワークにだけパケットを送ったり、離れた場所にあるネットワーク同士を接続したりできるので、
      トラフィックを軽減した状態で、分割されたネットワーク上のノード同士が通信できる。

IPアドレスの種類

予約済みIPアドレス

予約済みのIPアドレスについて説明する。
これらのIPアドレスは、通常、ホストのIPアドレスとして利用できないので注意する。

  • Thisネットワーク アドレス(オール0)
    BootPやDHCPなどを使ってTCP/IPの設定を行う際に、自分自身を表すためのアドレスとして使用するIPアドレス。
  • ネットワーク アドレス(ホスト部がオール0)
    ホスト部を全て0に設定したIPアドレス。ネットワーク アドレスを表す。
  • ローカル ループバック アドレス(127.xxx.xxx.xxx
    • 自分自身を指すIPアドレス。
    • ローカル ループバック アドレスを使用した通信はNICを経由しないため、NICがないPCでも利用可能である。
      同一マシン内のプロセス間通信などで利用できる。
  • APIPA用のLINKLOCALアドレス
    • DHCPのAPIPA機能で使用される。
    • 外部と接続されていないローカルな単一のネットワークだけで利用できるIPアドレスで、
      169.254.0.0/16(実際に付与されるのは 169.254.1.0169.254.254.255)の範囲が予約されている。

Xキャスト用IPアドレス

UDPで使用できる。

  • リミテッド ブロードキャスト(255.255.255.255
    • ローカル ネットワークにいる、すべてのホストを対象とするOSI参照モデルの第3層のブロードキャストに使用するIPアドレス。
    • また、OSI参照モデルの第2層のブロードキャストに使用するMACアドレスは、FF:FF:FF:FF:FF:FF である。
  • ディレクティッド ブロードキャスト(ネットワーク アドレス + オール1)
    • 他のネットワークへ向けられたOSI参照モデルの第3層のブロードキャストに使用するIPアドレス。
    • 対象のネットワークまでルータによってパケットが運ばれてから、ルータによってローカル ネットワークにブロードキャストされる。
  • マルチキャスト アドレス(224.0.0.0239.255.255.255
    • マルチキャストに使用するIPアドレス。
    • クラスDのアドレスがマルチキャスト アドレスとして予約されている。
    • RFCにより規定されているマルチキャスト アドレス(グループ)を以下に示す。
# マルチキャスト アドレス(グループ) 用途
1 224.0.0.0 予約
2 224.0.0.1 同一サブネット上の全ノード
3 224.0.0.2 同一サブネット上の全ルータ
4 224.0.0.4 ルーティング プロトコル:DVMRP
5 224.0.0.5 ルーティング プロトコル:OSPF
6 224.0.0.6 ルーティング プロトコル:OSPF version2
7 224.0.0.9 ルーティング プロトコル:RIP version2
  • マルチキャスト アドレスに対応するMACアドレスもある
    • このMACアドレスは、マルチキャスト受信者に設定されたホストのNICに自動的に追加される。
    • これについては本ドキュメントでは割愛する。

IPアドレスの割当

プライベートIPアドレスとグローバルIPアドレス

  • プライベートIPアドレス
    プライベートIPアドレスは各組織内だけで自由に使うことが許可されたIPアドレスで、以下の範囲が利用できる。
# クラス クラスに対応するホスト アドレスの範囲 プライベートIPアドレスの範囲
1 クラスA 0.0.0.0 ~ 127.255.255.255 のうち 10.0.0.0 ~ 10.255.255.255
2 クラスB 128.0.0.0 ~ 191.255.255.255 のうち 172.16.0.0 ~ 172.31.255.255
3 クラスC 192.0.0.0 ~ 223.255.255.255 のうち 192.168.0.0 ~ 192.168.255.255
  • グローバルIPアドレス
    • プライベートIPアドレスと重複しないIPアドレスの範囲を、公的な機関
      (IANAおよびその依頼を受けた組織)によってプロバイダなどに割り当てられる。
    • そのIPアドレスが重複しないようにプロバイダのユーザに付与される。
    • グローバルIPアドレスの割り当ての例

DHCPサーバによるIPアドレスの動的割り当て

IPアドレスの割り当て方法には、

  • 「静的割り当て」と「動的割り当て」がある。
  • 動的割り当てをするには、DHCPサーバが必要になる。
    • DHCPサーバはクライアントに動的にIPアドレスを割り当てるサーバ。
    • ルータを跨ぐ場合は、クライアントが存在するネットワーク内に中継機能を追加する必要がある。

IPアドレスの動的割り当ての仕組み

  • DHCPサーバ
    • DHCPサーバは、UDPポート67番でIPアドレスの動的割り当て要求(ブロードキャスト)を受信し、
      DHCPクライアントにIPアドレスを動的に割り当てるシステムである。
    • DHCPクライアントは、UDPポート68番で応答(ユニキャスト)を受信する。
  • DHCPリレー エージェント
    • DHCPクライアントからDHCPサーバに送信されるIPアドレスの動的割り当て要求は、ローカル ネットワークにブロードキャストされる。
    • このため、DHCPサーバが他のネットワークにある場合はDHCPサーバとの通信ができない。
    • これを解決するには、DHCPリレー エージェントをローカル ネットワークに導入し、
      IPアドレスの動的割り当てのブロードキャストを中継、DHCPサーバでのIPアドレスの割り当てを代行する。
  • IPアドレスを要求する際のシーケンス

DHCPプロトコル

  • DHCPサーバからの「肯定(OFFER)」コマンドの応答が複数ある場合、
    DHCPクライアントは、適当な「肯定(OFFER)」コマンドを選択し、
    そのDHCPサーバを使う旨を、「要求(REQUEST)コマンド」を使って返信する。
    この仕組みはDHCPサーバの冗長化などにも利用されている。
  • WindowsでのDHCPクライアントの設定
    • DHCPの有効化
    • 代替構成
      • DHCPを有効にしている場合、「代替構成」を設定できる。
      • 代替の構成は、DHCP クライアントがDHCPサーバを発見できない場合に有効になる。
      • 既定値は「自動プライベートIPアドレス」で、この場合、APIPAのIPアドレスが付与される。

IPアドレスの静的割り当て

「静的割り当て」は、クライアントに直接IPアドレスを指定する方法である。

割当られたIPアドレスの確認(ipconfigコマンド)

ipconfigコマンド

ネットワーク アドレス

  • IPアドレスを構成するビット列のうち、
    個々の組織が管理するネットワーク(サブネット)を識別するのに使われる部分。

クラスフル アドレッシング(FLSM)

  • ネットワーク アドレスを決定する際に、
    既定の「アドレス クラス」と「ネット マスク」(ナチュラル マスク)
    を使用するアドレッシング方法を、「クラスフル アドレッシング」(FLSM)と言う。
  • 「クラスフル アドレッシング」では、
    それぞれのネットワークに何台のホストを接続するかによって、どの「アドレス クラス」を使用するかを選択する。
    • 「ネット マスク」(ナチュラル マスク)は「アドレス クラス」に対応したものを適用する。
    • クラスD、クラスEというアドレスもあるが、これは通常のホストが使用するIPアドレスではない。
      クラスDはマルチキャスト アドレス、クラスEは実験用アドレスに予約されている。
# アドレス クラス 先頭ビットのパターン ネット マスク ネットワーク アドレスの範囲 ホスト アドレス長(ホスト台数)
1 クラスA 0 255.0.0.0 0.0.0.0/8 ~ 127.0.0.0/8 24bit(約1677万台)
2 クラスB 10 255.255.0.0 128.0.0.0/16 ~ 191.255.0.0/16 16bit(約6万5000台)
3 クラスC 110 255.255.255.0 192.0.0.0/24 ~ 223.255.255.0/24 8bit(254台)

クラスレス アドレッシング(VLSM or CIDR)

  • 「クラスフル アドレッシング」の場合、ネットワークにネットワーク アドレスを割り当てる場合など、
    実際に必要となるIPアドレスの数より多すぎたり少なすぎたりすることがある。
    (実際にISPに割り当てるクラスBネットワークが不足する事態になった。)
  • このため、ユーザ自身が自由に「ネットワーク アドレス」と「サブネット マスク」を決定する
    「クラスレス アドレッシング」というアドレッシング方法が用意されている。
  • このようなアドレッシング方法に「クラスレス アドレッシング」(VLSM or CIDR)がある。
    • VLSM:組織内のネットワークの細かなホストビットの割り当てに使用される。
    • CIDR:現在のインターネットでは、必要なグローバルIPアドレス数に合わせてサブネット マスクを決定する「CIDR」が使用されている。
      • インターネット上のAS(自律システム)間のルーティング情報の集約による、
        「ルーティング性能向上」、「ルーティング情報の管理の簡素化」のために使用される。
      • AS(自律システム)とは、各組織、企業やプロバイダが保有・運用する、インターネットに繋がる
        ひとつ(時に複数)のルーティング ポリシー配下にあるIPネットワークやルータの集合のことを言う。

IPv6アドレス詳細

タイプ

ユニキャストアドレス

  • IPv4のユニキャストと同じように、1対1の通信で利用されるアドレス。
  • 1つのインターフェースに割り当てられるアドレス。
  • スコープ毎に3つの異なるアドレスがある。

マルチキャストアドレス

  • IPv4のマルチキャストと同じく、1対グループの通信で利用されるアドレス。
  • 複数のインターフェースに割り当てられるアドレス。
ff00::/8 フラグ (4) スコープ (4) グループID (112)

エニーキャストアドレス

  • IPv4にはないアドレス。1対グループ内の1つとの通信で利用されるアドレス。
  • 複数のインターフェースに割り当てられる。
  • グループで最も近いデバイスとだけ通信できる。
  • マルチキャストと同じくグループ宛ての通信となるがグループに属する1つのインターフェースにパケットが到達すると、それ以上は配送されない。

スコープ

スコープ 範囲 説明
リンクローカル 同一セグメント 同一セグメント上の端末と通信できるアドレス。宛てのパケットはルーティングされない。
ユニークローカル 組織内ネットワーク IPv4のプライベートアドレスに相当。異なるセグメント上の端末と通信できる。
グローバル ネットワーク IPv4のグローバルアドレスに相当。全てのIPv6ネットワークで一意。

ユニキャストアドレス

グローバルユニキャストアドレス

グローバル ルーティング プレフィックス (48) サブネットID (16) ホストのインタフェースID (64)
  • プレフィックス
    • 2001::/16 — IPv6インターネット用アドレス
    • 2002::/16 — 6to4用アドレス
    • 2003::/163FFD::/16 — (当時)未割り当て

移行メモ: 原文は表の先頭を「グローバルユニキャストアドレス (48)」としていたが、 48bit のフィールド名としては「グローバル ルーティング プレフィックス」が正しい。 なお、グローバル ユニキャスト アドレス全体に割り当てられているのは 2000::/3 で、2001::/16 はその一部。

ユニークローカルアドレス

(ユニークローカルユニキャストアドレス)

FC00::/7 L (1) グローバルID (40) サブネットID (16) ホストのインタフェースID (64)
  • プレフィックス
    • FC00::/8(L=0)— 将来の定義用
    • FD00::/8(L=1)— アドレス中のグローバルID部分をランダムな値としていつでも誰でも利用可能なアドレス

リンクローカルアドレス

(リンクローカルユニキャストアドレス)

FE80::/10 0...0 (54) ホストのインタフェースID (64)
  • プレフィックスは FE80::/10。ただし後続 54bit は 0 と規定されるため、実質は FE80::/64

移行メモ: 原文は表で FE80::/10、直後の「プレフィックス」で FE80::/64 と 異なる値を挙げていたが、両者は矛盾ではなく上記の関係のため、その旨を明記した。

参考

Wikipedia

IPv6

普及

単にアドレス空間増やせばよかったのに、無駄なことして(互換性が無さ過ぎて)流行らなかった感。

※ 執筆当時(2021年)から状況は変わり、日本国内でも IPv4 over IPv6(IPoE / MAP-E・DS-Lite)の普及により、 一般家庭でも IPv6 接続が標準的になっている。


Tags: IT国際標準, インフラストラクチャ, 通信技術

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally