IP ヘッダーの後に、ESP または AH を呼び出してデータグラムを保護するときに、トランスポートモードを使用します。たとえば、パケットが次のヘッダーで始まる場合です。
トランスポートモードでは、ESP は次のようにデータを保護します。
トランスポートモードでは、AH は次のようにデータを保護します。
AH は実際には、データグラムに出現する前のデータも保護します。その結果、 AH による保護は、トランスポートモードでも、IP ヘッダーの一部をカバーします。
データグラム全体が IPsec ヘッダーの保護下にあるとき、IPsec では、トンネルモードでデータグラムを保護しています。AH はその前にある IP ヘッダーの大部分を保護するため、トンネルモードは通常、ESP だけで実行します。先の例のデータグラムは、トンネルモードでは次のように保護されます。
トンネルモードでは、内部ヘッダーは保護されますが、外部 IP ヘッダーは保護されません。外部 IP ヘッダーのソースアドレスと宛先アドレスが、内部 IP ヘッダーのものと異なることがよくあります。それでも、IPsec を認識するネットワークプログラムで ESP の自己カプセル化を使用すれば、内部と外部の IP ヘッダーを一致させることができます。ESP の自己カプセル化により、IP ヘッダーオプションが保護されます。
IPsec の Solaris 実装は基本的にトランスポートモード IPsec 実装です。トンネルモードはトランスポートモードの特殊ケースとして実装されます。そのため、IP 内 IP トンネルを特殊なトランスポートプロバイダとして処理します。ifconfig(1M) 設定オプションを使用してトンネルを設定する場合、オプションは、ソケットのプログラミングでソケットごとの IPsec を使用可能にするときに使用するオプションとほぼ同じです。また、トンネルモードは、ソケットごとの IPsec で使用可能にできます。ソケットごとのトンネルモードでは、内部パケットの IP ヘッダーのアドレスが外部パケットの IP ヘッダーのアドレスと同じになります。ソケットごとのポリシーの詳細については、ipsec(7P) のマニュアルページを参照してください。
設定したトンネルは、ポイントツーポイントインタフェースです。このトンネルで、IP パケットを IP パケット内にカプセル化できます。トンネルの設定には、トンネルソースとトンネル宛先が必要です。詳細については、tun(7M) のマニュアルページと、『Solaris のシステム管理 (IP サービス)』の「IPv6 の Solaris トンネルインターフェース」を参照してください。
トンネルでは、IP との見かけ上の物理的インタフェースが作成されます。この物理的リンクの完全性は、基本になるセキュリティプロトコルによって異なります。セキュリティアソシエーションを確実に行えば、信頼性の高いトンネルになります。トンネルのデータパケットのソースはトンネル宛先で指定したピアでなければなりません。この信頼関係があるかぎり、インタフェース別 IP 送信を利用して仮想プライベートネットワークを作成できます。