NetworkManager को /etc/resolv.conf के शीर्ष पर DNS सर्वर कैसे जोड़ना है?


11

अभी, मेरा /etc/resolv.conf इस तरह दिखता है:

# Generated by NetworkManager
nameserver 10.165.246.33
nameserver 192.135.82.60
nameserver 10.165.74.2

पहले दो नेमसर्वर स्वचालित रूप से डीएचसीपी के माध्यम से कॉन्फ़िगर किए गए हैं; पिछले एक मैं NetworkManager में मैन्युअल रूप से जोड़ा गया एक है। यह सबसे महत्वपूर्ण भी है, क्योंकि यह हमारे आंतरिक डोमेन नाम (जैसे build-server-17.our-company-domain.com) को हल करता है ।

मुसीबत, है NetworkManager में जोड़ देता है नीचे की /etc/resolv.confहै, इसलिए जब एक इंट्रानेट यूआरएल तक पहुँचने, अपने ब्राउज़र की कोशिश करता पहले दो सर्वर का उपयोग कर इसे सुलझाने के लिए, और यह उम्र लेता है।

मैं स्वचालित रूप से कॉन्फ़िगर किए गए लोगों से पहले NetworkManager मैन्युअल रूप से कॉन्फ़िगर किए गए DNS सर्वर को कैसे जोड़ूं ?


1
सामान्य तौर पर, आपके resolv.conf के सभी DNS सर्वरों को समान परिणाम लौटाने चाहिए। मिश्रित सर्वर में आंतरायिक विफलताओं और बहुत दर्द के लिए एक नुस्खा है।
फिलिप केंडल

जवाबों:


3

मैं नहीं जानता कि कौन सी प्रणाली विशेष रूप से संबोधित करने के लिए है, लेकिन अगर आपका उपयोग कर रहा है resolvconf, तो रूट ( su -या sudo -i) के रूप में निम्नलिखित प्रयास करें :

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

उस फ़ाइल में एक चेतावनी है जिसमें कहा गया है कि मैन्युअल परिवर्तन अधिलेखित हो जाएंगे; लेकिन, संदर्भ में, संदेश लागू होता है /etc/resolv.conf, नहीं /etc/resolvconf/resolv.conf.d/head

यह सूची में वांछित नाम सर्वर को पहले रखना चाहिए। बेशक, यदि यह आपके ऑपरेटिंग सिस्टम पर काम करता है, तो 10.165.74.2 NetworkManager से हटाया जा सकता है।

स्थानीय रिसॉल्वर, dnsmasqएक उत्कृष्ट मार्ग भी है। का उपयोग करते हुए dnsmasq, एक DNS और DHCP पर अधिक नियंत्रण का उपयोग कर सकता है। उदाहरण के लिए, इस परिदृश्य में, dnsmasqएक विशिष्ट नाम सर्वर को उसके serverविकल्प के साथ निर्दिष्ट डोमेन नाम के आधार पर क्वेरी कर सकता है। dnsmasq.confनीचे से अपने उद्देश्य से संबंधित एक स्निपेट देखें ।

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

अपडेट करें

ऑपरेटिंग सिस्टम का उल्लेख करने के लिए धन्यवाद। CentOS 7 पर, कई विधियाँ हैं। GUI में, एप्लिकेशन> सिस्टम टूल> सेटिंग्स> नेटवर्क पर क्लिक करें। कॉन्फ़िगर करने के लिए कनेक्शन का चयन करें।

CentOS 7 NetworkManager - कनेक्शन कॉन्फ़िगर करें

स्वचालित DNS बंद करें और नाम सर्वर की आपूर्ति करें। कॉन्फ़िगरेशन लागू करें।

CentOS 7 NetworkManager - स्टेटिक DNS सेटिंग्स लागू करें

अगली बार NetworkManager उस कनेक्शन को शुरू करता है, यह कस्टम मान लिखता है। (परीक्षण करते समय, मैंने नेटवर्क को बंद कर दिया और फिर दोबारा चालू किया क्योंकि मेरे पास दो नेटवर्क कनेक्शन थे।)

प्रलेखन के अनुसार ,

  1. NetworkManager, nmtui के लिए एक सरल शाप-आधारित टेक्स्ट यूजर इंटरफेस (TUI) उपलब्ध है।
  2. एक कमांड-लाइन टूल, nmcli, उपयोगकर्ताओं और लिपियों को NetworkManager के साथ बातचीत करने की अनुमति देने के लिए प्रदान किया जाता है। ध्यान दें कि नेटवर्क प्रबंधन के सभी पहलुओं को नियंत्रित करने के लिए nmcli का उपयोग जीयूआई-कम सिस्टम जैसे सर्वरों पर किया जा सकता है। यह GUI उपकरणों के साथ एक समान पायदान पर है।

विशेष रूप से, nmcli प्रलेखन बहुत अच्छा लग रहा था।


1
क्षमा करें, यह CentOS है, जिसमें resolvconfपैकेज नहीं है । dnsmasqएक अच्छा समाधान की तरह लगता है, यद्यपि।
नौसिखिया लिनक्स उपयोगकर्ता

8

मैंने गलती से एक डुप्लीकेट प्रश्न यहाँ बना दिया । उत्तर है, लेकिन अनिवार्य रूप से, आपको बनाने की आवश्यकता है:

/etc/dhcp/dhclient.conf

यदि यह पहले से मौजूद नहीं है, और जोड़ें:

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

अंत में अर्धविराम को मत भूलना!

उसके बाद, बस रिबूट करने से स्वचालित रूप से 'नेमसर्वर [सर्वर का आईपी पता]' लाइन '/etc/resolv.conf' में ऊपर तक पहुंच गया!


अद्भुत! यह NetworkManager द्वारा उपयोग किया जाने वाला बैकेंड है, और इसे सभी वाईफाई कनेक्शन (स्थिर नहीं) के साथ काम करने का एकमात्र तरीका है। धन्यवाद !
एड्रियन एम।

0

एक और तरीका है, NetworkManager.service को बंद करने की आवश्यकता नहीं है। बस सेट ifcfg-idevice:

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

आपको /etc/NetworkManager/NetworkManager.conf सेटिंग सेट करने की आवश्यकता नहीं है, जैसे:

[main]
dns=none
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.