我对EC2使用裸IP地址169.254.169.254作为URI检索用户和实例元数据感到困惑。metadata.ec2.amazonaws.com说,如果使用了更容易记住的主机名,对亚马逊和用户来说,这不是一个更好的设计决策吗?如果Amazon决定在将来更改裸IP地址,那么获取用户或实例元数据的所有相关脚本都将停止工作。
您可能会说我应该使用亚马逊提供的工具EC2元数据,但它已经近两年没有更新了。此外,如果亚马逊决定将IP地址从随机169.254.169.254更改为同样随机的地址,则需要更新脚本本身,170.11.19.142说。
这里有什么东西我遗漏了吗?
发布于 2014-07-20 14:39:58
这里有什么东西我遗漏了吗?
是的- 169.254.0.0/16块被指定为私有块-请参见169.254.0.0/16地址说明。因此,它可以从私有网络中的机器上访问该IP,就像您的实例一样。亚马逊不会将这个地址更改为另一个块,比如你的170.11.19.142,因为它不会是一个私有的内部块。
正如你所说的,最后两个数字,169.254很可能是随机的。他们是亚马逊在某个时候选择的,而且很可能会在很长一段时间内保持这种状态,因为亚马逊完全控制了那个IP空间。
您可能会说我应该使用Amazon提供的工具EC2元数据。
你应该这样做。
,但它已经近两年没有更新了。此外,如果Amazon决定更改IP地址,则需要更新脚本本身。
不一定。我还没有看到脚本源代码,但是很可能,如果地址很快就会改变,它会以某种方式与根EC2控制器检查元数据服务器的IP所在。
https://stackoverflow.com/questions/24851228
复制相似问题