/Etc/resolv.conf.d ile /etc/resolv.conf dosyasındaki değişiklikleri gerçekleştirmenin “doğru yolu” nedir?


11

Eski günler, resolv.confdurağantım ve siz kendiniz düzenlediniz.

Daha sonra, DHCP istemcisi bazı statik girişleri ve DHCP kirasından ne aldığını kullanarak yeniden yazacaktır.

Bu günlerde, bazı dağıtımlar - benimki gibi (Linux Mint 18.1) /etc/resolv.conf.dbirkaç alt yazı dizisine sahip bir mekanizmaya sahip, ve bunun başlarını ve kuyruklarını yapamıyorum.

O zaman doğru yol nedir, o zaman,

  • DHCP kirasından elde edilen DNS sunucularını kullanmak veya kullanmak istemediğimi belirtmek için?
  • .conf dosyasına sabit girişler eklemek için, DHCP-kiradan elde edilen bir ad sunucusu olmadığında her zaman veya bir yedek olarak?
  • dosyada göreli sipariş hakkında karar vermek için?

Sahip olduğumda kendime ait bazı senaryolar yazmayı önemsemiyorum, sadece mevcut mekanizmaya "karşı çalışmak" ya da yinelenen işler yapmak istemiyorum.


4
Ben kaldırmak resolvconfsunucularda ... unix.stackexchange.com/questions/286195/...
Rui F Ribeiro

dhclientDHCP DNS bilgilerini yoksaymak / değiştirmek için de yapılandırabilirsiniz ; Bunu /etc/resolv.conf.dyapmak için bir mekanizma olduğundan emin değilim (ancak Mint kullanmıyorum ve bu komut dosyalarına sahip değilim).
dirkt

@dirkt: Aslında, şu anda benim içine giren tek girdi /etc/resolv.conflocalhost (dnsmasq'ı çalıştırıyor), bu yüzden dnsmasq, resolv.conf.d mekanizması ve DHCP istemcisinin nasıl etkileşime girdiğini net değil.
einpoklum

Yanıtlar:


2

Cevap basit, resolv.conf.dKlasör / etc / resolvconf / dizininde mevcut ve head / base / original ve tail dosyalarını içeriyor. her biri düzenlenirse resolv.conf/ etc /

resolv.conf/ etc / komutunun başına bazı statik DNS adresleri koymak istediğinizi varsayalım (çünkü her yeniden başlatmada otomatik olarak varsayılan ayarlarına sıfırlanır) head/etc/resolvconf/resolvconf.d/ içindeki dosyayı düzenlemeniz ve yazmanız gerekir Örneğin:

nameserver 1.1.1.1
nameserver 1.0.0.1

bundan sonra aşağıdakileri kullanarak resolvconf hizmetini yeniden başlatın:

sudo service resolvconf restart

Şimdi resolv.conf/ etc / 'de kedi ve yeni değişiklikleri göreceksiniz.

aynı şeyi dosyanın altına koymak istiyorsanız , /etc/resolvconf/resolvconf.d/ tailyerinehead

Not: Bu% 100 test edilmiş ve Ubuntu ve Debian çalışıyor

Düzenleme: Sorunuzun son iki madde işaretini zaten yanıtladım, şimdi DHCP tarafından sağlanan DNS adresini kullanmama hakkında konuşan ilk madde işaretiyle ilgili. Bu gerçekten hangi DNS yazılımını / paketini yüklediğinize bağlıdır, bu nedenle bu Postayı kontrol etmenizi ve durumunda olanı da okuduğunuzdan emin olmanızı öneririm dnsmasq.


1
+1, ancak bu yalnızca sorduğum şeyin bir kısmının nasıl yapılacağını açıklar.
einpoklum

0

resol.conf ve bunun gibi bazı mekanizmalar geçmiş yıllardan günümüze kadar mevcuttur. Komut satırı vardır dhclient, resolvconfLinux adında yapılandırması NetworkManager için yeni arayüzü tanıtmak Ancak son bir yıl içinde bu dosyayı işlemek, nmcli . Bu, her kalıcı ağ yapılandırmasını yönetmek için zengin bir komuttur (çalışma zamanını değil). gibi bir şey kullanabilirsiniz:

$ nmcli connection modify eth0 ipv4.dns 8.8.8.8

Bu komut resolv.confdosyanın üzerine yazılır . RHCA'da el ile resolv.conf dosyasını düzenlememeniz ve komutlarını kullanmamanız önerilir. Bahsettiğiniz resolvconf dizini hakkında, bazı hizmetlerin DNS için kendi conf'leri olabileceğini söyleyebilirim, bu yüzden OpenVpn gibi kendi conf'lerini kullanırlar. /etc/nsswitchÇözme hakkında daha fazla bilgi almak için dosyayı da kontrol edebilirsiniz .


Bunun aslında soruma cevap verdiğine inanmıyorum.
einpoklum

Belki de bu benim sorunuz hakkında anlaşılan özledim ama nsswitchdosya cevap biridir.
Ali Ghasempour

@Einpoklum , çözümlemek için kullanılan araçların sırasına göre resolv.conf(bkz. man resolv.conf) DNS sunucularının sırasını kontrol etmek istediğine inanıyorum man nsswitch.conf. Ama cevabınız yine de ilginç.
xhienne

İlginiz için teşekkürler . Bildiğim kadarıyla resolv.conf sıralı dosya ve çözüm önceliği yukarıdan aşağıya.
Ali Ghasempour
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.