Dlaczego nie mogę dotrzeć do mojej instancji Amazon EC2 za pośrednictwem elastycznego adresu IP?

37

Serwer działa dobrze dzięki wpisowi DNS przypisanemu przez Amazon, ale nie mogę do niego dotrzeć (za pomocą przeglądarki) za pomocą elastycznego adresu IP, do którego Amazon przypisał to pole. Ping też nie działa. Próbuję potwierdzić, że jest osiągalny, zanim dodam adres IP do własnych wpisów DNS.

Guido Anselmi
źródło
1
Czy na pewno używasz elastycznego adresu IP, a nie prywatnego, potencjalnie lokalnego adresu IP?
@Robert - Cześć, cóż, aws. *** adres nie będzie wyszukiwał za pomocą polecenia ping, (ale działa w przeglądarce), więc właściwie nie wiem, jak się dowiedzieć. Próbowałem ping i próbowałem kilka stron internetowych, które szukają.
@Piotr - Tak. Jest to „elastyczny adres IP”, a nie prywatny adres IP. Jest również używany przez Amazon w nagłówku kart stanu.
Guido, czy ma przypisany publiczny DNS i identyfikator instancji?
@Piotr - Tak. Publiczny DNS jest dostępny za pośrednictwem przeglądarki. Obecnie pracuję za zaporą ogniową, nie jestem pewien, czy to wpłynie na ..... właśnie próbowałem pingować znaną stronę (msn.com) i to się nie udało. Tethering mojego telefonu ...
Guido Anselmi

Odpowiedzi:

37

Rzeczy do sprawdzenia:

  • Twoje elastyczne IP związane z twoim wystąpieniem?
  • Twoja grupa zabezpieczeń instancji zezwala na połączenia przychodzące?
  • Twoja zapora ogniowa zezwala na połączenia przychodzące?
  • Twoja aplikacja słucha?
Kamień
źródło
Czy grupa bezpieczeństwa była dla mnie, dzięki! Nigdy nie wspominali o tym w żadnym tutorialu AWS. :(
emocje
1
Kolejna rzecz do sprawdzenia: spróbuj zrestartować instancję EC2. To załatwiło sprawę (elastyczny adres IP był powiązany z instancją podczas jej działania).
nedned
Dla mnie było to również ponowne uruchomienie instancji, działało magicznie!
Artipixel
Mam ten sam problem co OP. W odpowiedzi sprawdziłem pkt 1, 2, 4, ponownie uruchomiłem instancję EC2. Jak sprawdzić trzeci punkt „Zapora instancji zezwala na połączenia przychodzące”? Czy połączenia przychodzące nie są dozwolone przez zaporę instancji EC2?
Indominus
26

Jak wspomniano inni, grupa zabezpieczeń dla instancji EC2 może nie zezwalać na port HTTP.

Najpierw znajdź grupę zabezpieczeń, której używa Twoja instancja.

wprowadź opis zdjęcia tutaj

Następnie w obszarze Sieć i bezpieczeństwo przejdź do sekcji Grupy bezpieczeństwa . Wybierz grupę zabezpieczeń instancji i dodaj niestandardową regułę TCP przychodzącą dla zakresu portów 80.

Grupy bezpieczeństwa w EC2

James Lawruk
źródło
2
Pierwsza odpowiednia odpowiedź - bardzo dziękuję.
Arthur Kushman,
2
Wolę raczej zaakceptować tę odpowiedź, ponieważ AWS EC2 domyślnie tworzy instancję bez otwartego portu 80 dla połączeń TCP.
Arthur Kushman,
O wiele lepsza odpowiedź niż odpowiedź Stone'a. Ta odpowiedź (Jamesa) powinna zostać zaakceptowana jako poprawna, ponieważ jest rzeczywistą odpowiedzią. Odpowiedź Stone'a jest zbyt ogólna, tj. Rzeczy do sprawdzenia!
kannas,
Pracowałem dla mnie .. Właśnie dodałem niestandardową regułę TCP z PORT: 80 .. Dzięki
Muhammad Azeem
Och, to było to! Od wielu godzin doprowadza mnie do szału. Utworzyłem nową grupę zabezpieczeń ze wszystkimi poprawnymi powiązaniami. Sprawdzono zaporę w instancji, sprawdzono, czy usługa internetowa jest uruchomiona, czy VPC Security się konfiguruje. Okazało się jednak, że Instancja używała zupełnie innej grupy zabezpieczeń o nazwie „launch-wizard-1” !!
Zolbayar
15

Upewnij się także, że tablica tras VPC jest ustawiona tak, aby umożliwić adresowi IP poza VPC (0.0.0.0/0) przepływ z podsieci do bramy internetowej.

Przejdź do VPC> Tabele tras; Karta trasy. Sprawdź, czy miejsce docelowe jest „zamapowane” na docelowy identyfikator bramy internetowej (oprócz lokalnego).

G Seth
źródło
Postępując zgodnie z powyższą instrukcją, dodałem domyślną trasę, używając bramki internetowej jako celu. Aby określić domyślną trasę, wpisz 0.0.0.0/0 jako miejsce docelowe. Po wykonaniu tej czynności mogłem dotrzeć do mojej instancji z Internetu za pomocą jej publicznego adresu IP
Peter Smallwood
Mi to pasuje. Ale jestem ciekawy, że zanim skonfigurowałem ten sposób, miałem już inną instancję dostępną z Internetu. Dlaczego nie może tym razem?
shintaroid
10

Dodanie tej odpowiedzi, ponieważ może pomóc innym początkującym EC2. Jeśli Publiczny DNS dla Twojej instancji EC2 to: Publiczny DNS: ec2-46-137-53-149.eu-west-1.compute.amazonaws.com , możesz uzyskać dostęp do instancji za pomocą numerycznej części adresu DNS. W powyższym przypadku http://46.137.53.149/

Oczywiście musisz mieć odpowiedni port TCP otwarty w grupie / profilu bezpieczeństwa powiązanym z twoim wystąpieniem, jak wspomniano powyżej.

Prywatnym IP (np 10.235.47.101) nie jest dostępna z zewnątrz sieci AWS i jest przydatna tylko gdy masz klaster EC2 węzłów i chcą szybszej komunikacji między nimi.

nelsoński
źródło
5

Kilka pytań: do jakiego portu próbujesz uzyskać dostęp? Czy ten port jest otwarty w grupach zabezpieczeń? Czy masz aplikację nasłuchującą na tym porcie?

Gdybym musiał zgadywać, twoje grupy bezpieczeństwa nie są skonfigurowane poprawnie. Pamiętaj, aby otworzyć je na prawidłowe adresy IP lub na świat (0.0.0.0/0), jeśli zamierzasz uzyskać dostęp do tego portu z wielu adresów IP.

Jeśli to wszystko nie jest to, dysocjuj i ponownie przydziel adres IP instancji.

chantheman
źródło
@ Chan-da-man- Tak porty są otwarte i aplikacja nasłuchuje. Dokładnie ten sam adres URL oprócz nazwy domeny zamienionej na IP.
Guido Anselmi
Kiedy pingujesz pełną nazwę Amazon, czy wraca z elastycznym ip?
chantheman