जब मैं बाहरी DNS का उपयोग कर रहा हूं तो 127.0.0.1 के रूप में dns सर्वर की रिपोर्ट क्यों खोदें?


12

मैं अनबाउंड का उपयोग करता हूं और आमतौर पर ओपन डीएनएस का उपयोग अपने डीएनएस सर्वर के रूप में करता हूं।

जब मैं dig google.comकहता हूं तो मुझे मिलता है SERVER: 127.0.0.1#53(127.0.0.1)। पोर्ट # 53 पर यह बात वास्तव में क्या सुन रही है? क्या यह अनबाउंड है या यह dnsmasq के साथ कुछ करना है (क्या मुझे भी dnsmasq स्थापित है जैसा dnsmasq.confकि प्रतीत नहीं होता /etc?)

Resolv.conf में, nameserver 127.0.0.1लेकिन तब नेटवर्क मैनेजर में मेरे पास DNS सर्वर हैं जो दो ओपनडएनएस पतों पर इंगित किए गए हैं। तो यहां पर क्या हो रहा है? क्या स्थानीय नेम सर्वर dnsmasq की ओर इशारा करता है जो तब नेटवर्क प्रबंधक से मानों का उपयोग करता है? या यह अनबाउंड है जो वास्तव में सुन रहा है?


आप क्या खत्म करने की कोशिश कर रहे हैं ?
राहुल पाटिल

3
सिर्फ सच में समझ
fpghost

यह ubuntu सर्वर संस्करण या क्या है?
राहुल पाटिल

न सिर्फ डेस्कटॉप
fpghost

जवाबों:


15

यदि यह स्थापित है, तो डिफ़ॉल्ट रूप से, NetworkManager Dnsmasq को DNS रिज़ॉल्वर के रूप में उपयोग करता है। जो डेबियन आधारित प्रणालियों पर डिफ़ॉल्ट है, इसलिए Dnsmasq एक डिफ़ॉल्ट कॉन्फ़िगरेशन में चलता है जहां यह केवल कमांड लाइन विकल्प (प्लस की सामग्री /etc/hosts) द्वारा निर्दिष्ट अपस्ट्रीम सर्वर के आधार पर नामों को हल करता है । आपके पास कोई नहीं है /etc/dnsmasq.confक्योंकि वह फ़ाइल केवल वैकल्पिक पैकेज dnsmasq में मौजूद है ।

यह देखने के लिए कि क्या आपका सिस्टम वर्तमान में DNS प्रश्नों के लिए Dnsmasq या Unbound का उपयोग कर रहा है, चलाएं netstat -ulnp | grep ":53 "

उबंटू 12.04 में, NetworkManager अन्य DNS रिज़ॉल्वर के साथ अच्छा नहीं खेलता है ( बग 959037 देखें - थॉमस हूड का सारांश बहुत अधिक इसे कवर करता है)। NetworkManager के साथ Unbound को चलाते रहने के लिए, आपका सबसे अच्छा शर्त है NetworkManager को Dnsmasq न चलाने के लिए कहना (आपको Unbound के अतिरिक्त इसकी आवश्यकता नहीं है, तब तक नहीं जब तक कि आप Dnsmasq की सुविधाओं का उपयोग नहीं कर रहे हैं जो NetworkManager उपयोग नहीं करता है)। ऐसा करने के लिए:

  1. /etc/NetworkManager/NetworkManager.confयुक्त लाइन पर टिप्पणी करने के लिए संपादित करें dns=dnsmasq( #उस लाइन की शुरुआत में जोड़ें )।
  2. नेटवर्क प्रबंधक के साथ पुनरारंभ करें service network-manager restart

वर्तमान में उबंटू अनबाउंड का उपयोग करना कैसे जानता है? (यह वास्तव में इसका उपयोग करता प्रतीत होता है); मुझे क्या मिल रहा है, इसलिए मुझे इसमें कुछ करने की आवश्यकता नहीं dns=unboundहै /etc/NetworkManager/NetworkManager.conf? और यह देखते हुए कि मेरे पास वर्तमान dns=dnsmasqमें उस फ़ाइल में है, उबंटू वास्तव में अनबाउंड का उपयोग क्यों कर रहा है?
fpghost

@fpghost आपको कौन सा मिलता है यह इस बात पर निर्भर करता है कि कौन सा पहले शुरू हुआ था। यदि आप बिना नेटवर्क के बूट करते हैं, तो आपको अनबाउंड मिलेगा क्योंकि यह पहले शुरू हो जाएगा। यदि आप एक नेटवर्क कनेक्शन के साथ बूट करते हैं, तो मुझे लगता है कि यह एक टॉस-अप है।
गिल्स एसओ- बुराई को रोकना '

ठीक है, लेकिन जो मैं वास्तव में सोच रहा था वह पूरी तरह से टिप्पणी करने के बजाय dns=...लाइन का उपयोग करने से रोकने के लिए किया जा रहा है, अगर मैं लाइन को प्रतिस्थापित करता हूं तो क्या होगा dns=unbound? अन्यथा NetworkManager को कैसे पता चलता है कि अनबाउंड स्थानीय रिसॉल्वर होगा?
fpghost

1

Ubuntu 12.04 में dnsmasq अब मुश्किल कोडित होने के कारण डिफ़ॉल्ट रूप से चल रहा है network-manager। डेस्कटॉप इंस्टॉलेशन पर डिफ़ॉल्ट रूप से स्थानीय रिज़ॉल्वर के रूप में dnsmasq का उपयोग करना इस रिलीज़ का दूसरा बड़ा बदलाव है। डेस्कटॉप इंस्टॉल पर, आपका DNS सर्वर "127.0.0.1" होने जा रहा है, जो NetworkManager द्वारा प्रबंधित dnsmasq सर्वर की ओर इशारा करता है।

SERVER: 127.0.0.1#53(127.0.0.1)

इसका मतलब है कि आप स्थानीय dns यानी DNSMASQ से अपनी क्वेरी प्राप्त कर रहे हैं।

यदि आप एक स्थानीय रिज़ॉल्वर नहीं चाहते हैं, तो आप इसे निम्नलिखित प्रक्रिया का उपयोग करके DNSMASQ को बंद कर सकते हैं।

आपको /etc/NetworkManager/NetworkManager.confफ़ाइल को संपादित करने की आवश्यकता है

gksudo gedit /etc/NetworkManager/NetworkManager.conf

और निम्न पंक्ति से टिप्पणी करें

dns=dnsmasq

सेवा

#dns=dnsmasq

फ़ाइल सहेजें और बाहर निकलें।

अब आपको network-managerनिम्नलिखित कमांड का उपयोग करके पुनः आरंभ करने की आवश्यकता है

sudo systemctl restart network-manager

संदर्भ लिंक


1
ठीक है, लेकिन क्या होगा अगर मेरे पास भी अनबाउंड स्थापित है, यह स्थानीय रिज़ॉल्वर के रूप में dnsmasq पर पूर्वता लेता है? क्या दोनों # 53 पर सुन रहे हैं? वे एक साथ कैसे मिलते हैं?
fpghost

/etc/dnsmasq.confअनुपस्थित भी क्यों है ?
fpghost

@fpghost dnsmasq 127.0.1.1 पर सुनता है जबकि अनबाउंड 127.0.0.1 पर सुनता है, दोनों पोर्ट 53 पर। आप अनबाउंड का उपयोग करने के लिए नेटवर्क मैनेजर कॉन्फिगरेशन में dns = अनबाउंड सेट कर सकते हैं।
टैल्नॉक्स

0

यह देखने के लिए कि DNSMasq का उपयोग करते समय आपके पते को हल करने के लिए वास्तविक DNS सर्वर का क्या उपयोग किया गया था, इसका उपयोग नहीं कर सकते DIGक्योंकि यह केवल रिपोर्ट 127.0.0.1करता है:

DNSMasq में लॉगिंग सक्षम करें:

sed -i 's/\#log-queries/log-queries/' /etc/dnsmasq.conf
systemctl restart dnsmasq

DNSMasq लॉग करें और आउटपुट की निगरानी करें:

journalctl --unit dnsmasq.service -f

एक मेजबान पिंग:

ping google.ca

फिर आप देख सकते हैं, मेरा अपस्ट्रीम DNS सर्वर (192.168.1.1) इसे हल करता है:

: query[A] google.ca from 127.0.0.1
: forwarded google.ca to 192.168.1.1
: query[AAAA] google.ca from 127.0.0.1
: forwarded google.ca to 192.168.1.1
: reply google.ca is 172.217.1.3
: reply google.ca is 2607:f8b0:400b:80f::2003
: query[PTR] 3.1.217.172.in-addr.arpa from 127.0.0.1
: forwarded 3.1.217.172.in-addr.arpa to 192.168.1.1
: reply 172.217.1.3 is iad23s25-in-f3.1e100.net
: reply 172.217.1.3 is yyz10s14-in-f3.1e100.net

* .Company.com के लिए कंपनी वीपीएन (स्प्लिट-टनल के दौरान) के पीछे एक होस्ट पिंग करें

ping box.company.com

परिणाम:

: query[A] box.company.com from 127.0.0.1
: forwarded box.company.com to vpn.ser.ver.ip
: query[AAAA] box.company.com from 127.0.0.1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.