我正在尝试为我的 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
这似乎有效。我有一个 Vagrant 环境,其中有两个 VPN 服务器和两个客户端。一旦网络运行,我停止其中一个 VPN 服务器上的 OpenVPN,另一个服务器就会接管。
但是,在另一台服务器接管之前,它实际上需要很长时间才能完成此操作。如果我的客户端互相 ping,则大约需要 3 分钟才能继续 ping。我猜想客户端正在尝试重新连接,而超时是这里的问题。
在我的 OpenVPN 中,client.conf
我尝试过以下设置,但似乎没有任何区别(是的,我在更改配置后在客户端上重新启动了 OpenVPN):
connect-retry 2
connect-retry-max 2
我如何调整客户端的连接超时以使它们更快地切换到不同的 OpenVPN 服务器?
答案1
keepalive 指令控制这一点:
# keepalive 指令会导致类似 ping 的情况 # 要来回发送的消息 # 链接,以便双方知道何时 # 另一侧已经倒下。 # 每 10 秒 ping 一次,假设远程 # 如果在以下情况下未收到 ping 则表示对等端已关闭 # 120 秒的时间段。 保持活动 10 120