问题标签 [aws-vpc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
138 浏览

amazon-ec2 - 自定义 VPC 中的错误

这个有什么解决办法??我试图从头开始设置新的 VPC。我在孟买地区创建了一个 CIDR 为 10.0.0.0/16 的 VPC。并创建了一个 Internet Gate 方式并附加到这些 VPC。创建了两个子网 1)10.0.1.0/24,有公共 IP,在可用区 US-East-1a 2)10.0.2.0/24 没有公共 IP,在可用区 US-East-1b 两个子网都在不同的区域

创建两个路由表 1.Route table1 与公共子网(10.0.1.0/24)并添加 Internet 网关。2.Route Table2 带私有子网(10.0.2.0/24) 不带互联网网关

修改了默认的 NETWORK ACL 以仅允许 HTTP、HTTPS、TELNET、SSH 的入站流量用于出站流量 -ALLOW ALL

我用 PUBLIC SUBNET(10.0.1.0/24) 启动了一个 EC2 实例,这些 EC2 实例有公共 IP 和私有 IP。和 EC2 安全组 INBOUND- HTTP、HTTPS、SSH 用于 0.0.0.0/0 出站 -ALL 用于 0.0.0.0/0

我能够登录到 ec2 控制台和 sudo -i 成为 sudo 用户

确认我能够正确连接到互联网

然后当我尝试执行 yum update -y 或尝试执行 yum install httpd

我收到以下错误

"# yum 更新 -y

当我使用公共 IP 启动实例并拥有 Internet 网关并为 ec2 实例级别和 VPC 级别打开 HTTP、HTTPS、SSH 端口时 - HTTP、HTTPS、SSH、TELENET 已为入站打开,仍然出现上述错误。?

0 投票
0 回答
117 浏览

amazon-web-services - AWS Elastic Beanstalk 的私有静态 URL

我在弹性 beantalk 中运行了多个服务。说服务 A、服务 B 和服务 C。这 3 个服务应该在同一个网络上。所有这些服务都与来自路由 53 的域名连接,并分别指向私有 IP:

  1. a.example.com --> 10.0.0.11
  2. b.example.com --> 10.0.0.12
  3. c.example.com --> 10.0.0.13

现在的问题是当 Elastic beanstalk 重新启动时,它会创建一个具有新私有 IP 的新机器。因此,我无法对私有 IP 地址进行硬编码,而是需要一个静态私有 IP 或 Elastic Beanstalk 的名称。此外,我不能将弹性 beanstalk 的公共 URL 用于路由 53 记录,因为这些应用程序需要是私有的。

基本网络架构供参考。 在此处输入图像描述

有什么帮助吗?

0 投票
1 回答
995 浏览

amazon-web-services - 如何从 AWS VPC 获取可用子网?

我正在尝试使用 AWS CLI 创建应用程序负载均衡器。 创建负载均衡器

错误信息如下:
An error occurred (ValidationError) when calling the CreateLoadBalancer operation: At least two subnets in two different Availability Zones must be specified

所以我需要从特定区域(例如:us-east-2)获取可用子网。如何使用 AWS CLI 获取所有可用子网?

0 投票
1 回答
1261 浏览

amazon-web-services - 非公共 IP 实例的 AWS 公共子网 Internet 访问

我在 AWS 中有一个公共子网,其中有 3 个实例......

  1. WebApp01(弹性 IP - 例如 54.23.61.239)
  2. WebApp02(私有 IP - 192.168.0.24)
  3. WebApp03(私有 IP - 192.168.0.25)

我的路由表设置为 192.168.0.0/16 -> local 0.0.0.0/0 -> Internet Gateway

我可以看到有公网IP的实例可以上网,但是没有公网IP的实例不能上网。

如何授予对公共子网内其他实例的 Internet 访问权限?

我是网络新手,任何帮助将不胜感激。

仅供参考:我知道创建一个 NAT,然后使用 0.0.0.0 -> NAT 创建一个单独的路由表,并将该路由与私有子网相关联,从而可以访问私有子网中的实例,但我不知道如何为公有子网中的非公有 IP 实例提供 Internet 访问权限。请帮忙 !

0 投票
0 回答
94 浏览

amazon-web-services - Lambda 函数超时

我有一个 Lambda 函数(由 API Gateway 启动)访问私有子网中的 Aurora 集群(CloudWatch 中没有错误,只是函数超时)。

如果我多次调用该函数,在大约 5 次并发执行时,它会超时并从 API Gateway 返回 502 错误。

我知道由于创建了 ENI,访问 VPC 时可能会出现冷启动时间问题,我需要确保有足够的 IP 来创建 ENI。但使用 AWS 的公式(我的函数有 512MB,私有子网有 /24 范围,意味着 254 个可用 IP):

IP's for ENI's = Projected peak concurrent executions * (Memory in GB / 3GB)

254 = Projected peak concurrent executions * (512/3000)

Projected peak concurrent executions = 1400+

远高于〜5。我错过了什么吗?我是否需要以某种方式手动创建 ENI,或者确保我有足够的可用 IP 足够?

任何指导将不胜感激。

0 投票
1 回答
312 浏览

openvpn - Openvpn 到另一个 aws 区域中的 ssh 私有实例

我在俄勒冈地区的 aws 市场启动了 openvpn 访问服务器,它问我天气你想访问私有实例,我说是的。连接到 openvpn 客户端后,我可以 ssh 私有实例。现在我想在另一个地区扩展 vpn,所以我在爱尔兰地区创建了 vpn,并通过在俄勒冈地区提供 openvpn 访问服务器的 eip 来创建客户网关。创建了 vpg 和 vpn。我通过将路由到 vpg 提供给俄勒冈地区的所有 vpc cidr 和在俄勒冈地区为爱尔兰地区的 vpc cidr 添加的路由并指向 openvpn 访问服务器 eni 来正确添加路由。但我无法通过 ssh 连接到爱尔兰区域实例的私有实例。我尝试在 openvpn UI 上更改客户端权限。添加了两个 vpc cidr 块以允许访问该用户,但我仍然无法连接。SSH 超时。在 vpn 部分,两条隧道都出现了。

有人可以帮助我缺少什么。肯定是我缺少一些路由,但我找不到它。

0 投票
1 回答
787 浏览

amazon-web-services - 我们可以为 AWS 中的默认 VPC 更改 Default VPC = No 吗?

我使用默认VPC完成了实例和 vpn 连接的完整设置。由于某些原因,我需要删除默认VPC并创建新VPC以从头开始重新设置。

但是我不想那样做。我可以 使用任何技巧将标志默认 VPC更改为“否”吗?我们不能直接做。

0 投票
1 回答
1289 浏览

amazon-web-services - 如何调试连接问题:从 VPC 中的 Lambda 函数连接到 SSM VPC 端点

我在 VPC 中有一个 lambda 函数,它应该能够通过 VPC 端点连接到 SSM。事实上,我已经在另一个 VPC(默认)中使用它,但无法让它在我使用 CloudFormation 构建的新 VPC 中运行。此外,我可以通过同一 VPC 的 VPC 端点连接到 S3:

  • 部署 Lambda 的子网与 SSM VPC 终端节点相关联。
  • VPC 终端节点与一个安全组相关联,该安全组在端口 443 上接受来自应用层安全组(与 lambda 函数相关联)的传入请求。
  • Lambda 函数的应用层安全组有一个传出规则,允许它在 0.0.0.0/0 的任何地方广播
  • 子网的 NACL 允许所有传入和传出流量。
  • lambda函数的角色拥有对所有资源执行所有SSM动作的权限(只是暂时排除iam权限的情况)

  • 我尝试过 console.log 调试,它显示 lambda 函数在尝试从 SSM 获取信息后超时。

  • 我曾尝试使用流日志,但我看不到任何连接,或任何流入和流出 SSM 的数据。
  • 我已经比较了 2 个 VPC(一个可以工作的一个和一个不能工作的),我看不出规则上有任何差异。

谁能建议我如何调试它?

谢谢

0 投票
3 回答
3711 浏览

amazon-web-services - AWS lambda 通过私有网络调用 dynamo db 或绕过互联网流量

我有一个 lambda 函数,它每 15 分钟运行一次,并在 DynamoDB 中保存一些数据。

现在我想保护我的 lambda 发出的 DynamoDB 调用,这样请求就不会通过 Internet,而是通过 Amazon 内部网络。虽然这里没有涉及 EC2 实例。

我已经看到了一些使用 PrivateLink 的建议,它将 Dynamo 绑定到 VPC 端点,以便从 EC2 实例发出的调用始终通过内部网络绕过 Internet。

我想知道这样的配置对于调用 DynamoDB 的 lamda 是可能的,因为 lamda 本身不在任何 EC2 实例中运行并且相当无服务器?

0 投票
0 回答
142 浏览

amazon-web-services - 在不同的对等 VPC 上的私有子网和公有子网之间路由

我正在测试一个有两个对等 VPC 的场景:

  • VPC A 的 CIDR 为 10.0.0.0/16
  • VPC B 的 CIDR 为 172.17.0.0/16

两个 VPC 都具有具有以下 CIDR 的私有子网和公有子网:

  • VPC-A-PRIV 的 CIDR 为 10.0.1.0/24
  • VPC-A-PUB 的 CIDR 为 10.0.101.0/24

  • VPC-B-PRIV 的 CIDR 为 172.17.1.0/24

  • VPC-B-PUB 的 CIDR 为 172.17.101.0/24

我了解对等连接路由表选项卡包含具有与 VPC 对等连接关联的条目的表。这些表之一与 VPC A 中的公共子网相关联,如下所示:

  • 10.0.0.0/16 --> 本地
  • 0.0.0.0/0 --> igw-id
  • 172.17.0.0/16 --> vpc-peering-connection-A-to-B

因此,为了测试它是否有效,我在 VPC-A-PUB 子网中创建了一个实例,并在 VPC-B-PUB 子网中创建了另一个实例。我可以在这些实例之间成功 ping。

但是,如果我改为在 VPC-B-PRIV 子网中创建 VPC-B 实例,则无法从 VPC-A-PUB 子网 ping 它。这让我很困惑,因为上表中的对等连接路由包含了整个 VPC B 地址范围(172.17.0.0/16 --> vpc-peering-connection-A-to-B)。

如果我要执行从同一 VPC 中的公共实例 ping 私有实例的相同测试,则测试将通过......我认为它会通过的原因是因为本地规则包含整个 VPC 范围 (10.0. 0.0/16 --> 本地)。

我觉得我不了解 AWS 中私有子网和公共子网之间的关系。特别是关于私有子网如何从外部网络(无论是 VPC 还是互联网)接收流量。