我在 AWS 的不同区域有不同的 VPC:
- 10.1.0.0/16(A)
- 10.2.0.0/16(B)
- 10.3.0.0/16(C)
我关注了这篇文章(http://cloudacademy.com/blog/openvpn-aws-vpc/) 开启一个 vpn 连接,以便让 B 中的服务器实例与 VPC A 私有子网中的 RDS 实例进行通信。
我在 ipsec.conf 中做了以下操作:
右子网=10.2.0.0/16
一切正常,但我该如何将 C 连接到 A?我需要打开另一个 OpenVPN 实例吗?我很确定有办法做到这一点。
答案1
对于同一区域的 VPC:
VPC 对等连接,设置与其他 VPC 的 VPC 对等连接。因此,如果 VPN 服务器位于 A,则创建从 A 到 B 以及从 A 到 C 的 VPC 对等连接。
http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide/Welcome.html
对于不同区域的 VPC 对等连接:
您可以使用 Openvpn 或 Strongswan 等软件 VPN
利用区域内的 AWS 网络设备和互联网管道 区域之间
https://s3.amazonaws.com/awsmedia/AWS_Amazon_VPC_Connectivity_Options.pdf
答案2
据我所知,您不需要多个 VPN 来连接多个 VPC。每个 VPC 中一个 VPN,配置为相应的路由即可。这里有一篇详细介绍的文章。请参阅“连接其他 VPC”部分
https://aws.amazon.com/articles/0639686206802544
不幸的是,为了实现对等,VPC 必须位于同一区域,因此对等将不起作用。连接不同区域的 VPC 稍微紧凑一些。以下是讨论不同选项的文章链接。最好的解决方案需要通过企业网络使用某种 VPN。
https://aws.amazon.com/answers/networking/aws-multiple-region-multi-vpc-connectivity/
以下是文章中的软件解决方案。有趣的是,“Ocedo AutoVPN 目前提供高级网络自动化,用于启动、管理和配置基于软件的 VPN 设备,以连接多个 VPC 和全网状 VPN 网络。”
软件 VPN 设备
此方法利用 Amazon VPC 功能在 EC2 实例之间创建 VPN 隧道,以便在不同区域的 VPC 之间路由流量。此选项使用客户或 AWS 合作伙伴网络 (APN) 成员管理的基于 EC2 的软件 VPN 设备,最适合希望使用其首选 VPN 软件提供商管理 VPN 连接两端的客户。
这种设计优化了跨区域网络传输成本,但它要求客户为 EC2 网络实例设计和管理自己的 HA 配置。
配置详细信息
此设计使用弹性 IP 地址和 VPC 互联网网关来促进软件 VPN 设备之间的通信。尽管 EC2 实例配置了公有 IP 地址,但 AWS 区域之间的网络流量默认会遍历 AWS 全球网络主干,这通常比基于互联网的等效连接提供更一致、更低延迟的网络连接。AWS Marketplace 提供了多种第三方和开源选项(包括 Cisco、Fortinet、Ocedo、OpenSWAN、OpenVPN、Palo Alto Networks、Sophos 和 Vyatta 的产品)用于实施软件 VPN 设备。Ocedo AutoVPN 目前提供高级网络自动化,用于启动、管理和配置基于软件的 VPN 设备以连接多个 VPC 和全网状 VPN 网络。
注意事项
AWS Marketplace 中提供的产品提供了额外的网络控制功能,用于监控和控制 VPC 之间的流量。这些功能包括额外的安全功能,例如增强监控、网络协议感知防火墙规则或通用威胁管理功能。请注意,客户必须在每个 VPC 中运行网络设备,这会导致额外的 EC2 费用,并且可能产生第三方许可费用。这些 EC2 实例还可能在网络架构中引入单点故障和潜在的网络瓶颈,因此请务必选择满足跨区域网络路由要求的 VPN 设备实例大小。最后,利用 EC2 的自动恢复或其他网络监控和恢复选项来减少恢复故障 VPN 设备的时间。