yerel DNS çözümleyicisine nasıl giriş eklenir [kapalı]


19

Linux üzerinde bazı testler yapmak istiyorum. IP: 1.2.3.4 (varsayım) olan bir makineye küçük bir web sunucusu koymak istiyorum ve belirli bir URL için bir DNS sorgusu yapıldığında: kitty.myweb.com Bu IP adresini döndürmek istiyorum.

Senaryolar:

  1. Bir tarayıcı açtığımda (firefox veya her neyse), kitty.myweb.com URL'sini giriyorum ve tarayıcı DNS sorgusunu yapacak
  2. Kitty.myweb.com için DNS sorgusunu yapan bir program yazmak istiyorum

Her bilgisayarın bazı girişleri önbelleğe alan yerel bir DNS çözümleyicisi olduğunu biliyorum; bir URL çağrısı önce yerel DNS çözümleyicisini sorgular ve karşılık gelen giriş yoksa sorguyu LAN veya İnternet üzerindeki harici bir DNS çözümleyicisine gönderir.

Ne istiyorum yerel DNS çözümleyicisine bir giriş (kitty.myweb.com: 1.2.3.4) eklemek, böylece yukarıdaki 2 senaryo için, DNS yanıtı harici bir sorgu yapmak zorunda kalmadan 1.2.3.4 olacak.

Bunu linux'da yapmak mümkün mü ve eğer öyleyse, nasıl? Bunu yapacak herhangi bir C kodu parçacığı var mı?

Yanıtlar:


30

Girişinizi eklemek için / etc / hosts kullanabilirsiniz. Bu gerçekten DNS kullanmıyor, ancak çoğu uygulama tarafından kullanılan Linux'ta çözümleyici kütüphanesini etkiliyor. Ekle:

1.2.3.4 kitty.myweb.com

Başka bir seçenek de sisteminize basit bir DNS sunucusu kurmak olacaktır. Sık kullandığım dnsmasq. Bazı dağıtımlarda varsayılan olarak önbellek çözücü olarak yüklenir; bu durumda yapılandırmayı yalnızca aşağıdakileri içerecek şekilde değiştirmeniz gerekir:

adresi = / kitty.myweb.com / 1.2.3.4

Kendi DNS sunucunuzu çalıştırıyorsanız, muhtemelen Linux çözümleyici kütüphanesi tarafından kullanılan /etc/resolv.conf ile oynamanız gerekecektir. Çözümleyici kitaplığının yerel bir DNS sunucusuna bakmasını sağlamak için resolv.conf dosyasına bir giriş yapmanız gerekir:

ad sunucusu 127.0.0.1


9

Yerel ana makinenize tek bir DNS girdisi eklemenin en kolay yolu, bunu hosts dosyasına eklemektir. Bu dosyanın konumu dağıtım başına değişiklik gösterebilir, ancak geleneksel konumu budur /etc/hostsve kabaca şu şekilde görünmelidir:

:: 1 localhost localhost.alanadiniz.tld
127.0.0.1 localhost localhost.alanadiniz.tld
1.2.3.4 kitty.myweb.com

Bunun yalnızca kendi bilgisayarınızı etkileyeceğini ve bunun iyi ölçeklenmediğini unutmayın. Başka bir deyişle, basit test için iyidir, sadece birçok bilgisayarda ana bilgisayar dosyalarını düzenlemeye çalışmayın. Bunun için uygun DNS girişleri istersiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.