NetworkManager'ın /etc/resolv.conf dosyasının en üstüne bir DNS sunucusu eklemesini nasıl sağlayabilirim?


11

Şu anda, /etc/resolv.conf'um şöyle görünüyor:

# Generated by NetworkManager
nameserver 10.165.246.33
nameserver 192.135.82.60
nameserver 10.165.74.2

İlk iki ad sunucusu DHCP aracılığıyla otomatik olarak yapılandırılır; sonuncusu, NetworkManager'da elle eklediğim. Ayrıca dahili alan adlarımızı (ör. build-server-17.our-company-domain.com) Çözdüğü için de en önemlisidir .

Sorun NetworkManagerın ekler, olan alt ait /etc/resolv.confbir intranet URL'sini erişmek için o zaman, benim tarayıcı çalışır ilk iki sunucularını kullanarak çözmeye ve yaşları alır.

NetworkManager'ın elle yapılandırılan DNS sunucusunu otomatik olarak yapılandırılmış olanlardan önce nasıl ekleyebilirim ?


1
Genel olarak, resolv.conf dosyanızdaki tüm DNS sunucuları aynı sonuçları döndürmelidir. Burada karışık sunucular olması, kesintili arızalar ve çok fazla acı için bir reçete.
Philip Kendall

Yanıtlar:


3

Hangi sistemi özel olarak ele alacağımı görmüyorum, ancak sizinkini kullanıyorsanız resolvconf, kök ( su -veya sudo -i) olarak aşağıdakileri deneyin :

echo 'nameserver 10.165.74.2' >> /etc/resolvconf/resolv.conf.d/head
resolvconf -u

Bu dosyada manuel değişikliklerin üzerine yazılacağını belirten bir uyarı vardır; ancak, bağlam olarak, mesaj için geçerlidir /etc/resolv.conf, değil /etc/resolvconf/resolv.conf.d/head.

Bu, önce istenen ad sunucusunu listeye yerleştirmelidir. Tabii ki, bu işletim sisteminizde çalışıyorsa, 10.165.74.2 NetworkManager'dan kaldırılabilir.

Yerel çözümleyici, dnsmasqaynı zamanda ileriye doğru mükemmel bir yoldur. Kullanarak dnsmasq, DNS ve DHCP üzerinde çok daha fazla kontrol kullanılabilir. Örneğin, bu senaryoda, seçeneği dnsmasqile belirtilen bir etki alanı adına dayalı olarak belirli bir ad sunucusunu sorgulayabilir server. dnsmasq.confAşağıdaki hedefinize uygun olabilecek bir pasajı görün .

# Add other name servers here, with domain specs if they are for
# non-public domains.
server=/our-company-domain.com/10.165.74.2

Güncelleme

İşletim sisteminden bahsettiğiniz için teşekkür ederiz. CentOS 7'de birçok yöntem var. GUI'de Uygulamalar> Sistem Araçları> Ayarlar> Ağ'ı tıklayın. Yapılandırmak için bir bağlantı seçin.

CentOS 7 NetworkManager - Bağlantıyı Yapılandır

Otomatik DNS ve tedarik adı sunucularını kapatın. Yapılandırmayı uygulayın.

CentOS 7 NetworkManager - Statik DNS Ayarlarını Uygula

NetworkManager bu bağlantıyı bir sonraki başlatışında özel değerleri yazar. (Test sırasında, iki ağ bağlantım olduğu için ağı kapatıp tekrar açtım.)

Belgelere göre ,

  1. NetworkManager, nmtui için basit bir curses tabanlı metin kullanıcı arayüzü (TUI) mevcuttur.
  2. Kullanıcıların ve komut dosyalarının NetworkManager ile etkileşime girmesine izin vermek için nmcli adlı bir komut satırı aracı sağlanmıştır. Nmcli'nin NetworkManager'ın tüm yönlerini kontrol etmek için sunucular gibi GUI'siz sistemlerde kullanılabileceğini unutmayın. GUI araçlarıyla eşit bir temeldedir.

Özellikle, nmcli belgeler çok iyi görünüyordu.


1
Üzgünüz, bir resolvconfpaketi olmayan CentOS . dnsmasqYine de iyi bir çözüm gibi görünüyor.
Newbie Linux Kullanıcısı

9

Yanlışlıkla burada yinelenen bir soru oluşturdum . Cevap orada, ama aslında şunları oluşturmanız gerekiyor:

/etc/dhcp/dhclient.conf

zaten mevcut değilse ekleyin:

prepend domain-name-servers [ip address of server];

Sonunda noktalı virgül unutmayın!

Bundan sonra, sadece yeniden başlatma otomatik olarak '/etc/resolv.conf' içindeki 'nameserver [sunucunun ip adresi]' satırını yukarı taşıdı!


1
Harikulade! NetworkManager tarafından kullanılan arka uç ve tüm wifi bağlantılarıyla (statik değil) çalışmanın tek yolu budur. Teşekkürler !
Adrien

0

Başka bir yol daha var, NetworkManager.service'i kapatmanıza gerek yok. Sadece ifcfg-idevice'yi ayarlayın:

PEERDNS=no
DNS1=10.165.74.2
DNS2=OTHERDNS
DOMAIN=DEMO.COM

/Etc/NetworkManager/NetworkManager.conf ayarlarını yapmanız gerekmez, örneğin:

[main]
dns=none
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.