【IP編】プロトコルの基本を学ぶ
IPプロトコルについてのまとめです。OSI参照モデルではネットワーク層、TCP/IPではインターネット層として定義されています。上位層から受け取ったデータにIPアドレスを含むIPヘッダを付与し、相手先ノードとの通信を可能とするプロトコルです。
![](https://assets.st-note.com/img/1725371315-pOAjeVs4cP2JikvolwUyK980.jpg?width=1200)
IPプロトコル
IP(Internet Protocol)は信頼性の高いノード(ポート)間の通信を提供し、HTTP、FTP、SMTP、SSH、Telnetなどのアプリケーション層プロトコルで利用されています。現状では主にIPv4が利用されていますが、世界的にIPアドレスの枯渇が懸念されており、徐々にIPv6への移行が進められています。
IPv4フォーマット
![](https://assets.st-note.com/img/1725254457111-7P68HnLfDA.jpg?width=1200)
以下はIPv4フォーマットの各項目の説明です。
バージョン
IPプロトコルのバージョン
IPv4では"4"、IPv4では"6"ヘッダ長
IPヘッダの長さを32bit単位で示すサービスタイプ
Type Of Serviceの値でパケットの優先順位や使われ方を定義
0000:標準
0001:最小
0010:最大信頼性
0100:最大スループット
1000:最小遅延パケット長
全体のサイズ(ヘッダ+データ部)識別子
分割されたパケットを結合する際の識別子フラグ
パケット分割(フラグメント化)に関する制御情報フラグメントオフセット
フラグメントされたパケットが元のパケットのどの位置であったかを示す生存回数(TimeToLive)
パケットが通過できるL3スイッチとルータの数の合計値。
他のプロトコルでは秒数[s]プロトコル
上位のトランスポート層で使われたプロトコル
1:ICMP
6:TCP
17:UDPチェックサム
IPヘッダのチェックサム値送信元IPアドレス
宛先IPアドレス
オプション
デバッグやテストの際に利用される
ログや経路の指定などパディング
32bit単位となるように0埋めするデータ部
32bit単位で可変長
IPv6フォーマット
![](https://assets.st-note.com/img/1725254496568-2aLEpmy5sx.jpg?width=1200)
以下はIPv6フォーマットの各項目の説明です。
バージョン
IPプロトコルのバージョン
IPv4では"4"、IPv4では"6"トラフィッククラス
IPv4のType Of Serviceに該当
Quality of Serviceとして利用が期待されているフローラベル
パケットの経路を統一するためのラベル。QoSに関わる。同じフローラベル、送信元IPアドレス、宛先IPアドレスをもつパケットは同じ経路で転送されるため、パケットが並び替えられることを防ぐことができる。ペイロード長
ヘッダ長は含まないペイロード部の長さ。
なお、IPv6ヘッダは固定長であり、可変長の拡張ヘッダを利用した場合、その長さはペイロード長に含まれる。ネクストヘッダ
次に存在する拡張ヘッダーの種類を数字で示し、
TCP/UDPなどの上位層ヘッダーも示すことができる
複数の拡張ヘッダーを連結するために必要ホップリミット
IPv4の生存回数(TimeToLive)と同義。ルータを通過する度に1ずつ減算され、0になると該当パケットが破棄される
IPSec
IPSecはInternet Protocolに暗号化と認証の仕組みを追加したプロトコルです。まず、受信者と送信者の間でIKE(Internet Key Exchange Protocol)プロトコルを用いて、事前共有鍵(Pre-Shared Key)で通信路であるSA(Security Association)を確立します。この際、送信用と受信用の双方向のSAを確立する必要があります。
このSAが確立した状態で、実際のデータを運ぶのに必要になってくるプロトコルがAH or ESPというプロトコルです。情報漏洩や改ざんを防ぐ処理を行います。ESPが使われるケースが多いです。どちらもシーケンス番号を持ち、リプレイ攻撃の対策とされています。
AH(Authentication Header)認証ヘッダ
送信者認証データを含むヘッダーを追加するプロトコルです。パケットを受信した受信者はペイロードからの暗号化ハッシュ値をヘッダーと比較して、両方の値が一致することを確認し、データの完全性を保証します。HMACやAESに基づくC
MACが利用されることが多いです。データの暗号化は実施されていません。
ESP(Encapsulated Security Payload)カプセル可セキュリティペイロード
共通鍵暗号アルゴリズムによる暗号化に加えて、AHと同様に完全性を保証します。ESPヘッダにより、このヘッダ以降からESPトレーラまでが暗号化されていることが読み取れるようになるため、ESPヘッダは暗号化されません。
トランスポートモードとトンネルモード
IPSecのセキュリティ機能を担うAHとESPですが、どちらにもトランスポートモードとトンネルモードという通信モードが存在します。
![](https://assets.st-note.com/img/1725371428-cG08fFZ5IMp4KWdkjlxnJQgo.jpg?width=1200)
トランスポートモード
オリジナルデータのIPの後ろにAHヘッダかESPヘッダを付与するモードです。オリジナルのIPで通信が行われるため、IPsecが実装されたホスト間でのIPsec-VPNで主に利用されます。トンネルモード
オリジナルのIPパケット全体をカプセル化するモードです。IPsecが実装されたルータ間でのIPsec-VPNで主に利用されます。