複数の正しいサブネットへのOpenswan接続は機能しません。

複数の正しいサブネットへのOpenswan接続は機能しません。

Openswan(バージョン2.6.37)を使用して、ローカルネットワークからリモートサイトにIPsec VPNを接続しようとしています。リモートサイトの単一のサブネットにのみ接続しようとすると、すべてがうまく機能します。ところで、リモートサイトにアクセスしたい追加のサブネットがあります。

私の設定は次のとおりです。

conn myConn
        type=tunnel
        left=192.168.139.14
        leftsubnet=192.168.139.0/24
        leftxauthclient=yes
        right=X.X.X.X
        rightsubnet=172.16.1.0/24
        keyexchange=ike
        auth=esp
        authby=secret
        phase2alg=3des-sha1
        pfs=yes

rightsubnetに変更すると、rightsubnets次のようになります。

rightsubnets={172.16.1.0/24 192.168.3.0/24}

...これで接続は正常に作成されますが、リストの最後のサブネットのみを使用できます。172.16.1.0サブネットでpingを試みると失敗します。サブネットの順序を変更するとpingできますが、172.16.1.X他のサブネットでは何もpingできません。これは、Openswanがリストの最後のサブネットのみを使用して接続を作成するのと同じです。

私がここで何か間違っているのでしょうか?

記載されていないいくつかの追加情報(関連性があるかどうかはわかりませんが):私のOpenswanクライアントはNATを使用しているルーターの背後にあり、nat_traversal=yesその情報は私のファイルにあります。ipsec.conf

答え1

いつものように見えます複数のサブネットの区切り文字はカンマです。しかし、少なくともopenswan-2.6.32もスペースを使用できます。

/var/log/secure機能しない理由についての手がかりを含む可能性のある興味深い情報を記録する必要があります。またip x s sh、の出力を公開しますip x p sh

答え2

connトンネルの両端にある各サブネットに対して部分的な設定を行います。そのうちの1つだけ(最初の開始)SAネゴシエーションを開始し、2番目(またはそれ以上)は他のサブネットの新しいSPDのみを生成します。

答え3

正しく機能するには、サブネットリストの末尾に追加のカンマが必要なOpenSwanにバグがあるようです。努力する:

rightsubnets={172.16.1.0/24,192.168.3.0/24,}

最後に追加のカンマを書き留めます。

答え4

これをする必要があります

rightsubnets={172.16.1.0/24,192.168.3.0/24}

,項目を区切るには、スペースの代わりにコンマ()を使用してください。

関連情報