AWS如何知道我是SSH的哪个实例?

时间:2011-12-19 20:57:13

标签: amazon-ec2 dns

当我在没有弹性IP的情况下SSH到Amazon实例时,我使用的公共DNS名称通常为ec2-79-125-100-3.eu-west-1.compute.amazonaws.com格式。

该DNS名称是否始终解析为同一IP?我不这么认为,因为否则就没有必要购买弹性IP:s。但那么在DNS名称中包含IP地址的重点是什么呢?

此外,由于DNS名称解析为的IP由许多实例共享,因此亚马逊如何确切地知道我正在进入哪些实例?

2 个答案:

答案 0 :(得分:2)

每个实例都有自己的ip。即使它不是弹性的,它也是暂时的,但它仍然是实例所独有的。您没有2个具有相同IP的实例。否则,正如您所指出的那样,在指定ip号时无法知道请求哪个服务器。

弹性ip的优点是你的实例总是拥有相同的ip。没有它,每次重启实例时都会得到一个新的ip号。请注意,您并没有真正“购买”弹性IP。使用它时不需要付费,这意味着在正常情况下你有一个运行实例,并且分配了弹性ip。

答案 1 :(得分:0)

ec2-79-125-100-3.eu-west-1.compute.amazonaws.com是亚马逊为您的实例提供的名称,以便您更轻松地访问它。他们本可以选择任何命名方案,但看起来他们选择在公共DNS名称中包含公共IP。这对您来说只是一种方便,而另一个答案指出,每次重启都会改变。

弹性IP的优点是您可以将公共DNS名称映射到该IP。例如,我的公司有一个指向EC2实例的静态IP。当我准备推出新版本时,我启动了一个新的EC2实例,ssh到它并准备好使用亚马逊分配的公共DNS名称使用新软件进行测试。然后,当我准备切换时,我只是将弹性IP指向新实例并取下旧实例。我不必弄乱DNS映射,因为DNS名称和IP根本没有改变。它只是一个间接层,使它更容易一些。