Unable to access internet from Private subnet | Error: Cannot find a valid baseurl

Unable to access internet from Private subnet | Error: Cannot find a valid baseurl

我正在尝试使用 NAT 实例而不是 NAT 网关;我也没有为 NAT 实例配置使用任何社区 AMI。

我正在尝试从我的个人进行 yum 更新,但出现以下错误:Cannot find a valid baseurl for repo: amzn-main/latest

我的AWS堆栈如下:

  1. VPC:附加了 Internet 网关 IGW1 的 VPC VPC1
  2. 子网:两个子网 - us-east-1a 中的 public 和 us-east-1b 中的私有子网。
    1. Public 子网:Subnet1.1-1a 具有路由 table [Public-IGW-1 与本地和 IGW1 - 0.0.0.0/0]。
    2. 私有子网:Subnet1.2-1b 具有路由 table [Private-1 以及本地和 NAT 实例 NAT EC2 1- 0.0.0.0/0]。
  3. 路线tables:
    1. Private-1 有路由 localNAT EC2 1 实例 - 0.0.0.0/0.
    2. Public-IGW-1 有路线 local 和 IGW1 - 0.0.0.0/0.
  4. 安全组:来自 VPC1 中 us-east-1aSubnet-1.1-1a-Public 在任何地方都有 SSH MyIP 和 HTTP。 Subnet1.1-1a-Private 来自 us-east-1b(必须重命名;否则欺骗)在 VPC1 中有入站 22 - 任何地方。
  5. 实例: NAT EC2 1 住在 VPC1Subnet1.1-1a,安全组 NAT SG 入站 80 - 任何地方 22。私有实例有 SG - 22 - 任何地方。 Public 实例有 SG - 22 - MyIP 和 80 - 任何地方。

我使用 scp 将我的密钥对复制到 public 实例中,并使用 ssh -i keypair ec2-user@private-ip-addr ssh-ed 到私有实例中。当我执行 sudo yum update 时,显示错误 canot find a valid baseurl。

我已确定 NACL 允许所有流量。

我想通了。 NAT 实例和 Public 实例必须在相同的安全组中。