如何在 OpenVPN 中定义多条路由?

如何在 OpenVPN 中定义多条路由?

我正在尝试设置一个服务器作为网关 - 基本上它将处理从 k8s 集群到外部世界(主要是 VPN 后面的数据库)的连接。

所以我有以下设置:具有特定路由的 OpenVPN 和充当网关的 HAProxy。

在我的 .opvn 配置文件中,我有类似这样的内容:

dev tun
persist-tun
persist-key
cipher AES-256-CBC
ncp-ciphers AES-256-GCM:AES-128-GCM
auth SHA1
tls-client
client
resolv-retry infinite
remote A_REMOTE_IP_ADDRESS 1199 udp4
verify-x509-name "vpn.mycompany.com" name
auth-user-pass
pkcs12 myp12file.p12
tls-auth mytls-tls.key 1
remote-cert-tls server

route-nopull
route DATABASE_A_IP_ADDRESS 255.255.255.0
route DATABASE_B_IP_ADDRESS 255.255.255.0
route 192.0.0.0 255.255.255.0

verb 4
ping 5

log-append /var/log/openvpn/sellbievpn.log
status /var/log/openvpn/sellbievpn-status.log

HAProxy 配置如下:

frontend entry
    bind :1433
    mode tcp
    use_backend sqlserver

backend sqlserver
    mode tcp
    server sqlserver DATABASE_A_IP_ADDRESS check

现在,如果我尝试连接,myserver:1433我可以成功连接到 DatabaseA。所以这很完美,这个概念可行。但我找不到连接到 DatabaseB 的方法,即使它们共享同一个 VPN 网络。所以我猜问题应该出在我如何配置上routes

有什么想法吗?谢谢。

答案1

您需要push "route [subnet] [netmask]"在您的服务器配置中进行此操作。

相关内容