OpenVPNサーバー用の高可用性環境を作成しようとしています。これを行うには、2つの同一のVPNサーバーを使用し、クライアント構成で複数のリモートを指定します。
# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
remote vpn1 1194
remote vpn2 1194
remote-random
これはうまくいくようです。 2つのVPNサーバーと2つのクライアントを持つVagrant環境があります。ネットワークが稼働し、VPNサーバーの1つでOpenVPNを停止すると、他のサーバーが引き継ぎます。
ただし、他のサーバーが引き継ぐ前に、実際にこれを行うまでには長い時間がかかります。クライアントが相互にpingを実行する場合、pingが続行するまでに約3分かかります。私の推測では、クライアントは再接続を試みており、タイムアウトはここでの問題です。
OpenVPNでclient.conf
次の設定でプレイしましたが、何の違いもないようです(はい、設定を変更した後、クライアントでOpenVPNを再起動します)。
connect-retry 2
connect-retry-max 2
クライアントの接続タイムアウトを調整して、別のOpenVPNサーバーにすばやく切り替えるにはどうすればよいですか?
キープアライブディレクティブはこれを制御します。
#キープアライブディレクティブにより、pingに似た #メッセージがリンクを介して送受信されます #。これにより、各サイドはいつ #を認識しますか。 #10秒ごとにpingを実行し、リモート #ピアが120秒の間にpingを受信しなかった場合 #ピアがダウンしていると想定します。 キープアライブ10 120