Saya memiliki modem DSL dengan alamat IP publik ( 201.206.x.x
), dan saya memiliki server web di jaringan internal saya ( 192.168.0.50
).
Saya mengatur modem untuk meneruskan permintaan ke port 80 ke server web saya, jadi, jika saya mengakses 201.206.x.x
dari luar jaringan saya, itu menunjukkan halaman web saya, hal yang sama terjadi jika saya mengakses 192.168.0.50
dari komputer di dalam jaringan saya.
Sekarang, masalahnya adalah ketika saya mencoba mengakses 201.206.x.x
dari jaringan internal saya, browser mencoba untuk terhubung ke konfigurasi modem DSL, alih-alih mengarahkan permintaan saya ke server Web saya.
Pengaturan mana yang harus saya ubah di modem untuk mengatur pengalihan ini?
Jawaban:
Masalahnya adalah bahwa penulisan ulang paket umumnya hanya dapat terjadi ketika melintasi firewall. Secara umum router tidak dapat melakukan penulisan ulang yang diperlukan ketika permintaan datang dari jaringan yang sama dengan permintaan yang akan ditulis ulang. Solusi umum untuk masalah ini adalah menempatkan proxy web di luar jaringan yang mengembalikan permintaan melalui firewall Anda.
Saya menduga masalah khusus Anda adalah bahwa Anda ingin mengakses situs web melalui nama host DNS-nya. Anda bisa mengatasinya dengan menggunakan DNS "split-horizon", sehingga memperhatikan dari mana permintaan itu berasal dan menjawab dengan tepat: Jika permintaan itu datang dari dalam jaringan Anda, itu membagikan 192.168.0.50 untuk permintaan yang datang dari Anda jaringan dan IP publik untuk semua orang.
Salah satu dari saran ini dapat diterapkan pada host apa pun di luar jaringan Anda, seperti contoh mikro Amazon EC2 (gratis).
sumber
Saya akan mengatakan @Insyte ke sesuatu ketika dia berbicara tentang masalah menjadi masalah resolusi DNS .. yang kemudian berarti masalahnya adalah penulisan ulang paket (baca posting @Insyte lagi untuk penjelasan itu).
Dengan asumsi Anda memiliki pengaturan berikut:
201.206.x.y
192.168.0.50
201.206.x.y
→192.168.0.50
Anda kemudian mengetik yang berikut ini di browser Anda, saat Anda berada di jaringan internal Anda:
dan kesalahan terjadi. Jadi, solusi: retas file host Anda.
Di Windows, buka
C:\windows\system32\drivers\etc\hosts
(perhatikan, tidak ada ekstensi pada file itu). Di Linux, file tersebut berada di/etc/hosts
.Jika Anda membuka file itu di Notepad, Anda dapat melihat entri yang digunakan untuk mengganti DNS. Jika Anda ingin memperbarui file itu, Anda harus membuka Notepad (atau program apa pun yang Anda gunakan untuk mengedit file) dengan hak Administrator - jika tidak, Anda tidak dapat menyimpan file tersebut.
Tambahkan ini ke file host Anda:
192.168.0.50 www.yourwebsite.com
Kemudian restart browser Anda , masukkan URL dan biola! Bekerja. Jadi ini berarti, browser Anda tidak bergantung pada DNS Anda untuk menyelesaikan domain Anda ke IP. Alih-alih, kami mengganti ini dan berkata: Browser, cukup buka IP internal saya untuk nama domain itu, alih-alih meminta DNS untuk alamat IP .
Jika Anda berada di kantor, maka Anda dapat meminta semua orang yang perlu mengakses situs web internal ini, untuk meretas file host mereka, atau jika Anda memiliki DNS internal, maka Anda dapat menambahkan entri ke dalamnya.
Gagasan lain adalah memiliki server proxy internal (untuk semua penjelajahan web, dll) dan kemudian meretas file host di server proxy. Ini berarti browser Anda akan berkata, Proxy, bisakah Anda mengambilkan saya sumber daya
http://www.mywebsite.com
dan proxy mengatakan Tentu, dan karena saya telah diberitahu untuk mengabaikan DNS untuk domain itu, saya hanya akan memberikan IP yang telah dikodekan dalam file host saya .sumber
Ini adalah masalah umum dengan cara beberapa router menangani lalu lintas yang ditujukan untuk alamat publik mereka dari alamat internal - mereka tidak mengikuti aturan port forwarding yang sama dengan permintaan dari luar jaringan. Apa yang perlu Anda cari di router Anda adalah refleksi NAT . Ini akan memungkinkan router untuk menangani permintaan internal untuk IP publik untuk menggunakan aturan port forwarding yang sama seolah-olah permintaan tersebut berasal dari luar jaringan.
sumber
Saya bisa membantu Anda lebih baik jika Anda bisa memberi saya model dan model modem ...
Tetapi yang terjadi di sini adalah bahwa biasanya halaman konfigurasi router atau modem hanya akan muncul ketika mengunjungi IP internal mereka (192.168.0.1)
Tapi apa yang tampaknya terjadi di sini adalah Mengidentifikasi permintaan masuk (201.206.xx) Karena datang dari dalam, maka putuskan untuk memberi Anda halaman konfigurasi alih-alih rute normal ke server web Anda ...
Sekarang jika Anda menggunakan modem tingkat Konsumen, Anda mungkin tidak dapat mengubah ini (maaf)
Tapi mungkin Anda bisa: Coba dan lihat apakah ada pengaturan 'mendengarkan' di halaman konfigurasi admin Anda
Di sana Anda dapat mencoba mengubah halaman administrasi Anda ke port lain atau membatasi alamat yang didengarnya
sumber
Mungkin masalahnya adalah administrasi jarak jauh diizinkan.
sumber
Anda dapat menambahkan rute untuk mengakses IP publik server secara langsung melalui IP lokalnya. Di Windows, perintahnya seperti
route add [public IP] mask 255.255.255.255 [the server's local IP]
Untuk menambahkan rute persisten, tambahkan
-p
parameter ke perintah di atas.Kemudian setiap kali Anda mengunjungi IP publik, komputer akan pergi melalui IP lokal server sebagai gateway. Karena server mengetahui IP publiknya sendiri, ia akan memproses paket itu sendiri, alih-alih meneruskannya ke jaringan lokal.
Anda harus memastikan IP lokal server statis.
sumber
Memiliki masalah yang sama. Saya dapat memperbaikinya dengan menambahkan nama host DNS ke daftar Pemetaan Host DNS router saya. Saya menemukan pengaturan ini tercantum dalam daftar opsi lanjutan dari router saya.
sumber
Di router saya, saya harus mematikan "akselerasi NAT" (Cut Through Forwarding) karena ini mematahkan loopback NAT ...
sumber