Tidak dapat mengakses layanan luar dari dalam LAN

11

Saya memiliki masalah port forwarding yang aneh. Saya mencoba membuka port 22 saya ke jaringan luar. Saya dapat mengaksesnya selama saya tidak berada di dalam LAN. Saya dapat mengaksesnya dari kantor saya misalnya. Tapi dari dalam LAN, saya bisa mengakses port menggunakan ip lokal, tapi saya tidak bisa mengakses port menggunakan IP eksternal. Seolah router memblokir loopback. Saya telah memeriksa semua pengaturan router saya, mematikan semua firewall / penyaringan yang terkait. Ada ide?

erotsppa
sumber

Jawaban:

5

Dengan anggapan Spiff benar, dan router Anda tidak dapat menangani penerusan port ke ip eksternal dari dalam jaringan ada pekerjaan kecil di sekitarnya (dan memang terdengar seperti ini masalahnya);

Anda dapat mengedit file hosts, yang dapat ditemukan di / etc / hosts di sebagian besar sistem-unix dan di C: \ Windows \ system32 \ drivers \ etc \ pada Windows.

jika Anda menambahkan

192.168.0.15  example.com

dalam file itu, komputer Anda akan pergi ke ip yang ditentukan setiap kali Anda mencoba mengakses example.com. Tentu saja Anda harus melakukan ini di setiap komputer yang ingin Anda gunakan dalam jaringan.

Anda dapat memeriksa artikel wikipedia untuk detail lebih lanjut tentang di mana menemukannya: https://en.wikipedia.org/wiki/Hosts_file

Terje
sumber
13

Mengingat Anda menyebutkan penerusan port, saya menganggap gateway rumah Anda bertindak sebagai gateway NAT - atau lebih khusus NAPT -. Apa yang Anda coba lakukan disebut "jepit rambut NAT" atau "jepit rambut NAT", mengacu pada cara jepit rambut harfiah menggandakan kembali pada dirinya sendiri (kiasan yang sama digunakan oleh istilah "pergantian jepit rambut" untuk tikungan tajam di mana sebuah jalan berlipat kembali dengan sendirinya).

Beberapa gateway NAT adalah omong kosong dan tidak mendukung penataan rambut. Mungkin ini saatnya untuk mengeksplorasi opsi peningkatan Anda.

Spiff
sumber
Ini adalah router yang cukup baru jadi saya ragu itu masalahnya.
erotsppa
6
"Baru" tidak berarti "berkualitas tinggi". Selalu ada banyak omong kosong di pasar pada waktu tertentu.
Spiff
Dan komentar itu berlaku delapan tahun kemudian!
Tim_Stewart
@erotsppa - Seperti yang dikatakan Tim_Stewart, "berlaku 8 tahun kemudian" (2018) ... semuanya tergantung pada biaya dan apa yang diperlukan untuk mengimplementasikan solusi vs permintaan untuk solusi semacam itu. Modem / router "rumah" khas Anda tidak memerlukan fungsi seperti itu ... sebuah bisnis, bagaimanapun, akan memiliki persyaratan yang sangat berbeda (staf yang bekerja di dan di luar situs, misalnya, tidak perlu mengubah pengaturan untuk mendapatkan mereka, katakanlah, email (jika mereka menggunakan server surat di tempat) bekerja ketika mereka bekerja di kantor dan ketika mereka bekerja di luar lokasi, dll. Perangkat kelas bisnis seringkali berkinerja lebih tinggi dan memiliki kemampuan ini
Kinnectus
3

Ada jawaban sederhana yang nyata untuk yang ini. NAT sedang menghalangi.

  1. Komputer Anda membuka koneksi ke [ExternalIP]
  2. Router Anda meneruskan koneksi itu ke [SSHInternalIP]. Server SSH Anda melihat koneksi dari [YourInternalIP].
  3. Server SSH Anda mengirimkan paketnya ke [YourInternalIP].
  4. Komputer Anda melihat paket aneh yang berasal dari IP yang tidak pernah diajak bicara dan dibuang.
  5. Koneksi Anda ke TCP / 22 gagal karena jabat tangan TCP 3 arah tidak pernah selesai.

Anda mencoba berbicara dengan IP Publik, tetapi balasannya berasal dari IP internal. Komputer Anda tidak dapat membuat keduanya bekerja bersama. Solusinya adalah dengan menggunakan IP Internal setiap kali Anda berada di belakang router. Saya mengatasi masalah ini pada laptop saya dengan menggunakan string koneksi ssh yang berbeda tergantung di mana saya berada.

SysAdmin1138
sumber
2

Dari apa yang saya mengerti dari menjalankan router OpenBSD dengan NAT, Spiff benar dalam jawabannya: masalah yang Anda alami disebabkan oleh gateway NAT yang tidak mendukung apa yang Anda coba lakukan.

Workstation Anda mengirim paket dengan IP sumber dari alamat internal (katakanlah, 10.0.0.2), tetapi alamat tujuan adalah IP eksternal Anda. Ketika paket tiba di server (SSH?) Anda pada port 22, server membalas ke workstation Anda secara langsung dan tidak ada NAT yang terjadi; sekarang, ketika workstation Anda mendapat balasan dari 10.0.0.3 ketika mengharapkan balasan dari alamat eksternal Anda, itu menjatuhkan paket.

Sepertinya masalah sepele yang dihadapi, tetapi dapat diselesaikan dengan memperbarui file HOSTS workstation Anda, menambahkan server DNS internal (atau mengedit entri server DNS), atau membuat aturan NAT untuk menangani internal-> eksternal-> internal lalu lintas.

ItsOnlyOneLineOfCode
sumber