如何从 AWS 实例中获取 VPC CIDR 范围?

如何从 AWS 实例中获取 VPC CIDR 范围?

我正在尝试以编程方式设置 VPN 应推送给客户端的路由,其中​​一个主要路由是 VPC 网络。有没有办法从我的 VPN 实例中获取 VPC CIDR 块?

答案1

您可以通过以下方式获取 VPC CIDR 块:

$ metadata="http://169.254.169.254/latest/meta-data"
$ mac=$(curl -s $metadata/network/interfaces/macs/ | head -n1 | tr -d '/')
$ cidr=$(curl -s $metadata/network/interfaces/macs/$mac/vpc-ipv4-cidr-block/)

答案2

当然,使用 awscli、boto 或您最喜欢的语言的 AWS API。

首先,使用 EC2 元数据服务获取实例 ID。利用该信息,您可以获取实例的 VPC,然后从 VPC ID 获取 CIDR 范围。

这些步骤显然需要从实例本身运行,因此您需要为具有适当 IAM 权限的服务器分配实例角色来读取上述数据。

相关内容