Amazon EC2 Public DNS ist nutzlos?


12

Scheint, dass der öffentliche DNS, z. B. ec2-xxxx.compute-1.amazonaws.com, geändert wird, wenn Sie die Instanz stoppen oder beenden.

Das heißt, sie haben dieselbe Lebensdauer wie die öffentliche IP-Adresse von ec2. Warum sollte ich diesen öffentlichen DNS verwenden? Sie sind nicht leicht zu merken und eher bedeutungslos.


1
In bestimmten Fällen, in denen Sie nur CNAME-Einträge einrichten können, kommt das öffentliche DNS ins Spiel.
Shyam Sundar CS

@ CS3, Sie können dies tun, indem Sie einen Datensatz für die Instanz verwenden. Da sowohl die öffentliche IP als auch DNS die gleiche Lebensdauer haben.
Ryan

"A" -Datensätze können IP-Adressen zugeordnet werden. Wenn jedoch auf demselben Computer unterschiedliche Dienste mit derselben Adresse verfügbar gemacht werden, können CNAMEs dazu beitragen, aussagekräftige Domänennamen zu übermitteln. (ZB: ftp.domain.tld, www.domain.tld).
Shyam Sundar CS

Es gibt nur einen Unterschied zwischen dem öffentlichen DNS und der öffentlichen IP. Siehe meine Antwort unten.
Eric Hammond

Ich habe genau die gleiche Frage 3 Jahre später. Mein Fazit ... das öffentliche DNS ist ziemlich nutzlos. Wenn sie eine eindeutige, aber dauerhaft festgelegte öffentliche DNS zugewiesen hätten (z. B. eine Guid), könnte ich meine Instanz stoppen / starten, da ich weiß, dass meine bereits eingerichteten SSH- und SFTP-Verbindungen weiterhin funktionieren. Es sieht so aus, als wäre diese einfache Sache unmöglich, ohne eine elastische IP-Adresse zu kaufen. Dies ist eine riesige Verschwendung für eine Instanz, die nur gelegentlich gestartet wird.
Greg Woods

Antworten:


28

Der öffentliche DNS-Name (ob elastische IP-Adresse oder nicht) ist genau der gleiche wie die öffentliche IP-Adresse (elastische IP oder nicht) mit dem folgenden wichtigen Unterschied:

Wenn Sie den öffentlichen DNS-Namen von außerhalb von EC2 abfragen, wird er in die öffentliche IP-Adresse aufgelöst. Wenn Sie den öffentlichen DNS-Namen innerhalb von EC2 abfragen, wird er in die private IP-Adresse aufgelöst.

Sie können diesen Trick mit oder ohne elastische IP-Adressen anwenden. Ich empfehle die Verwendung elastischer IP-Adressen, da der öffentliche DNS-Name auch nach dem Beenden / Starten oder Verschieben Ihres Dienstes auf eine andere EC2-Instanz erhalten bleibt. Aus diesem Grund können Sie immer den öffentlichen DNS-Namen der elastischen IP-Adresse verwenden. Die Auflösung erfolgt in die interne IP-Adresse der aktuellen Instanz, der die elastische IP zugeordnet ist.

Sie können dies erweitern, indem Sie einen CNAME-DNS-Eintrag verwenden, in dem Sie Ihren bevorzugten Hostnamen dem externen DNS-Namen der elastischen IP zuordnen.

In diesem Artikel habe ich über die Verwendung dieser Funktion geschrieben, um Geld zu sparen und die Netzwerkleistung mit der internen EC2-Kommunikation zu beschleunigen, ohne die aktuelle interne IP-Adresse für jede Instanz in allen anderen Instanzen verfolgen zu müssen: http://alestic.com/2009 / 06 / ec2-elastic-ip-internal

Abgesehen von diesem einen Unterschied stimme ich zu, dass Sie genauso gut die öffentliche IP-Adresse anstelle des öffentlichen DNS-Namens verwenden können, weil:

  1. Sie sparen Zeit, indem Sie keine DNS-Suche durchführen

  2. Sie vermeiden Sicherheitsrisiken, die gelegentlich im DNS-Protokoll auftreten.

Ich nehme also an, dass es in Wirklichkeit noch zwei weitere Unterschiede gibt ...


7

Sie würden die öffentliche EC2-Adresse verwenden, um beispielsweise SSHing auf diesem Server auszuführen oder um EC2-Instanzen oder eine Reihe anderer Dinge miteinander zu verbinden.

Wenn Sie eine konsistente Adresse benötigen (z. B. um Benutzer auf zu verweisen), stellen Sie einen Elastic Load Balancer oder eine Elastic IP bereit, um sich vor Ihren Instanzen zu befinden.

Innerhalb von EC2 wird öffentliches DNS in die interne IP-Adresse der Instanz aufgelöst, außerhalb von EC2 in die externe IP-Adresse. Dies kann manchmal nützlich sein, da Sie durch die Kommunikation zwischen EC2-Knoten über die private IP Geld sparen.


1
Beantwortet die gestellte Frage nicht. Was auch immer Sie gesagt haben, Sie können auch IP-Adressen verwenden.
Shyam Sundar CS

2
@ Yoga Wenn du es nicht brauchst, benutze es nicht. Was genau willst du hier?
ceejayoz

2
ceejayoz beantwortete die Frage im dritten Absatz (DNS-Auflösung innerhalb und außerhalb von EC2). Ich habe in meiner Antwort darauf eingegangen, die sich nur auf diesen Unterschied konzentriert.
Eric Hammond

@EricHammond Fairerweise habe ich das bearbeitet, als Yoga das gepostet hat.
ceejayoz

5

Nun, sie ändern sich nur, wenn Sie die Instanz stoppen. Wenn Ihre Instanz eine lange Lebensdauer hat, können Sie einfach einen CNAME darauf verweisen, und es wird funktionieren. Sie sind nicht völlig nutzlos, sie sind nur vorübergehend.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.