IPsec と IKE の管理

IPsec のセキュリティアソシエーションデータベース

IPsec セキュリティサービスのキー情報は、セキュリティアソシエーションデータベース (SADB) に保存されます。 セキュリティアソシエーションは、インバウンドパケットとアウトバウンドパケットを保護します。ユーザープロセス (場合によってはマルチ連携プロセス) では、特殊なソケットからのメッセージを送信することで SADB を管理します。SADB を保守するこの方法は、 route(7P) のマニュアルページで説明している方法に類似しています。SADB にアクセスできるのは、スーパーユーザーか、同等の役割を引き受けた人だけです。

オペレーティングシステムは、外部イベントに対する応答としてメッセージを自動的に発信する場合があります。たとえば、システムがアウトバウンドデータグラムに対する新しい SA を要求したり、既存の SA の期限切れを報告する場合です。先に説明したソケットコールを使用して、SADB 制御メッセージを伝えるためのチャンネルを開いてください。システムごとに複数のキーソケットを開くことができます。

メッセージには、小さいベースヘッダーがあり、そのあとにいくつかの拡張メッセージが続きます。拡張メッセージの数はゼロの場合もあれば、1 以上の場合もあります。メッセージの中には、追加データが必要なものもあります。ベースメッセージと拡張メッセージのいずれも 8 バイト配列である必要があります。たとえば GET メッセージの場合、ベースヘッダー、SA 拡張メッセージ、ADDRESS_DST 拡張メッセージが必要です。詳細については、pf_key(7P) を参照してください。