
Juniperボックスへの継続的なVPN接続を確立しようとしています。ただし、いくつかの構成エラーがあります。 StrongSwanサービスを開始したときにトンネルが開いており、すべてのトラフィックが正常でした。ただし、数秒間トラフィックがない場合は接続が切断され、サービスを再起動する必要があります。バックグラウンドで VPN 宛先 IP アドレスに対して無限の ping ループを実行しても、接続は存在し続けます。私たちはこれがある種の接続維持に関する問題だと思います。可能な構成の不一致を見た人はいますか?
仕様シート - 両方のサイトが次のIPSec設定に同意します。
フェーズ 1 (鍵交換):
暗号化 {3DES, AES256}: AES256
データ整合性 {MD5, SHA1, SHA2}: SHA256
Diffie-Hellman {MD5, SHA1, SHA2}: 5
IKE SA 再ネゴシエーション {sec}: 86400
ステップ2(データ転送):
IPSec:ESP
暗号化{3DES、AES256}:AES256
データ整合性{MD5、SHA1、SHA2}:SHA256
PFS:はい
Diffie-Hellman:5
SAライフタイム{sec}:3600
IP圧縮:いいえ
関連する構成ファイルは次のとおりです。
ipsec.conf:
config setup
charondebug="ike 4, knl 4, cfg 4, net 4, esp 4, dmn 4, mgr 4"
conn %default
type=tunnel
authby=secret
ikelifetime=86400
lifetime=3600
keyexchange=ikev1
compress=no
dpdaction=restart
dpddelay=10s
dpdtimeout=500s
conn otto-105-183
also=otto
rightsubnet=10.108.105.183/32
conn otto-100-34
also=otto
rightsubnet=10.108.100.34/32
conn otto-100-35
also=otto
rightsubnet=10.108.100.35/32
conn otto
auto=start
ike=aes256-sha2_256-modp1536!
esp=aes256-sha2_256-modp1536!
left=%defaultroute
leftsubnet=10.107.54.33/32
leftfirewall=yes
right=my_public_IP_address ; redacted
Charon.conf:
charon {
keep_alive = 20s
crypto_test {
}
host_resolver {
}
leak_detective {
}
processor {
priority_threads {
}
}
start-scripts {
}
stop-scripts {
}
tls {
}
x509 {
}
}
答え1
VPNの切断と切断は(しばしば)タイムアウト交渉の問題のようです。
デバイスのdpdタイムアウトを変更することをお勧めしますVPNの両端30秒まで。両方とも同じ値を持つ必要があります。
Linux側で定義すれば十分です。
dpdtimeout=30s
場合によっては、サードパーティのハードウェアを扱うときに低いデッドピアタイムアウトを選択することが私の経験ではより成功しているようです。
DPD(Dead Peer Detection)は、ネットワークデバイス上の他のピアデバイスの現在の存在と可用性を確認するために使用される方法です。
デバイスは、暗号化されたIKEフェーズ1通知ペイロードをピア(RU-THEREメッセージ)に送信し、ピアからDPD承認(RU-THERE-ACKメッセージ)を待つようにDPD認証を実行します。 RU-THERE メッセージは、デバイスが指定された DPD 間隔内にピアからトラフィックを受信しない場合にのみ送信されます。デバイスがこの間隔内にピアからRU-THERE-ACKメッセージを受信すると、そのピアはアクティブと見なされます。デバイスがトンネルのピアからトラフィックを受信すると、そのトンネルのRU-THEREメッセージカウンタをリセットして新しいインターバルを開始します。デバイスがこの時間内にRU-THERE-ACKメッセージを受信しなかった場合、ピアは死んだと見なされます。