![OpenVPN 故障转移,保留相同的 IP 和证书?](https://linux22.com/image/670363/OpenVPN%20%E6%95%85%E9%9A%9C%E8%BD%AC%E7%A7%BB%EF%BC%8C%E4%BF%9D%E7%95%99%E7%9B%B8%E5%90%8C%E7%9A%84%20IP%20%E5%92%8C%E8%AF%81%E4%B9%A6%EF%BC%9F.png)
因此,我有一个 OpenVPN 服务器 (10.0.0.1),以及几个连接到它的 OpenVPN 客户端。该服务器通过 easy-rsa 生成的证书和密钥进行身份验证,并通过 ccd/ 文件分发一个唯一 IP (10.0.x.1) 和一些基本路由。效果很好!
但我想在其他地方再设置一个备用的 OpenVPN 服务器(例如 10.0.254.1),这样当主服务器宕机时,客户端就可以连接到该服务器。这很容易做到,只需在客户端配置文件中指定多个服务器即可。
但是: - 只需将主服务器证书和密钥复制或 rsync 到备份服务器就行了吗?虽然可以,但感觉很像黑客。 - 我也希望主服务器和备份服务器通过 OpenVPN 链接相互连接。
这里有点棘手:我希望连接到主服务器的客户端能够与连接到备份服务器的客户端通信。即:如果由于某种原因,客户端 10.0.1.1 连接到主服务器 10.0.0.1,而客户端 10.0.9.1 连接到备份服务器 10.0.254.1(即使它通常应该连接到 10.0.0.1),主服务器和备份服务器如何动态地确定路由?
例如,如果我通过单独的 OpenVPN 实例连接两个服务器。备份服务器是否有一种干净的方式让主服务器知道“嘿!10.0.9.1 刚刚连接到我,所以你应该通过我路由该 IP 的任何内容!” - 并且一旦客户端决定再次连接到主服务器,所有路由都会自行修复?