Saya sedang menyiapkan intranet rumah untuk saya dan teman sekamar saya. Ide saya adalah bahwa kita akan dapat menyimpan hal-hal seperti tagihan utilitas masa lalu di tempat yang lebih mudah diakses daripada laci di dapur dll. Pokoknya, saya memiliki Apache 2 berjalan pada Raspberry Pi, pada LAN saya, dan jika saya menggunakan alamat IP-nya, saya bisa mengakses halaman yang dilayani di Pi. Karena saya melakukan proyek ini lebih banyak untuk belajar tentang jaringan untuk memberikan layanan ke apartemen saya, saya pikir itu akan keren jika jaringan saya dapat memberikan resolusi nama host untuk LAN saya. Jadi, alih-alih mengarahkan browser saya ke 192.168.1.151
, alamat IP Pi, saya bisa mengarahkannya ke oberon
(nama hostnya) dan melihat halaman web yang dilayani oleh Pi.
Sekarang saya tahu saya bukan orang pertama yang ingin melakukan ini, jadi saya mulai dengan Googling. Pertanyaan ini, juga di Unix & Linux, telah sangat membantu saya: Cara membuat mesin dapat diakses dari LAN menggunakan nama hostnya . Pada titik ini, saya sudah mencoba segalanya dalam jawaban yang diverifikasi. Saya berpikir tentang menggunakan hosts
file, tetapi itu berarti saya harus memberitahu teman sekamar saya untuk mengkonfigurasi mesin mereka, yang saya tidak ingin mereka lakukan. Saya mencoba untuk memesan sewa DHCP untuk Pi pada router saya (NETGEAR WNR1000v2 (alias N150)), dan sementara reservasi berhasil, resolusi nama host tidak. Jenis ini membuat saya frustasi karena saya memberi tahu router saya IP dari Pi dan nama hostnya, namun masih tidak memberikan informasi ini kepada klien di LAN saya.
Dengan kedua metode ini tidak berfungsi, saya memutuskan untuk menginstal dnsmasq
pada Pi. Tampaknya mudah dikonfigurasikan dan saya akan senang mempelajari alat baru. Saya menginstal dan menjalankannya dengan baik (tampaknya). Saya bisa dig
atau nslookup
nama panggilan Pi (yang saya tetapkan /etc/hosts
untuk oberon
dan homenet
) dan mendapatkan hasil yang benar. Saya dapat melakukan hal yang sama untuk nama internet seperti yahoo.com
dan mendapatkan jawaban yang benar karena saya mengatur Google 8.8.8.8
dan 8.8.4.4
sebagai server cadangan di /etc/dnsmasq.conf
. Lihat ini:
me@oberon~$ dig oberon
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> oberon
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10787
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;oberon. IN A
;; ANSWER SECTION:
oberon. 0 IN A 192.168.1.151
;; Query time: 10 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun Oct 6 18:59:18 2013
;; MSG SIZE rcvd: 40
Perhatikan bahwa SERVER
is 127.0.0.1
: oberon
sedang mencari alamat IP-nya sendiri. Ini yang saya harapkan. Outputnya sama jika saya lakukan dig oberon @localhost
. Karena hasil ini, saya berpikir itu dnsmasq
berfungsi dengan baik. Jadi untuk membawanya ke tingkat berikutnya, saya ingin semua klien di LAN saya dapat dapat mengetikkan oberon
browser mereka dan dibawa ke oberon
halaman indeks. Untuk ini saya tahu saya perlu mengkonfigurasi router saya (permintaan maaf jika ini jauh dari wilayah Unix & Linux).
Saya memiliki Netgear WNR1000v2 yang cukup saya kenal. Saya telah mengkonfigurasi port forwarding sehingga saya dapat SSH ke dalam Pi, dan saya telah melihat-lihat pengaturan lainnya juga. Saya tahu bahwa sebelum saya memulai proyek ini, saya mendapatkan server DNS dari ISP saya, tetapi sekarang saya ingin menggunakan server DNS tersebut tetapi juga digunakan 192.168.1.151
sebagai cek terakhir. Jadi saya mengubah konfigurasi DNS router saya menjadi sebagai berikut:
Jadi dengan konfigurasi ini, saya diharapkan dapat melakukannya nslookup oberon
di desktop (Windows) saya dan mendapatkan hasilnya 192.168.1.151
. Tetapi ini tidak terjadi. Inilah yang terjadi:
C:\Users\me>nslookup oberon
Server: UnKnown
Address: fe80::226:f2ff:fefa:bea
*** UnKnown can't find oberon: Non-existent domain
Menyetel ulang atau dnsflushing
adaptor jaringan pada mesin Windows saya tidak mengubah apa pun.
Sekarang inilah mengapa saya agak merobek rambut saya di sini:
C:\Users\me>nslookup oberon 192.168.1.151
Server: oberon.lan
Address: 192.168.1.151
Name: oberon
Address: 192.168.1.151
Jelas, dnsmasq
bekerja dengan baik. Jika saya memberi tahu kotak Windows saya untuk menggunakan 192.168.1.151
untuk menyelesaikan nama oberon
, semuanya baik-baik saja ( .lan
domain adalah bagian dari konfigurasi dnsmasq
, jadi saya berharap melihatnya di sana). Jika saya bisa mendapatkan router saya untuk memberitahu mesin Windows saya untuk digunakan 192.168.1.151
ketika membuat permintaan DNS, saya harus baik!
Jadi sepertinya bagi saya bahwa masalahnya ada di router saya, tapi saya tidak tahu apa yang harus dilakukan selain mengubah server DNS untuk dimasukkan 192.168.1.151
seperti yang sudah saya miliki. Adakah yang bisa membantu saya di sini? Saya akan mencoba memberikan informasi lebih lanjut yang diinginkan.