是否可以通过 Google Cloud VPN 使用服务器的外部 IP(公共)设置 VPN

是否可以通过 Google Cloud VPN 使用服务器的外部 IP(公共)设置 VPN

我想通过远程 ISP 数据中心的外部 IP(而非服务器的内部 IP)设置 IPSec VPN 到位于 Google Cloud 的服务器。可以吗?我在 Google 上找到的所有文档都是关于基于私有 IP(本地和远程)的加密域的 IPSec VPN。

以下是我想要设置的内容:

    Remote_Server
     "Public IP"
          |
          |
   "Public_IP_peer"
   [Remote_ISP_Peer]
          |
 (IPSEC_VPN_through_Internet)
          |
  "Public_IP_Google_Cloud_VPN"
    [Google_Cloud_Platform]
          |
          |
  "External_IP_Public"
 Local_Server_in_Google_Cloud

答案1

不幸的是这是不可能的使用云 VPN连接到外部的您的虚拟机实例的 IP。

查看文档云 VPN

Cloud VPN 安全地连接您的对等体网络到您的虚拟私有云 (VPC)通过网络IPsec VPN连接。两个网络之间传输的流量由一个 VPN 网关加密,然后由另一个 VPN 网关解密。

并在部分规格

Cloud VPN 仅支持站点到站点 IPsec VPN 连接,但需遵守本节列出的要求。它不支持客户端到网关 (road warrior) 场景。

此外,在文档中网络和隧道路由部分支持的网络

Cloud VPN 支持 VPC 自定义网络、自动模式网络和传统网络;

此外,在文档中IP 地址

每个虚拟机实例可以有一个主内部 IP 地址、一个或多个辅助 IP 地址和一个外部 IP 地址。要在同一虚拟私有云 (VPC) 网络上的实例之间进行通信,您可以使用实例的内部 IP 地址。要与互联网通信,您必须使用实例的外部 IP 地址,除非您已配置某种代理。同样,您必须使用实例的外部 IP 地址连接到同一 VPC 网络之外的实例除非网络以某种方式连接,例如通过云 VPN

因此,您将能够从本地网络连接到内部的使用时仅显示您的服务器的 IP云 VPN

解决方法, 你可以创建防火墙规则允许来自远程公共 IP 的流量GCP 防火墙是否适用于您的用例。在某些情况下,您可以使用Cloud IAP通过以下方式安全访问 GCP VM 实例SSH 或 RDP

答案2

GCP IPsec VPN 支持接受具有公共 IP 地址范围(CIDR 块)和私有 IP 地址范围(CIDR 块)的路由。您可以自由使用这两种 IP 地址范围(公共和私有)指向您的本地网络。有关详细的 VPN 配置,请参阅1

答案3

GCP 可以接受来自 Cloud VPN IPSec 隧道的具有公共 IP 地址范围的路由。这意味着在 Google Cloud 中,您可以通过 VPN IPsec 隧道通过公共 IP 地址访问本地服务器。但是,如果您想通过 VPN IPsec 隧道访问 Google Cloud 中的 VM 实例,则只能通过私有 IP 地址访问 VM 实例。是的,对于 VM 实例,只有内部 IP 地址连接到其网络接口。外部 IP 地址仅用于与 Internet 通信。请参阅Google Cloud 中不同 IP 地址范围的 Google 公共文档

对于你的情况,我可以找到两种解决方案: 您可以从当前 ISP 获取多个公共 IP 地址,并将公共 IP 地址分配给 Google Cloud 中的虚拟机实例,然后通过 VPN IPSec 隧道将公共 IP 地址通告回您的 ISP 环境 您只需继续在 Google Cloud 中为您的虚拟机实例使用私有 IP 地址,并且仅将 /32 路由通告给您的 ISP 环境,发生 IP 地址冲突的风险就会非常低。

相关内容