Yamakaja'nın cevabına ek olarak , yerel bir DNS sunucusu da bu şekilde kurulur .
İlk önce, DNS sunucusunu çalıştırmak istediğiniz bir bilgisayara ihtiyacınız var. Bu, normal bilgisayarlarınızdan biri olabilir (eğer Linux kullanıyorlarsa ve çoğu zaman çalışıyorlarsa) veya örneğin bir Ahududu Pi . Böyle bir cihazın avantajları ucuz olması, fazla güce ihtiyaç duymaması ve küçük olmasıdır.
DNS sunucusunu ayarlama
dnsmasq
DNS sunucusunu küçük ağlarda kullanım için ideal olan küçük bir DNS sunucusu aracı olan Raspberry Pi'ye kurmaya karar verdim . bind
Fiili standart DNS aracını da kullanabilirsiniz , ancak bu muhtemelen küçük bir ev ağı için çok güçlüdür.
dnsmasq
Debian tabanlı sistemlerde (örn. Raspbian) paket yöneticisini kullanarak kurun .
sudo apt-get install dnsmasq
Şimdi zaten statik bir IP adresi tahsisi kurduğunuzu farz ediyorum (yani sorunuzda bahsettiğiniz IP adresleri değişmiyor). Eğer yapmadıysanız, dnsmasq
aynı zamanda bir DHCP sunucusu olarak kullanılabilir, ama o henüz yapmadık.
dnsmasq
ana bilgisayar adlarını /etc/hosts
. Bu dosyayı aşağıdaki gibi düzenleyin:
# IP address Host name
192.168.1.1 router
192.168.1.22 printer
Ana bilgisayar adı router
şimdi 192.168.1.1
, printer
olarak atandı 192.168.1.22
.
Şimdi kendi DNS sunucunuzu kurdunuz, ancak ağınızdaki bilgisayarlar henüz kullanmıyor. Bu sunucuyu kullanmalarını sağlamak için bir adım hazırlık yapmanız gerekir:
Dnsmasq cihazınızın IP adresini kullanarak bulun ip address
(varsayalım 192.168.1.42
). Açın /etc/dnsmasq.conf
ve aşağıdaki satırları ekleyin:
listen-address=127.0.0.1
listen-address=192.168.1.42
Bu, dnsmasq
talep edildiğinde 127.0.0.1
(yani DNS sunucusunu kullanmak istediğinde) veya 192.168.1.42
(yani diğer bilgisayarlar DNS sunucusunu kullanmak istediğinde ) ne zaman talep edildiğini dinlemesini söyler .
DNS sunucusunu kullanma
Ağınızdaki her bilgisayara, 192.168.1.42
DNS sunucusu olarak da kullanması gerektiğini söylemelisiniz . Bunu yapma şekliniz işletim sisteminize bağlıdır. Belirlediğiniz işletim sistemi için internette kolayca arama yapabilirsiniz (yalnızca "DNS sunucusunu <OS> üzerinde değiştir" veya benzeri bir şey arayın).
Windows 7 için bu öğreticiyi takip edebilirsiniz : https://www.opennicproject.org/configure-your-dns/how-to-change-dns-servers-in-windows-7/ .
Sistemimde (Arch Linux), aşağıdaki satırı eklemek zorunda kaldım /etc/resolvconf.conf
name_servers=192.168.1.42
Kullanmanız gereken dosyanın ağ yöneticisi yapılandırmanıza bağlı olduğunu unutmayın. DNS'nizi kullanmak istediğiniz her bilgisayara DNS sunucusu IP'sini ekleyin.
Hemen işe yaramazsa, muhtemelen aygıtları yeniden başlatmanız gerekecektir.
İşte bu, bitti. Artık /etc/hosts
dnsmasq sunucusuna girdiğiniz tüm cihazlara , yalnızca verdiğiniz ana bilgisayar adını kullanarak erişebilirsiniz .
(İsteğe bağlı) İşlevsellik kontrol etme
DNS çözümünün doğru çalışıp çalışmadığını kontrol etmek istiyorsanız dnsutils
, sunucunuzu kullanması gereken sisteme (Linux) yükleyin . Sonra yürüt
$ dig router
Bu böyle bir şey döndürmeli
; <<>> DiG 9.10.4-P1 <<>> router
;; global options: +cmd
;; Got answer:
...
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;router. IN A
;; ANSWER SECTION:
router. 0 IN A 192.168.1.1
;; Query time: 14 msec
;; SERVER: 192.168.1.42#53(192.168.1.42)
;; WHEN: So Jun 26 10:43:18 CEST 2016
;; MSG SIZE rcvd: 50
Size çözmek istediğiniz ana bilgisayar adını, çözümlendiği IP adresini ve kullanılan DNS sunucusunu gösterir. Gördüğün gibi, her şey yolunda.
(İsteğe bağlı) TLD Belirtme
Cihazlara yalnızca router
veya printer
değil, router.home
ve ile değil erişmek istiyorsanız, cihazınıza printer.home
aşağıdaki satırları ekleyin /etc/dnsmasq.conf
:
expand-hosts # Tells dnsmasq to add a TLD to each host name
domain=home # The TLD
Tekrar başlatmanız gerekebilir.
Kaynaklar / daha fazla okuma
Hakkında dnsmasq
:
Hakkında bind
(eğer ilgileniyorsanız):