关于 VPC 网络
IBM Cloud® Virtual Private Cloud (VPC) 网络为部署云资源提供了一个私有、隔离和软件定义的网络环境。 它可以帮助你控制资源如何在 VPC 内、跨专用网络以及与公共互联网进行通信,同时默认情况下保持强大的隔离性和安全性。
以下各节将解释 VPC 网络概念以及不同网络组件如何协同工作,以帮助您设计安全、可扩展的网络架构。
VPC、区域、区和子网
在使用 VPC 之前,请查看适用于部署的_区域_、_区_和_子网的_基本概念。
区域
区域由一个或多个区域组成的独立地理区域。是对部署 VPC 的地理区域的抽象。 每个区域包含多个 分区一个区域内的一个位置,作为一个独立的故障域,与该区域其他区域的延迟较低。。 VPC 可以跨其分配的区域内的多个专区。
IBM Cloud 提供两级区域:
- 多区区域分布在多个区域物理位置的区域,以提高容错性。- 具有三个或更多区的区域,可用性高。
- 单校区多区域一个由多个区域组成的区域,位于同一栋建筑或园区内。 电源、冷却、网络和物理安全等依赖性可能会被共享,但旨在提供高度的故障独立性。 - 一个园区内有多个区域。
有关区域的更多信息,请参阅 资源部署位置。
专区
区域是一个区域内的故障隔离数据中心。 VPC 中的每个区域都会分配一个默认地址前缀,指定可创建子网的地址范围。 如果默认地址方案不能满足您的要求,您可以自定义地址前缀。 例如,您可能希望使用自己的公共 IPv4 地址范围。 更多信息,请参阅 自带子网。
逻辑区名称与物理区的映射是相对于每个账户而言的。 因此,不同账户的区域默认地址前缀范围可能不同。 更多信息,请参阅 区域映射。
子网
子网是 VPC 中部署资源的 IP 地址范围(CIDR 块)。 子网可为工作负载提供网络分段和隔离。 更多信息,请参阅 关于子网。
子网特征
- 每个子网由指定的 IP 地址范围(CIDR 块)组成
- 子网与单个区域绑定,不能跨越多个区域或地区
- 同一 VPC 中的子网通过隐式路由器自动相互连接
- 每个子网保留特定的 IP 地址供系统使用
寻址和系统预留 IP 地址
创建子网时,CIDR 范围内的某些 IP 地址将由 IBM 保留,用于运行 VPC。 这些地址不能分配给您的工作负载。 例如,如果子网的 CIDR 范围是 10.10.10.0/24,则保留以下地址:
-
CIDR 范围内的第一个地址 (
10.10.10.0):网络地址 -
CIDR 范围内的第二个地址 (
10.10.10.1):网关地址 -
CIDR 范围内的第三个地址 (
10.10.10.2):由 IBM -
CIDR 范围内的第四个地址 (
10.10.10.3):由 IBM 保留,以备将来使用 -
CIDR 范围内的最后一个地址 (
10.10.10.255):由平台保留(传统上是广播地址)规划子网大小,以便为工作负载提供足够的可用 IP 地址。
VPC 网络模型
VPC 网络围绕三个连接范围构建:
- 内部连接- 单个 VPC 内资源之间的通信
- 专用连接--在不使用公共互联网的情况下与其他专用网络进行资源通信
- 外部连接- 与公共互联网或从公共互联网进行资源通信
这些范围可帮助您根据使用情况选择适当的网络服务,并设计出符合安全和性能要求的架构。
内部 VPC 连接
内部连接可实现单个 VPC 内资源之间的通信。 这种连接是自动的、专用的,无需额外配置即可进行基本的子网对子网通信。 同一 VPC 中的所有子网都通过隐式路由器连接,从而实现子网与子网以及实例与实例之间的私有通信。 您无需为 VPC 内的基本连接配置路由表或静态路由。
这种内部连接支持常见的架构,如多层应用(网络、应用和数据库子网)、实例之间的东西向流量以及用于高可用性的跨区通信。
虚拟网络接口
所有参与联网的 VPC 资源都通过使用虚拟网络接口 (VNI) 连接到网络。 VNI 是连接资源和子网的网络接口的逻辑表示。
虚拟网络机构的主要特点:
- 在特定子网内创建
- 从子网的 CIDR 范围内分配一个私有 IP 地址
- 作为安全小组的连接点
- 可与浮动 IP 地址关联,用于外部连接
- 为交通流、安全执行和连接奠定基础
VNI 可帮助您控制细粒度的网络访问,并提供管理网络配置的灵活性。 更多信息,请参阅 关于虚拟网络接口。
内部连接的安全控制
VPC 内的流量受多层安全控制的管理,这些控制共同保护您的资源。
安全组
安全组通过控制单个资源的入站和出站流量,提供有状态的实例级安全。 在 VNI 层面应用时,安全组会维护连接状态信息,从而自动允许允许的连接返回流量,而不需要明确的规则。 更多信息,请参阅 关于安全组。
网络 ACL
网络访问控制列表(ACL)通过过滤进入或离开子网的流量,提供无状态的子网级安全性。 与安全组不同,网络 ACL 是无状态的,这意味着必须通过单独的规则明确允许返回流量。 网络 ACL 应用于子网级别,影响子网内的所有资源,并提供粗粒度过滤,作为基准安全策略。 更多信息,请参阅 关于网络 ACL。
路由表和路由
VPC 使用路由表来控制 VPC 内部和外部的流量定向。 虽然隐式路由器会自动处理基本的子网到子网连接,但您可以创建自定义路由,以实施高级路由方案并更精确地控制流量。
在以下情况下使用自定义路由表:
- 要覆盖特定子网或流量源的默认路由行为。
- 通过虚拟网络设备路由流量,以进行检查或处理。
- 实施具有集中式服务的中心辐射网络拓扑结构。
- 控制如何路由来自互联网或 VPN 连接的入口流量。
- 实施具有多个路由域的高级网络架构。
更多信息,请参阅 关于路由表和路由。
单个 VPC 以外的专用连接
专用连接可使您的 VPC 与其他网络通信,而无需在公共互联网上路由流量。 所有流量都保留在 IBM Cloud Private 主干网上,从而提供更高的安全性、更低的延迟和可预测的性能。
连接多个 VPC
使用 IBM Cloud® Transit Gateway 在多个 VPC 之间启用可扩展路由。 Transit Gateway 提供:
- 跨区域连通性- 跨不同 IBM Cloud 区域连接 VPC
- 跨账户连接- 跨不同 IBM Cloud 账户连接 VPC
- 辐辏拓扑结构- 通过单一中转网关实现集中连接
- 传递路由- 实现连接网络之间的通信
Transit Gateway 是需要集中网络管理和跨多个 VPC 连接的企业架构的理想选择。 有关更多信息,请参阅关于 IBM Cloud Transit Gateway。
连接内部网络
使用以下选项将 VPC 连接到内部部署数据中心或其他云环境:
VPN for VPC
VPN for VPC 通过互联网在 VPC 和远程网络之间提供加密连接。 该解决方案非常适合混合云架构,在这种架构中,您需要将 VPC 连接到内部部署的数据中心,实现用户的远程访问,或在不同地点之间建立站点到站点的连接。
VPN for VPC 它使用行业标准加密协议来保护传输中的数据安全,并支持高吞吐量,因此适合带宽密集型工作负载。 您可以使用基于策略或基于路由的方法配置 VPN 连接,具体取决于您的网络要求和内部 VPN 设备的功能。
- 基于策略的 VPN 使用访问控制列表来确定哪些流量需要加密并通过隧道发送。
- 基于路由的 VPN 使用路由表引导流量通过 VPN 连接,为复杂的网络拓扑提供了更大的灵活性。 更多信息,请参阅 关于 VPN for VPC。
Direct Link
IBM Cloud® Direct Link 在您的内部部署基础设施和 IBM Cloud 之间提供专用的物理连接。 该解决方案专为需要一致性能的高带宽工作负载、对延迟敏感的应用,以及监管合规要求限制数据穿越公共互联网的场景而设计。
Direct Link 提供具有可预测性能特点的专用带宽,可确保您的网络流量不受互联网拥塞或路由变化的影响。 您可以从以下选项中进行选择:
- Direct Link 专用,提供单租户连接,带宽专供您使用。
- Direct Link 连接,通过网络服务提供商提供多租户连接。
这两种方案都提供完全绕过公共互联网的专用连接,让您可以更好地控制网络路径,并提高敏感数据传输的安全性。 有关更多信息,请参阅关于 IBM Cloud Direct Link。
私下获取 IBM Cloud 服务
使用以下选项从 VPC 访问 IBM Cloud 服务,而不会将流量暴露在公共互联网上:
虚拟专用端点(VPE)
虚拟专用端点允许 VPC 中的资源使用 VPC 地址空间中的专用 IP 地址访问支持的 IBM Cloud 服务。 当您需要访问 IBM Cloud Object Storage 对象存储、Key Protect 加密密钥管理或托管数据库服务等服务时,无需通过公共互联网路由流量,这种功能非常有用。 有关更多信息,请参阅 关于虚拟专用端点。
专用路径
IBM Cloud 专用路径可通过 IBM Cloud Private 网络为 IBM、合作伙伴或客户托管的服务实现消费者到提供商的专用连接。 如果您需要访问第三方服务、合作伙伴解决方案或定制应用程序,而又不想将流量暴露在公共互联网上,这种解决方案就非常有价值。 更多信息,请参阅 关于 IBM Cloud Private Path。
外部连接
外部连接可实现 VPC 资源与公共互联网之间的通信。 默认情况下,所有 VPC 资源都是私有的,不能从互联网访问。 您必须使用网络地址转换(NAT)明确启用外部连接。
网络地址转换 (NAT)
网络地址转换(NAT)是一种将 VPC 内部使用的私有 IP 地址映射到可与互联网通信的公有 IP 地址的方法。 由于 VPC 资源使用来自 RFC 1918 地址范围(如 10.0.0.0/8、172.16.0.0/12 和 192.168.0.0/16 )的私有 IP 地址,而这些地址在公共互联网上是不可路由的,因此 NAT 对于外部连接至关重要。 NAT 通过将私有 IP 地址转换为公共 IP
地址,使这些私有资源能够与互联网服务通信。
IBM Cloud VPC 支持两种类型的 NAT:
- 源 NAT (SNAT)
- 将出站流量的源 IP 地址从专用 IP 转换为公用 IP。 这种行为允许虚拟服务器实例启动与互联网的连接,同时隐藏其私有 IP 地址。 SNAT 通过公共网关实施,并使用_多对一_映射,即多个实例共享一个公共 IP 地址。
- 目的地 NAT (DNAT)
- 将入站流量的目标 IP 地址从公共 IP 转换为专用 IP。 此行为允许外部客户端启动与 VPC 中实例的连接。 DNAT 通过浮动 IP 地址实现,并使用_一对一_映射,即每个公共 IP 地址对应一个私有 IP 地址。
外部连接选项
IBM Cloud VPC 为外部连接提供了以下选项:
公共网关
公共网关使子网中的所有实例都能访问互联网,进行向外连接。 实例无法接收来自互联网的入站连接。
在以下情况下使用公共网关:
- 需要从互联网下载软件更新或软件包的实例
- 应用程序需要对外部服务进行 API 调用
- 多个实例需要出站互联网访问,而不会将它们暴露在入站流量中
更多信息,请参阅 关于公共网关。
浮动 IP 地址
浮动 IP 地址是一个公共 IP 地址,可与虚拟网络接口关联,为单个实例提供双向互联网连接。
在以下情况下使用浮动 IP 地址:
-
将网络服务器、应用程序或应用程序接口端点暴露在互联网上
-
提供从互联网访问实例的 SSH 或 RDP 访问权限
-
促进特定实例的双向连接
-
实施堡垒主机或跳跃服务器
将浮动 IP 与实例关联后,实例就会暴露在入站互联网流量中。 使用安全组和网络 ACL 控制访问并保护实例。
更多信息,请参阅 关于浮动 IP 地址。
下表重点说明了公共网关和浮动 IP 之间的区别:
| 功能 | 公共网关 | 浮动 IP |
|---|---|---|
| 方向 | 仅限出境。 实例可以启动互联网连接,但不能接收入站连接 | 双向。 实例可以启动和接收连接 |
| 作用域 | 整个子网 | 单个实例 |
| NAT 类型 | 源 NAT (SNAT)- Many-to-1 NAT | 目的地 NAT (DNAT)- 1-to-1 NAT |
| 用例 | 软件更新、软件包下载、对外 API 调用 | 网络服务器、应用程序端点、SSH 访问 |
| 安全性 | 保护实例不受入站互联网流量的影响 | 实例暴露于互联网入站流量(使用安全组控制访问) |
公共地址范围
公共地址范围是一组连续的 IBM 提供的公共 IP 地址,您可以将其保留并绑定到可用性区域中的 VPC。 与提供单个公共 IP 地址的浮动 IP 地址不同,公共地址范围提供的是连续的公共 IP 地址块,可用于高级路由选择和安全方案。
在以下情况下使用公共地址范围:
-
通过集中式安全设备或防火墙对输入的互联网流量进行路由检查。
-
避免单独管理多个浮动 IP 地址,而是通过单一、可扩展的 IP 范围处理流量。
-
为可扩展的路由选择和安全策略分配连续的公共 IP 地址块。
-
利用 VNF 设备或第三方安全解决方案实施高级网络架构。
公共地址范围不能直接分配给资源。 它们只用于入口自定义路由表,将流量导向防火墙等下一跳目标资源。 查看并自定义安全组规则、网络 ACL 和出口路由,以控制公共地址范围 IP 的流量。
更多信息,请参阅 关于公共地址范围。
网关服务比较
下表总结了 VPC 网关服务的功能:
| 功能 | 公共网关(SNAT) | 浮动 IP(DNAT) | Network ACL | VPN for VPC |
|---|---|---|---|---|
| 出境互联网接入 | 是 - 整个子网 | 是 - 单实例 | 不适用 | 不适用 |
| 入境互联网接入 | 否 | 是 - 仅限于单个实例 | 是 - 受规则限制 | 否 |
| 访问控制 | 防止入站流量的实例 | 需要安全组的保护 | 按服务、协议或端口进行无状态过滤 | 加密的站点间连接 |
| 可伸缩性 | 支持每个子网数千个实例 | 每个实例一个浮动 IP | 适用于整个子网 | 支持多个 VPN 连接 |
| 用例 | 仅限出境的互联网接入 | 面向公众的服务 | 基线子网安全 | 混合云连接 |
负载平衡和 DNS 服务
VPC 提供负载平衡和 DNS 服务,以分配流量、提高可用性,并在整个网络架构中实现服务发现。
用于 VPC 的负载平衡器
IBM Cloud VPC 负载平衡器在多个实例之间分配流量,以提高应用程序的可用性和性能。
负载平衡器类型
- 应用负载平衡器- 第 7 层负载平衡,具有基于 HTTP / HTTPS 流量的高级路由功能
- 网络负载平衡器- 用于 TCP 和 UDP 流量的第 4 层负载平衡,吞吐量高,延迟低
负载平衡器部署选项
- 公共负载平衡器- 将来自互联网的流量分配给 VPC 中的实例
- 专用负载平衡器- 在内部资源之间或从专用网络分配流量
负载平衡器与 VPC 子网、VNI 和安全控制无缝集成,提供完整的流量分配解决方案。 有关详细信息,请参阅 关于 IBM Cloud Load Balancer for VPC。
DNS Services
IBM Cloud® DNS Services 为你的 VPC 资源提供权威的 DNS 名称解析,并实现跨网络架构的服务发现。 DNS Services 通过为资源和服务提供名称解析,在所有三个连接范围(内部、私有和外部)中都发挥着至关重要的作用。 有关更多信息,请参阅关于 DNS Services。
后续步骤
了解了 VPC 网络概念后,您就可以