Port forwarding tidak berfungsi?


1

Saya mencoba menyiapkan Server Apache untuk diakses secara publik.

Saya menggunakan router Netgear R4500 yang dihubungkan ke modem Motorola SB6121. Saya dapat mengakses server saya di komputer saya dengan mengetikkan alamat IP saya. Setelah mengikuti instruksi untuk meneruskan port 80 sehingga saya dapat mengakses server dari komputer lain, itu tidak berfungsi (lihat gambar).

Saya mendapatkan "Halaman web ini tidak tersedia". Saya meneruskan ke alamat IP komputer saya.

Menggunakan ini Alat Pemindai Port Jaringan , ia mengatakan "80 / tcp memfilter http", yang, seperti yang saya mengerti, berarti penerusan tidak berfungsi dengan benar. Dalam file Apache httpd saya, saya punya:

ServerName 192.168.1.13:80

dan

Listen 192.168.1.13:80

Adakah yang tahu ada yang salah atau ada yang bisa saya coba?


klik untuk memperbesar


1
Apa yang Anda maksud dengan 'komputer lain', komputer di jaringan rumah Anda? Jika ini adalah koneksi internal (di belakang router), Anda menggunakan alamat 192.xxx ... Untuk eksternal (bukan di belakang router) gunakan alamat IP ROUTER Anda ... Akhirnya, pastikan IIS dimatikan, yang mungkin karena Anda terikat ke port 80 tanpa kesalahan .. HTTPD Anda dimulai .. benar?
cutrightjm

Maksud saya komputer eksternal. Saya menggunakan IP Router saya ketika mencoba mengakses server saya. IIS mati. HTTPD tentu saja dimulai tanpa kesalahan.
rphello101

Jawaban:


2

Penerusan port Anda terlihat OK.

Masalahnya bisa:

  • firewall pada mesin Anda (diaktifkan secara default di windows). Anda perlu membuka port 80
  • jika Anda mencoba terhubung dari luar, mungkin ISP Anda memblokir port 80. Ini terjadi pada beberapa ISP. Mungkin memanggil mereka untuk bertanya adalah solusi yang lebih cepat daripada mencoba mencari tahu. Tetapi jika Anda membuka firewall Anda dan tidak dapat mencapai mesin Anda, ini mungkin itu. Untuk menguji menghindari apache atau sesuatu yang berbeda tidak berfungsi, coba telnet your-ip 80 dari mesin eksternal dan lihat apakah itu menjawab.

Perbarui: ringkasan komentar:

Jadi Anda membuka firewall untuk port 80 dan ISP Anda memblokir port 80. Anda memiliki beberapa opsi:

  • Coba minta ISP Anda untuk membuka port jika memungkinkan

  • Gunakan layanan penerusan port eksternal yang akan menerima permintaan pada port 80 dan port forward ke router Anda pada port lain (tidak terblokir) dan kemudian router Anda meneruskan ke server Anda. Ada banyak layanan untuk itu, saya rasa dibayar dan gratis. Untuk DNS saya gunakan dnsexit.com , gratis dan berfungsi dengan baik. Saya tahu mereka memiliki port forwarding juga, tetapi saya pikir itu dibayar.

  • Cara lain bisa menggunakan VPN yang menerima permintaan pada titik akhir VPN dan mentransfer ke server Anda sebagai bagian dari lalu lintas VPN (jadi tidak terblokir, menggunakan IP pribadi) tapi saya pikir ini akan lebih lambat ....

  • Anda dapat mengubah port (menjadi 81 misalnya) pada router Anda dan meneruskan ke port 80 di apache tanpa masalah (atau meminta Apache mendengarkan pada port 81 dengan mudah) tetapi cara ini url untuk mengakses server web Anda harus menyertakan port seperti: http://www.mysite.com:81 untuk port 81. Jika mengubah port 80 ke 81 pada apache, Anda perlu mengubah firewall untuk membuka port 81 juga (dan menutup 80).


Baiklah saya menambahkan pengecualian di firewall saya yang sekarang memungkinkan saya untuk mengetik alamat ip publik saya dan mengakses server secara lokal saja. Saya menggunakan Cox sebagai ISP saya dan "untuk perlindungan saya" mereka memblokir port 80. Apa cara terbaik saya dalam hal ini? Menggunakan sesuatu seperti WebHop atau adakah cara untuk mengubah port di Apache?
rphello101

Obs: tidak dapat menemukan layanan penerusan url di situs Webhop dengan tampilan cepat tetapi saya tidak membuat akun jadi mungkin mereka juga memilikinya.
laurent

Jika hanya itu yang diperlukan, saya hanya akan mengubah port. Itu bukan masalah besar. Adapun ISP saya, saya baru saja menemukannya secara online. Saya tidak repot-repot menelepon. Demikian pula, saya hanya melihat WebHop pada pertanyaan yang berbeda dengan deskripsi tentang apa itu. Saya tidak melihatnya sama sekali. Terimakasih atas infonya
rphello101

Saya mengedit jawaban termasuk komentar sebelumnya
laurent

1

Ya, jika laporan ipfingerprints tersaring , maka itu tidak berhasil.

Apakah Anda memiliki firewall pada mesin dengan apache? Mungkin hanya akses lokal yang diizinkan di sana.

Apakah ada firewall lain di router yang akan melarang port 80 sama sekali (bahkan sebagai maju). Menonaktifkan port 80 pada input adalah normal, karena Anda tidak ingin mengizinkan akses ke router Anda dari internet.

Jika Anda menguji alamat ip eksternal yang benar dan tidak memiliki firewall / router lain di antara router Anda dan "internet".


EDIT:

Karena penyedia Anda tampaknya memblokir port 80 (= firewall antara router Anda dan "internet") jadi Anda harus menggunakan port eksternal alternatif di router Anda. 8080 ist port http alternatif standar.

Anda juga harus mendapatkan setidaknya beberapa ruang web di suatu tempat (tempat Anda dapat mengalihkan ke server rumah Anda di port lain) atau Anda harus mengubah penyedia Anda (atau mungkin mereka akan membuka blokir port jika Anda memanggil dukungan mereka, memberi tahu Anda akan beralih sebaliknya).

Kecuali tidak apa-apa untuk membuat setiap pengguna / tautan untuk melampirkan port ( http://address:8080/ ).

Server Anda dapat terus mendengarkan pada port 80. Anda hanya perlu mengubah penerusan port pada router Anda.


Jadi jika saya terus mendengarkan Apache di 80, apa port internal / eksternal saya ketika saya meneruskannya?
rphello101

eksternal 8080 (awal dan akhir), internal 80 (mulai dan akhir). Anda akan dapat diakses di port 8080 dari dunia luar.
JonnyJD
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.