port forwading untuk membuat server di komputer saya

0

Saya mencoba membuat program obrolan dengan java. saya berhasil ketika saya menggunakan ip 127.0.0.1 untuk terhubung.

Soket Soket = Soket baru ("127.0.0.1", 5005);

semuanya bekerja dengan baik di komputer saya dan program bahkan bekerja ketika saya mencoba untuk menghubungkan antara comupter saya dan leptop saya yang menggunakan router yang sama. (Saya melakukannya dengan menggunakan ip lokal.) Lalu saya ingin menghubungkan komputer yang menggunakan router lain dengan menggunakan ip eksternal. jadi saya membaca di web dan saya mengerti bahwa saya perlu forwad port saya melalui router saya. Saya punya router Siemens ADSL Sl2-141. saya forwad port 5005, dan program obrolan saya masih tidak berfungsi. saya mendapatkan kesalahan Sambungan Sambungan berulang-ulang. apakah saya melewatkan sesuatu? Port Siemens untuk mengarungi

Shelef
sumber
periksa alamat IP Host Internal. Apakah Anda mencoba laptop dan komputer desktop sebagai target? Apakah Anda menggunakan lebih lanjut (perangkat lunak) -Kunci?
yankee
CATATAN: Meskipun pertanyaan ini telah dimigrasi, saya rasa tidak jelas apakah ini masalah konfigurasi jaringan atau masalah kode (pendengar / koneksi melalui alamat IP yang benar). Sampai kami mendapatkan informasi lebih lanjut, ini mungkin kasus moderasi yang terburu-buru.
Grambot

Jawaban:

1

Pertama, sepertinya Anda mengonfigurasi kode Anda untuk mendengarkan di localhost saja dan bukan alamat eksternal. Gunakan koneksi soket seperti ini sebagai gantinya: (sesuai panduan ini )

EDIT (Diubah sesuai diskusi komentar di bawah):

Socket socket = new Socket("PUBLIC_IP_ADDR",5005);

Di mana PUBLIC_IP_ADDRalamat internet Anda menghadap yang dapat Anda temukan di sini

Jika Anda masih tidak dapat memperoleh koneksi, verifikasi bahwa program tersebut tersedia dan mendengarkan ...

Panduan untuk memeriksa port Anda

1) Jika Anda belum melakukannya, buka panduan ini dan pastikan Anda telah melakukan semua langkah.

2) Gunakan alat ini untuk mengonfirmasi port Anda benar-benar terbuka.

Jika # 2 gagal maka port Anda sebenarnya tidak terbuka. Apakah PC yang menerima koneksi aktif mendengarkan pada 5005?

Windows:

Start -> Run -> cmd
  netstat -an | find /i "5005"

Linux:

(From terminal)
  netstat -l | grep 5005

Jika itu tidak memiliki "MENDENGARKAN" terdaftar di sampingnya maka aplikasi Anda tidak mendengarkan koneksi. Tapi saya tidak menduga ini menjadi masalah karena Anda bisa melakukannya di localhost.

Jika itu gagal maka konfirmasikan firewall OS Anda terbuka.

Hanya itu yang bisa saya pikirkan saat ini

Grambot
sumber
kode di atas adalah untuk file klien. di server saya menggunakan kode yang Anda berikan. alat yang Anda berikan memberi saya jawaban positif: Sukses: Saya dapat melihat layanan Anda di 77.126.189.65 pada port (5005) ISP Anda tidak memblokir port 5005 saya juga mencoba melalui cmd untuk memeriksa. ini adalah bagian dari jawabannya: TCP 0.0.0.0-5005 0.0.0.0.0 MENDENGAR 0.0.0.0.0 mybe berarti sesuatu?
0.0.0.0Cukup berarti mendengarkan pada semua IP (saya percaya). Jika Anda memiliki file klien yang mencoba mengakses layanan pada port 5005, 127.0.0.1ia akan berusaha menemukan server Anda di komputer yang sama dengan tempat Anda terhubung. Ubah itu ke alamat IP publik Anda. Saya akan memperbarui jawabannya dengan detail.
Grambot
Maaf, maksud Anda Anda dapat terhubung? Atau Anda masih tidak bisa? SUNTING: Juga, karena Anda membuka layanan Anda di depan umum, saya sarankan menyembunyikan IP untuk sementara waktu jika ada orang tak dikenal yang tersandung di halaman ini dan mulai berusaha untuk terhubung dengan Anda.
Grambot
saya dapat terhubung saat menggunakan 127.0.0.1. saya tidak dapat terhubung ketika saya menggunakan ip eksternal saya untuk koneksi
Bisakah Anda mengedit pertanyaan Anda untuk memasukkan kode yang Anda setel dengan pendengar soket juga?
Grambot
0

Apa yang dikatakan @Brian. Alamat internal Anda mungkin salah, jika program tidak berjalan. Coba ganti "127.0.0.1" dengan alamat internal ("10.whthing") dan kemudian jalankan dari komputer yang sama. Jika itu berhasil, baru Anda harus mencobanya dari komputer lain. Jika diblokir dari komputer lain pada subnet yang sama, maka kemungkinan Anda memiliki firewall perangkat lunak ("Windows Defender" atau semacamnya) yang memblokir koneksi eksternal.

Masalah ruang lingkup masih ada: jika Anda perlu bantuan mengkonfigurasi router Anda, Google dan kemudian superuser.com adalah tempat untuk bertanya. Jika Anda memerlukan bantuan dalam pemrograman, itulah gunanya situs ini.

Ti Strga
sumber
saya berhasil menjalankan program dengan menggunakan ip internal (10.0.0.3 bukan 127.0.0.1). sekarang saya mencoba menjalankan program dengan ip eksternal