Yerel ağımdaki herkesin yerel olarak barındırılan bir siteyi görüntüleyebilmesi için nasıl 'yerel' bir alan adı ayarlayabilirim?


16

MediaWiki'yi ev makinelerimden birinde kurmak ve ardından yerel ağda 'wiki.home' veya 'wiki.local' için tüm isteklerin bu kutuyu işaret etmesini istiyorum. Bunun her bir / etc / hosts dosyasını ayrı ayrı düzenleyerek yapılabileceğini biliyorum, ancak daha otomatik bir şey istiyorum, örneğin, bir arkadaşım veya aile üyesi evime gelirse, siteyi görüntülemek için dosya barındırır.

Bunu yapmanın kolay bir yolu var mı? Wiki'yi çalıştırıyorum ve dnsmasq'a bakıyorum, ancak DNS'yi nasıl doğru şekilde ayarlayacağımı anlayamıyorum. Otomatik bir çözüm istediğim için yönlendiricimdeki DNS ayarlarını değiştirmem gerekiyor gibi görünüyor, ancak orada DNS ayarlarını değiştirirsem harici ana bilgisayarları nasıl çözebilirim?

Konfigürasyon Ayrıntıları

  • Yönlendirici: Netgear WNR2000v2. Yöneltici, DNS sunucularını manuel olarak belirleme seçeneği sunuyor, ki bu da çalışır duruma getirmek istiyorsam Ubuntu kutumu işaret etmem gerektiğini varsayıyorum.

  • MediaWiki ve dnsmasq host: Ubuntu 12.04'ü çalıştırır. Ben dnsmasq yapılandırma ile bazı zorluk yaşadım (çoğunlukla benim deneyimsizlik nedeniyle). Örneğin, emin değilim, ancak kurulum sırasında Ubuntu DNS ayarlarımı değiştirdi, böylece /etc/resolv.confartık 127.0.0.1tek DNS sunucusu olarak kaldı. Bu noktada, yerel ana bilgisayarlar, ama başka bir şey çözebilir. Ben geçici olarak ikincil ad sunucusu olarak değiştirerek /etc/resolv.confve ekleyerek çözdüm 192.168.1.1, ama burada endişe 192.168.1.1DNS için Ubuntu kutusunu kullanarak olacaktır. Burada bariz bir şeyi mi kaçırıyorum?

  • dnsmasq ayarları: aşağıdaki satırları uncommented:

    domain-needed
    bogus-priv
    local=/local/
    domain=local
    

Yapılandırma ayrıntılarınızı yayınlamayı düşünün. Ayrıca, ne denediniz? Yönlendiricinizde hangi ayarları değiştirdiniz? Ne tür yönlendiriciniz var? Linux kullandığınızı varsayıyorum, ama hangi dağıtım? Konu hakkında bir kitap yazabileceğimiz için yanlış gidebilecek çok şey var;)
jmort253

dnsmasq çalışır, ancak diğer alternatifler arasında mDNS ve NIS bulunur .
Lèse majesté

makinenizin adını kablosuz olarak değiştirebilir misiniz?
ytpillai

Yanıtlar:


8

Standart DNS ile, yerel etki alanı için yetkili bir DNS sunucusu çalıştırırsınız ( home.veyalocal. ikincisinden kaçınmak daha iyi olsa da - aşağıdaki nota bakın), ancak diğer tüm etki alanları için çözümleyici görevi görür.

dnsmasq bu amaçla kullanılabilir - varsayılan olarak etkin özyinelemeli mod vardır ve yapılandırmanız iyi görünür; tek gereken, yerel olmayan alanlar için hangi ad sunucularının kullanılacağını söylemek. Normalde bunlar sistem /etc/resolv.confdosyasından okunur ; ancak, yerel etki alanının DNS sunucusu bilgisayarında da çalışmasını istediğiniz için , orijinal resolv.conf'un işaret edeceği şekilde , yalnızca dnsmasq tarafından kullanılacak özel bir resolv.conf kopyası oluşturmanız gerekir .nameserver 127.0.0.1

# cp /etc/resolv.conf /etc/dnsmasq-resolv.conf
# echo "nameserver 127.0.0.1" > /etc/resolv.conf
# dnsmasq -r /etc/dnsmasq-resolv.conf

Not: Bu talimatlar çok basittir ve kullanımdaki Linux dağıtımına uyarlanmalıdır. Özellikle, dnsmasq ile ilgili Debian ve Ubuntu kılavuzlarını kontrol edin .

Bundan sonra, yönlendiricinin bu bilgisayarı DNS sunucusu olarak kullanacak şekilde yapılandırılması gerekir; ağınızdaki bilgisayarlar tarafından yapılan tüm DNS sorguları daha sonra dnsmasq tarafından işlenir .

(Örneğin Tam özellikli DNS sunucuları, bind9 , özyinelemeli sorguları kendilerini gerçekleştirebilir -.. Memba nameserverlar yapılandırarak tamamen isteğe hale Bu ISS'nizin ad sunucularının, örneğin işe nasıl Ancak, kendi etki alanını barındıran bind9 oldukça yılında, ilk başta karmaşık basit dnsmasq ile karşılaştırma .)


Not: yapılandırılmış (Bonjour aka) Avahi varsa herhangi ağda bilgisayara eğer (Ubuntu sahip olan, varsayılan olarak), en iyisi önlemek local.DNS gibi bir şey ve seçim home.yerine şeklindeki adları gibi, name.localzaten Avahi tarafından işlenir .

(Her ne kadar Avahi normal olarak yanıt verirse de current-hostname.local, mDNS'in wiki.localçalışma şekli nedeniyle ek IP adreslerinin eklenmesi gibi ek girişler yayınlamak aslında mümkündür . Bu nedenle, merkezi DNS yerine Avahi kullanmak, daha fazla avantaj sunuyoruz, bu yüzden önermiyorum.)


2

Avahi arka plan programı, bunu yapmanın en kolay yolu olarak buldum. Not: .local etki alanına bağlanmak için Windows makineleri kullanıyorsanız, bu makinelerde iTunes veya başka bir Bonjour istemcisi yüklü olduğundan emin olmanız gerekir.

Daha fazla bilgi için bu bağlantıya göz atın: http://www.howtogeek.com/167190/how-and-why-to-assign-the-.local-domain-to-your-raspberry-pi/

Bu bağlantı Raspberry Pi'ye özgü olsa da, Ubuntu makinelerinde de aynı şekilde çalışmalıdır. Kullanılmayan diğer Linux dağıtımları için, uygun paket yöneticinize apt-getayarlayın apt-get- ör.yum Fedora ve CentOS için)

İşte bunu Raspberry Pi medya sunucumda devam ettirmek için çalıştırdığım tam komutlar:

sudo apt-get update && sudo apt-get upgrade sudo apt-get install avahi-daemon

Buradan otomatik olarak bilgisayarınızın ana bilgisayar adını ve .localuzantısını alan adı olarak kullanmaya başlar . Dolayısıyla, makinenizin ana bilgisayar adı açıksa, üzerinde Bonjour / Avahi bulunan herhangi bir makinenin (yani tüm Mac'ler ve iTunes yüklü Windows makineleri) URL çubuğuna mediaserveryazarak ağa erişebilirsiniz mediaserver.local.


0

Yerel ad çözümlemesi basit bir özelliktir ve kullandığım çoğu yönlendiricinin bir parçası olmuştur. Ayrıca DD-WRT ürün yazılımında da uygulanır. Netgear, sürekli talep edilen bu özelliği umursamıyor .

Yani, burada yayınlanan diğerlerinden çok daha basit olan cevap - sorundan kaçının ve Netgerat yönlendiricinizi yerel ad çözümlemesini destekleyen bir şeye değiştirin. Ya da, bu bir seçenek değilse ve gücü hissediyorsanız ve zamanınız varsa, üzerine DD-WRT yanıp söner.

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.