Mengapa saya tidak dapat mencapai instance Amazon EC2 saya melalui alamat IP elastisnya?

37

Server berfungsi dengan baik melalui Amazon yang memasukkan entri DNS, tetapi saya tidak dapat mencapainya (menggunakan browser) melalui alamat IP elastis yang diberikan Amazon pada kotak tersebut. Ping juga tidak berfungsi. Saya mencoba mengonfirmasi bahwa itu dapat dijangkau sebelum saya menambahkan alamat IP ke entri DNS saya sendiri.

Guido Anselmi
sumber
1
Apakah Anda yakin menggunakan IP elastis dan bukan IP lokal pribadi Anda?
@ Robert - Hai, alamat aws. *** tidak akan mencari melalui ping, (tapi berfungsi di browser) jadi saya benar-benar bingung bagaimana cara mengetahuinya. Saya mencoba ping dan saya mencoba beberapa situs internet yang melakukan pencarian.
@Piotr - Yap. Ini adalah "Alamat IP Elastis" bukan Alamat IP Pribadi. Ini juga digunakan oleh Amazon di header untuk tab status.
Guido, apakah itu memiliki DNS publik dan instance ID yang ditetapkan?
@Piotr - Ya. Dan DNS publik dapat dijangkau melalui browser. Saat ini saya bekerja di belakang firewall, tidak yakin apakah itu akan mempengaruhi ..... hanya mencoba untuk melakukan ping ke situs yang dikenal (msn.com) dan itu gagal. Tethering telepon saya ...
Guido Anselmi

Jawaban:

37

Hal-hal yang perlu diperiksa:

  • IP elastis Anda terkait dengan instance Anda?
  • Kelompok keamanan Anda misalnya mengizinkan koneksi masuk?
  • Firewall contoh Anda mengizinkan koneksi masuk?
  • Aplikasi Anda mendengarkan?
Batu
sumber
Apakah grup keamanan untuk saya, terima kasih! Mereka tidak pernah menyebut ini dalam tutorial AWS apa pun. :(
emotality
1
Hal lain yang perlu diperiksa: coba mulai ulang instance EC2. Ini melakukan trik untuk saya (IP elastis dikaitkan dengan instance saat sedang berjalan).
nedned
Bagi saya itu juga me-restart instance, bekerja secara ajaib!
Artipixel
Saya mengalami masalah yang sama dengan OP. Saya memeriksa poin 1, 2, 4 dalam jawabannya, juga mem-boot ulang instance EC2. Bagaimana cara saya memeriksa poin ke-3 "Firewall instance Anda mengizinkan koneksi masuk"? Bukankah koneksi masuk diizinkan oleh firewall instance EC2?
Indominus
26

Seperti yang disebutkan lainnya, grup keamanan untuk instance EC2 Anda mungkin tidak mengizinkan port HTTP.

Pertama, temukan Grup Keamanan yang digunakan oleh instance Anda.

masukkan deskripsi gambar di sini

Kemudian, di bawah Jaringan & Keamanan, buka bagian Grup Keamanan . Pilih grup keamanan instans Anda dan tambahkan aturan TCP Kustom Masuk untuk Port 80.

Grup Keamanan di EC2

James Lawruk
sumber
2
Jawaban pertama yang memadai - terima kasih banyak.
Arthur Kushman
2
Saya lebih suka menerima jawaban ini, karena AWS EC2 benar-benar membuat instance tanpa membuka port 80 untuk koneksi TCP secara default.
Arthur Kushman
Jawaban yang jauh lebih baik daripada jawaban Stone. Jawaban (Yakobus) ini harus diterima sebagai jawaban yang benar karena itu adalah jawaban yang sebenarnya. Tanggapan Stone yaitu terlalu umum. Hal-hal untuk diperiksa!
kannas
Bekerja untuk saya .. Saya hanya menambahkan Aturan TCP Kustom dengan PORT: 80 .. Terima kasih
Muhammad Azeem
Ohh, ini dia! Itu telah membuatku gila selama berjam-jam. Saya membuat Grup Keamanan baru dengan semua binding yang benar. Memeriksa firewall pada contoh, memeriksa apakah layanan web sedang berjalan atau tidak dan VPC Security mengkonfigurasi. Tapi ternyata Instance menggunakan Grup Keamanan yang sama sekali berbeda yang disebut "launch-wizard-1" !!
Zolbayar
16

Pastikan juga tabel Rute VPC diatur untuk mengaktifkan alamat IP di luar VPC (0.0.0.0/0) untuk mengalir dari subnet ke gateway Internet.

Arahkan ke VPC> Rute Tabel; Tab rute. Periksa Tujuan 'dipetakan' ke Target Internet Gateway Id (selain dari lokal).

G Seth
sumber
Mengikuti instruksi di atas, saya menambahkan rute default menggunakan gateway internet sebagai target. Untuk menentukan rute default, masukkan 0.0.0.0/0 sebagai tujuan. Setelah ini dilakukan, saya dapat menjangkau contoh saya dari internet menggunakan alamat IP publik
Peter Smallwood
Ini bekerja untuk saya. Tetapi saya ingin tahu bahwa sebelum saya mengatur mengikuti cara ini, saya sudah memiliki contoh lain yang dapat dijangkau dari Internet. Kenapa tidak kali ini?
shintaroid
10

Hanya menambahkan balasan ini karena dapat membantu Pemula EC2 lainnya. Jika DNS Publik untuk instance EC2 Anda adalah: DNS Publik: ec2-46-137-53-149.eu-west-1.compute.amazonaws.com Anda dapat mengakses instance menggunakan bagian numerik dari Alamat DNS. Dalam kasus di atas http://46.137.53.149/

Jelas Anda perlu memiliki Port TCP yang relevan terbuka di grup / profil keamanan yang terkait dengan instance Anda seperti yang disebutkan di atas.

The IP pribadi (misalnya 10.235.47.101) tidak dapat diakses dari luar jaringan AWS dan hanya berguna bila Anda memiliki sekelompok EC2 node dan ingin cepat komunikasi di antara mereka.

nelsonic
sumber
5

Pertanyaan pasangan: port apa yang ingin Anda akses? Apakah Anda memiliki port yang terbuka di grup keamanan? Apakah Anda memiliki aplikasi yang mendengarkan pada port itu?

Jika saya harus menebak grup keamanan Anda tidak diatur dengan benar. Pastikan untuk membukanya ke alamat ip yang benar atau ke dunia (0.0.0.0/0) jika Anda akan mengakses port tersebut dari beberapa IP.

Jika semua itu bukan, maka pisahkan dan alokasikan kembali IP ke instance.

chanteman
sumber
@ Chan-da-man- Ya port terbuka dan ada aplikasi yang mendengarkan. URL yang sama persis kecuali nama domain yang ditukar dengan IP.
Guido Anselmi
Ketika Anda melakukan ping czon amazon penuh apakah itu kembali dengan ip elastis?
chantheman