
OpenVPN 서버를 위한 고가용성 환경을 구축하려고 합니다. 두 개의 동일한 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
이것은 작동하는 것 같습니다. 두 개의 VPN 서버와 두 개의 클라이언트가 있는 Vagrant 환경이 있습니다. 네트워크가 실행되고 VPN 서버 중 하나에서 OpenVPN을 중지하면 다른 서버가 대신합니다.
그러나 다른 서버가 인계받기 전에 실제로 이 작업을 수행하는 데 오랜 시간이 걸립니다. 클라이언트가 서로 핑을 보내는 경우 핑이 계속되기까지 약 3분 정도 걸립니다. 내 생각엔 클라이언트가 다시 연결을 시도하고 있고 여기서 시간 초과가 문제인 것 같습니다.
OpenVPN에서 client.conf
다음 설정을 사용했지만 아무런 차이가 없는 것 같습니다(예, 구성을 변경한 후 클라이언트에서 OpenVPN을 다시 시작했습니다).
connect-retry 2
connect-retry-max 2
클라이언트가 다른 OpenVPN 서버로 더 빠르게 전환할 수 있도록 연결 시간 초과를 조정하려면 어떻게 해야 합니까?
답변1
keepalive 지시어는 이를 제어합니다:
# keepalive 지시문은 핑과 같은 오류를 발생시킵니다. # 주고받을 메시지 # 각 측이 언제인지 알 수 있도록 하는 링크 # 반대편이 내려갔습니다. # 10초마다 핑을 보내고 원격으로 작동한다고 가정합니다. # 동안 핑이 수신되지 않으면 피어가 다운됩니다. # 120초의 기간. 연결 유지 10 120