【问题标题】:How can AWS use public IPV4 address range for a VPC and assign them as private IP addresses to its resources like EC2sAWS 如何为 VPC 使用公共 IPV4 地址范围并将它们作为私有 IP 地址分配给其资源(如 EC2)
【发布时间】:2020-10-01 05:24:14
【问题描述】:

我们都知道,从整个 IPV4 地址范围池 2^32(0.0.0.0 和 255.255.255.255)中保留 IP 范围 CIDR,该范围包括 10.0.0.0/8 (10.0.0.0 - 10.255.255.255) 172.16.0.0/12 (172.16.0.0 - 172.31.255.255) 192.168.0.0/16 (192.168.0.0 - 192.168.255.255)

因此,如果任何组织要设置其 LAN(内联网),它只能使用上述三种中的一种。

但对于 AWS 或任何云提供商,他们似乎允许使用公共 IPV4 CIDR 范围创建 VPC,这意味着在私有/公共子网中创建的任何实例 因为该 VPC 可以默认为私有 IP 地址,该地址实际上仍然可以是上述保留私有池之外的公共可路由地址。

如https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html 中所述 “我们将私有 IP 地址称为 VPC 的 IPv4 CIDR 范围内的 IP 地址。大多数 VPC IP 地址范围都属于 RFC 1918 中指定的私有(不可公开路由)IP 地址范围;但是,您可以使用您的 VPC 的可公开路由的 CIDR 块。无论您的 VPC 的 IP 地址范围如何,我们都不支持从您的 VPC 的 CIDR 块直接访问 Internet,包括可公开路由的 CIDR 块” 所以我的问题是 AWS 如何做到这一点。我知道 DHCP/路由等有自己的机制,但是如何允许在其 VPC 内选择全局公共 IPV4 地址(WAN 地址池)作为私有地址。 IETF/IANA 如何允许这样做。此外,如果我要设置我的私人家庭网络,为什么我不能为我的 LAN 选择那些与 10.0.0.0/8 相对的公共 IPV4 地址范围, 172.16.0.0/12 和 192.168.0.0/16。

我明白选择公共 ip 有其自身的风险,如果它们与互联网上的实际 IP 冲突,我将无法从我的私人网络浏览这些公共网站。但是,AWS 是如何管理这个的。是它给它的首字母缩写词作为私有IP,所以如果相同的相应公共IP被点击它仍然会将它解析为公共并为您呈现站点(我的意思是直接点击站点公共IP)或者它不会看到它我自己的私有IP并通过自己的私有DNS解析它

【问题讨论】:

  • 这似乎是一个晦涩难懂的用例。您是在问 Internet 网关如何为实例分配或转换公有/弹性 IP 地址?
  • 我要求说一些全球公共 ip 说 google.com 172.217.9.36 被分配为 aws 中 ec2 的私有 ip。如果你在 vpc 中点击它,它会解析到我的公共/私有网络中的 google.com。或者 aws 会尝试将其解析为内部私有 dns
  • 我的理解是,您只能将公共 IP 添加到您实际拥有的 VPC(即在您的示例中,如果 Google 有一个 AWS 帐户,那么他们将是世界上唯一允许添加该 IP,您作为个人将无法这样做)。但我对此不是 100% 确定。
  • 我完全理解这一点,但是根据 aws 文档,您可以为您的 vpc 选择任何 ip cidr,即使在专用网络的全局保留池之外。
  • 如docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html 下所述,“我们将私有 IP 地址称为 VPC 的 IPv4 CIDR 范围内的 IP 地址。大多数 VPC IP 地址范围都属于私有(不可公开路由) ) RFC 1918 中指定的 IP 地址范围;但是,您可以为您的 VPC 使用可公开路由的 CIDR 块。无论您的 VPC 的 IP 地址范围如何,我们都不支持从您的 VPC 的 CIDR 块直接访问 Internet,包括公共- 可路由的 CIDR 块"

标签: amazon-web-services networking amazon-ec2 amazon-vpc ipv4


【解决方案1】:

我知道这个问题已经过时了,但是......

正如文档所说 - AWS 不会通告这些路由(与 BYOIP 不同,他们会通告这些路由) - 所以 AWS 无法路由到它们。

VPC 常见问题解答说明您必须通过站点到站点 VPN 或 Direct Connect 路由到它们。

因此,您必须从数据中心公布这些 CIDR,并通过 VPN 将这些 CIDR 路由到 VPC。

我不知道 NAT 网关是否可以用于传出。

【讨论】:

    【解决方案2】:

    如果您选择全局公共 IPV4(保留池之外)作为您的 EC2 私有地址,EC2 所在子网的路由表将决定如何解决它,在这种情况下,优先顺序将是如何路由表已设置。所以通常它是这样的:- 目的地(您的 VPC CIDR) 定位本地

    因此,当您从网络中访问该私有 IP 时,路由表将看到其本地 VPC IP 并将其解析为该 EC2 私有 DNS,因此您将无法将其解析为实际的全局 IP。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-10
      • 2017-10-30
      • 2015-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-11
      • 2010-09-10
      相关资源
      最近更新 更多