2

我整个上午都在研究这个问题,但它似乎超出了我对 AWS VPC 的了解。

我们有一个旧的 AWS 账户,里面有一系列的 VPC。这些是多年前创建的。我担心的 VPC 很容易有 6 年的历史,如果不是更老的话。现有的 VPC 有:

eu-west-1(爱尔兰)

  • I1:172.31.0.0/16
  • I2:172.102.0.0/16
  • I3:172.201.0.0/16
  • I4:192.168.96.0/20

us-west-2(俄勒冈)

  • O1:192.168.0.144/20

我正在使用的 VPC 是I1:172.31.0.0/16

I1O1被窥视。

是的,我现在有一个新帐户,我在俄勒冈州创建了一个新的 VPC。让我们称之为

  • NO1:10.1.0.0/20

我已经看过了O1NO1。对等工作正常,路由表也可以。

当我凝视时,问题就来I1NO1

  • 创建对等连接很好。
  • NO1路由表添加规则工作正常。

我担心的是:当我去修改路由表时,I1我看到了以下规则。

  • 172.31.0.0/16 local active(这是为此 VPC 设置的 IP 范围,预计)
  • 10.0.0.0/8 local active(这是我的问题)
  • 0.0.0.0/0 inet active
  • 其他一些现有规则...

我不明白这个10.0.0.0/8规则。完整的 IP 范围正在内部路由,并且:

  • 这不在 VPC 的 IP 范围内
  • 万一我遗漏了什么,我检查了我能找到的所有 VPC 和子网。该IP范围没有任何内容。

当我去修改路由表时172.31.0.0/1610.0.0.0/8规则不能被删除,所以我只能假设它们是默认创建的。

active我的问题是,当 IP 范围“不存在”时,这条规则怎么可能?为什么我不能删除这个?我从来没有见过这个范围被默认添加到路由表中,这可能是 AWS 很久以前就做过的事情吗?

我已将规则10.1.0.0/20路由流量添加到我的对等 VPC。我希望因为它更具体,它会正常工作。我这样想是对的吗?

4

2 回答 2

2

您为此 VPC 启用了 ClassicLink(VPC 和 EC2-Classic 之间的网络连接)。将其关闭(当然,在确认您实际上并没有使用它之后),该路线将自行删除。

当您为 ClassicLink 启用 VPC 时,静态路由将添加到所有 VPC 路由表,10.0.0.0/8其目标为local. 这允许 VPC 中的实例与随后链接到 VPC 的任何 EC2-Classic 实例之间进行通信。如果您将自定义路由表添加到启用 ClassicLink 的 VPC,则会自动添加静态路由,其目的地为10.0.0.0/8,目标为local. 当您为 VPC 禁用 ClassicLink 时,此路由会在所有 VPC 路由表中自动删除。

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html

于 2020-05-23T00:52:55.143 回答
-1

由于对等互连,这条路线可以完美无缺。

  • 请注意,CIDR 范围实际上10.0.0.0/8包括10.0.0.110.255.255.254

  • 您的,NO1包括10.1.0.0/20IP10.1.0.110.1.15.254

  • 所以实际上10.1.0.0/20是在里面10.0.0.0/8

看起来 AWS 正在做的是在I1路由表中阻止您需要的范围以及更多范围,可能是为了避免重叠或出于任何其他原因。但绝对10.1.0.0/20是里面10.0.0.0/8

为了处理 IP 范围的问题,我使用了这个非常具有说明性的工具https://cidr.xyz/,它有助于理解 CIDR 范围的最小和最大 IP 以及可以帮助定义的可能的不同 IP 总数子网。

于 2020-05-22T15:40:30.897 回答