IPsec 実行中にシステムをトラブルシューティングする方法の調査で問題に対処できない場合は、ファイルの構文やサービス構成ではなく、構成の意味に問題があると考えられます。
ike:default と ike:ikev2 両方のサービスインスタンスが有効になっている場合は、IKEv2 と IKEv1 のルールが重複しないようにしてください。同じネットワークエンドポイントに適用されるルールによって IPsec SA が重複することがあり、これによって特定の状況で接続が失われる可能性があります。
IKE ルールを変更する場合は、ルールをカーネルに読み込みます。
# ikeadm -v[1|2] read rule
IKEv1 を実行中の場合は、ルール内のアルゴリズムのメカニズムが接続先の IKEv1 システムで利用できることを確認してください。利用可能なアルゴリズムを表示するには、IKEv2 をサポートしていないシステム上で ikeadm dump algorithms コマンドを実行します。
# ikeadm dump groupsAvailable Diffie-Hellman groups # ikeadm dump encralgsAll IKE encryption algorithms # ikeadm dump authalgsAll IKE authentication algorithms
両方のシステムで利用可能なアルゴリズムを使用するように、IPsec と IKEv1 両方のポリシーファイルを修正します。その後、IKEv1 サービスを再起動して IPsec サービスをリフレッシュします。
# svcadm restart ike:default; svcadm refresh ipsec/policy
IKEv1 で事前共有鍵を使用中にリモートの IKEv1 システムをリブートする場合は、ローカルシステム上で ipseckey flush コマンドを実行します。
自己署名付き証明書を使用している場合は、同じ DN を持つ証明書が再作成されていないことと、証明書のハッシュ値が一致していることを相手の管理者に確認します。確認の手順については、自己署名付き公開鍵証明書により IKEv2 を構成する方法の Step 4 を参照してください。
証明書を更新する場合は、新しい証明書をインポートしたあと、IKEv2 サービスをリフレッシュして再起動してください。
現在の IKEv2 構成を表示するには ikeadm -v2 dump | get コマンドを使用します。使用方法のサマリーについては、IKE 情報の表示を参照してください。
IPsec 関連の統計を表示するには kstat コマンドを使用します。詳細は、kstat(1M) のマニュアルページを参照してください。
# kstat -m ipsecesp # kstat -m ipsecah # kstat -m ip
次の例の kstat 出力は、ipsecesp モジュールに問題がないことを示しています。
# kstat -m ipsecesp module: ipsecesp instance: 0 name: esp_stat class: net acquire_requests 18 bad_auth 0 bad_decrypt 0 bad_padding 0 bytes_expired 0 crtime 4.87974774 crypto_async 0 crypto_failures 0 crypto_sync 172 good_auth 86 keysock_in 135 num_aalgs 9 num_ealgs 13 out_discards 0 out_requests 86 replay_early_failures 0 replay_failures 0 sa_port_renumbers 0 snaptime 5946769.7947628
保護されていないトラフィックを表示するには snoop コマンドを使用します。Wireshark アプリケーションは snoop 出力を読み取ることができます。snoop 出力の例は、IPsec によってパケットが保護されていることを確認する方法を参照してください。