2023-01-11 · 5

VPC、子网、互联网网关与路由表

cloudvpc

这篇文章发布已超过两年,内容可能已过时。

什么是 VPN(Virtual Private Network)?

  • VPN 中文叫**“虚拟专用网”。顾名思义是“虚拟的”**专用网。想重新划分已建好的网络时,虽然可以逐一物理改造,但费钱费时,这时可以用 VPN 来解决。
  • VPN 指的是:把多台计算机连成专用网络时,逐一拉线成本高且存在物理脆弱性,因此利用互联网和加密技术构建通信系统。
  • 另外在构建特殊用途的内网时,也可以只用专线连接相关计算机,让第三方无法接入。

什么是 VPC(Virtual Private Cloud)?

借助 Amazon Virtual Private Cloud(Amazon VPC),你可以在自定义的虚拟网络中启动 AWS 资源。该虚拟网络既有使用 AWS 可扩展基础设施的优势,又与在自有数据中心运营的传统网络非常相似。— Amazon 官方文档

把上面介绍的 VPN 技术应用到云上就是 VPC(Virtual Private Cloud)。VPC 在 AWS 云中提供与其他客户完全逻辑隔离的网络空间,是用于在虚拟网络中创建 AWS 资源的资源。

  • VPC 从属于区域(region),在 AWS 内创建隔离的网络。
  • VPC 的名称和 IPv4 CIDR 块是必填项。
  • 在云上创建的资源默认建立在特定网络之上,并拥有用于访问的私有 IP。
  • 这些资源建立在特定 VPC 之上,因此会在 VPC 的 CIDR 范围内获得合适的 IP 分配。
  • 单个 VPC 的最大规模是 /16,即可使用 65,536 个 IP。
  • 使用私有网段。
    • 10.0.0.0 ~ 10.255.255.255(10/8 prefix)
    • 172.16.0.0 ~ 172.31.255.255(172.16/12 prefix)
    • 192.168.0.0 ~ 192.168.255.255(192.168/16 prefix)
  • 默认 VPC 的 CIDR 是 172.31.0.0/16。

什么是子网(Subnet)?

  • 要使用 VPC,必须有 Subnet。
  • Subnet 把 VPC 指定的 IP 范围切小后使用。
  • 子网的最大规模与 VPC 的最大规模相同。
  • 建议至少创建 2 个子网,这样即使一个可用区出问题服务也不会故障。

什么是互联网网关(Internet Gateway)?

互联网网关是水平扩展、高可用的冗余 VPC 组件,使 VPC 与互联网之间可以通信。
互联网网关有两个用途:为可路由到互联网的流量在 VPC 路由表中提供目标,以及为分配了公网 IPv4 地址的实例执行 NAT(网络地址转换)。
互联网网关支持 IPv4 和 IPv6 流量,不会给网络流量带来可用性风险或带宽限制。

  • Internet gateway 是让 VPC 中托管的资源与互联网通信的 AWS 组件,子网内 EC2 之类的资源要连互联网就必须有它。
  • Internet Gateway 是具备水平扩展性和高可用性的组件,网络带宽没有限制。
  • 它充当 VPC 内托管服务被外部世界访问的通道,同时也让 AWS 内托管的资源能连上互联网。
  • 也就是说,Internet Gateway 扮演通往外部互联网的通道角色

什么是路由表(Route Table)?

  • 路由表是与子网关联的资源。
  • 子网使用网络时,靠这张路由表找到目的地。
  • 路由表虽与子网关联,但它在创建 VPC 时生成,也与 VPC 关联。
  • 创建属于 VPC 的子网时,这张路由表被用作默认路由表。
  • 目的地是 VPC 的 CIDR 块时,会在内部范围内查找。
  • 要连接互联网或与其他 VPC 通信,必须在路由表中额外定义路由规则。

VPC 使用方法

填好 VPC 名称和合适的 IPv4 CIDR。上面 10.0.0.0/16 的范围是 10.0.0.0 ~ 10.0.255.255。然后点 Create VPC 创建。

可以看到创建成功。现在勾选新建的 VPC 后右键,点 Edit VPC Settings。然后把 DNS 相关的所有设置都勾选启用。

点 Save 后 VPC 创建就结束了。接下来转到 Subnet。

默认已存在一个 VPC,所以能看到预先有 4 个 Subnets。请点 Create subnet。

按上图设置。我在首尔的 ap-northeast-2a 区分配了 10.0.32.0/20 并创建。

可以确认创建成功。就这样在同一区域各创建 1 个 Public、2 个 Private,共建两个区域。

另一个区域建在了 2c。

最终成果如上。现在进入 Internet Gateway!

点 Create Internet gateway。

设置名称后点击 create internet gateway 创建。

然后通过 Actions -> Attach to VPC 把 Internet gateway 挂到 VPC 上。

这样创建的 VPC 就能使用互联网了。接下来去做路由。请进入 Route table!

点 Create route table。

选好名称和正确的 VPC 后点 Create route table。先创建把 public 们连起来的路由。

照上图选择 2 个 public 做 associations。

需要设置目的地不是 10.0.0.0/16 的数据包该去哪里。设置 0.0.0.0/0 让所有数据包流向刚才创建的 Internet Gateway。之后为每个 Private 创建各自的 route table。

最终成果。public 的路由中存在通向 Internet Gateway 的一条,但其余所有 private 都没有。因此只有 public 能上网,private 无法与互联网交互。

做到这里,基本的 VPC 配置就完成了。


原文(韩语): tistory — 发布于 2023-01-11,已迁移至本博客。本翻译由 AI 协助完成。

评论

删除这条评论?

相关文章

VPC、子网、互联网网关与路由表 · 나봄하랑