在线客服

在 AWS 中通过 VPC 对等连接 建立两个账户之间的内网互通后,A账号的服务(如Nginx)内网访问 B账号的服务

⏱️2025-12-28 09:00 👁️24

在 AWS 中通过 VPC 对等连接实现跨账户内网互通:A 账号 Nginx 访问 B 账号服务指南

AWS 提供了 VPC 对等连接(VPC Peering)功能,使不同账号下的 VPC 网络可以安全地实现私有 IP 通讯。本文将简要介绍如何让 A 账号 中的 Nginx 服务通过内网访问 B 账号 的服务。

🌐 步骤1:创建 VPC 对等连接

  • A 账号B 账号 发起 VPC 对等连接请求,填写对方 VPC 的 ID 和账号。
  • 对方账号登录后,在 AWS 控制台 “VPC -> Peering Connections” 页面接受请求。

🔁 步骤2:配置路由表

  • A 账号B 账号 的相关 VPC 路由表中,添加到对方 VPC 地址段的路由,
    目标指向刚建立的 Peering Connection。
  • 示例:A VPC CIDR 为 10.0.0.0/16,B VPC CIDR 为 192.168.0.0/16。那么在 A 的路由表中添加 目标 192.168.0.0/16 ,下一跳为对等连接 ID,B 反之亦然。

🔒 步骤3:安全组与网络 ACL 设置

  • 确保 B 账号 的服务实例(如 EC2)的 Security Group 允许来自 A VPC 段的入站流量(对应端口,如 80/443)。
  • 若有限制,A 账号 的实例也需放通出站到 B VPC 段和目标端口。
  • 同时检查 Network ACL,有需要同样放通对端流量。

🚦 步骤4:DNS 解析处理(如适用)

  • 若使用 AWS Private Hosted Zone,需跨账户授权解析,或者直接用对方实例私网 IP 地址。

🍀 步骤5:Nginx 配置示例(A账号)

location /b-service/ {
    proxy_pass http://192.168.x.x:8080/;  # B 账号实例的私有 IP 及端口
}

现在,A 账号下的 Nginx 就能通过内网方式访问 B 账号服务,无需公网流量,通信更安全高效!🚀

✅ 常见问题

  • 对等连接不支持传递路由,不能通过第三方转发 VPC 流量。
  • 请定期审核安全组和路由,避免过度暴露资源。
  • 若遇访问失败,可用 ping、telnet 或 nc 工具测试连通性。

🎉 总结

通过 AWS VPC 对等连接,两账户内的 VPC 就像单一内网一样互联,只要配置恰当,即可轻松实现服务间的安全高速访问。如果有更复杂场景需求,也可考虑 Transit GatewayVPN 等方案。