सवाल नामों को हल करते समय विंडोज किस DNS सर्वर का उपयोग करने का निर्णय लेता है?


नामों को हल करने के लिए कौन सी DNS सर्वर क्वेरी करेगा, यह तय करने के लिए विंडोज क्या एल्गोरिदम उपयोग करता है?

आइए मान लें कि मेरे पास कई इंटरफेस हैं, सभी सक्रिय हैं, कुछ डीएनएस सर्वर निर्दिष्ट नहीं हैं, कुछ ने इसे स्वचालित रूप से निर्धारित करने के लिए कहा है, और कुछ इसके साथ मैन्युअल रूप से निर्दिष्ट हैं (इंटरफ़ेस ipv4 और इंटरफ़ेस ipv6 में)।

मैं इस सामान्य प्रश्न का उत्तर मांग रहा हूं कि मुझे पता है कि विंडोज विस्टा में एक और विशिष्ट समस्या को हल करने के लिए मुझे पता है - मेरे पास दो इंटरफेस हैं, एक कम मीट्रिक और मैन्युअल रूप से निर्दिष्ट एक DNS सर्वर है। nslookup उपयोग करता है इस DNS सर्वर और नामों को सही तरीके से हल करता है। हालांकि, अन्य सभी एप्लिकेशन नाम को हल करने में विफल रहते हैं जब तक कि मैं अन्य इंटरफ़ेस के लिए मैन्युअल रूप से DNS सर्वर निर्दिष्ट नहीं करता, जिसे अनुप्रयोग तब उपयोग करते हैं। nslookup यह निर्दिष्ट होने के बाद इस अन्य इंटरफ़ेस के लिए निर्दिष्ट DNS सर्वर का भी उपयोग करता है।

धन्यवाद


38
2017-11-13 02:46


मूल




जवाब:


अगर मुझे गलत नहीं लगता है, तो यह नेटवर्क कनेक्शन फ़ोल्डर में उन्नत सेटिंग्स में एनआईसी बाध्यकारी आदेश द्वारा निर्धारित किया जाता है। आप विभिन्न एनआईसी के बाध्यकारी क्रम को बदलकर और परीक्षण के रूप में nslookup को चालू करके इसे सत्यापित कर सकते हैं।

मेरे जवाब पर विस्तार करने के लिए, उद्धरण लेख जो इवान से जुड़ा हुआ है, यहां लेख से एक अंश दिया गया है:

DNS क्लाइंट सेवा निम्न क्रम में DNS सर्वर से पूछताछ करती है:

  1. DNS क्लाइंट सेवा नाम सर्वर को पहले सर्वर सर्वर पर पसंदीदा एडाप्टर की DNS सर्वर की सूची भेजती है और प्रतिक्रिया के लिए एक सेकंड प्रतीक्षा करती है।

  2. यदि DNS क्लाइंट सेवा को पहले DNS सर्वर से एक सेकंड के भीतर प्रतिक्रिया प्राप्त नहीं होती है, तो यह नाम क्वेरी को उन सभी एडाप्टर पर पहले DNS सर्वर पर भेजता है जो अभी भी विचाराधीन हैं और प्रतिक्रिया के लिए दो सेकंड प्रतीक्षा करते हैं।

  3. यदि DNS क्लाइंट सेवा को किसी भी DNS सर्वर से दो सेकंड के भीतर कोई प्रतिक्रिया प्राप्त नहीं होती है, तो DNS क्लाइंट सेवा उन सभी एडाप्टर पर क्वेरी को सभी DNS सर्वर पर भेजती है जो अभी भी विचाराधीन हैं और प्रतिक्रिया के लिए दो सेकंड प्रतीक्षा करते हैं।

  4. यदि DNS क्लाइंट सेवा को अभी भी किसी भी DNS सर्वर से कोई प्रतिक्रिया प्राप्त नहीं होती है, तो यह सभी क्वेरी सर्वर पर सभी DNS सर्वरों पर नाम क्वेरी भेजती है जो अभी भी विचाराधीन हैं और प्रतिक्रिया के लिए चार सेकंड प्रतीक्षा करती हैं।

  5. यदि यह DNS क्लाइंट सेवा किसी भी DNS सर्वर से प्रतिक्रिया प्राप्त नहीं करती है, तो DNS क्लाइंट सभी एडेप्टर पर क्वेरी को सभी DNS सर्वर पर भेजता है जो अभी भी विचाराधीन हैं और प्रतिक्रिया के लिए आठ सेकंड प्रतीक्षा करते हैं।

चरण 1 में पसंदीदा एडाप्टर एडाप्टर है जो पहले बाध्यकारी क्रम में सूचीबद्ध है।


23
2017-11-13 04:08



यह प्रक्रिया विंडोज 10 में बदल गई है, हालांकि मुझे पता नहीं है कि उपरोक्त नई प्रक्रिया को पता नहीं है कि उपरोक्त विंडोज 10 पर लागू नहीं होता है, इस ब्लॉग को देखें - blogs.technet.microsoft.com/networking/2015/08/14/... - Robert


विंडोज 10 (और विंडोज सर्वर 2016) में आपको इच्छित क्रम में प्रत्येक इंटरफेस के मीट्रिक को अपडेट करना होगा।

  1. गोटो कंट्रोल पैनल> नेटवर्क और इंटरनेट> नेटवर्क कनेक्शन
  2. वांछित कनेक्शन पर राइट क्लिक करें (उच्च प्राथमिकता कनेक्शन)
  3. गुण> इंटरनेट प्रोटोकॉल संस्करण 4 पर क्लिक करें
  4. गुण> उन्नत क्लिक करें
  5. 'स्वचालित मीट्रिक' अनचेक करें
  6. 'इंटरफेस मेट्रिक' में 10 दर्ज करें
  7. ओके पर क्लिक करें

संदर्भ:

मैंने अपने लैन के लिए 10, डब्ल्यूएलएएन के लिए 20 और वीपीएन इंटरफेस के लिए 100 का उपयोग किया (मैं काम पर स्थानीय DNS पसंद करता हूं, यह दूसरों के लिए विपरीत हो सकता है)। याद है कम मीट्रिक = उच्च प्राथमिकता

इस आलेख को Microsoft समर्थन में देखें आईपीवी 4 मार्गों के लिए स्वचालित मीट्रिक सुविधा का एक स्पष्टीकरण


11
2017-09-26 20:06



+1 विंडोज 10 पर मेरे लिए, यह एकमात्र समाधान था, धन्यवाद। - GµårÐïåñ


यह पन्ना DNS क्वेरी करने के लिए विंडोज द्वारा उपयोग किए गए एल्गोरिदम का वर्णन करता है। यह आपको उन सभी उत्तरों को देने के लिए पर्याप्त गहराई में नहीं है, जिन्हें आप ढूंढ रहे हैं, लेकिन कुछ समय w / sniffer और यह आलेख आपको यह निर्धारित करने की ज़रूरत है कि आपकी विशिष्ट स्थिति में क्या हो रहा है।


8
2017-11-13 04:41





मेरे साथ भी ठीक यही समस्या आई. मैंने इसे समझने की कोशिश कर एक दिन बिताया है। अब मुझे पता है और यह एक आकर्षण की तरह काम करता है।

यदि आपके पास कई नेटवर्क कार्ड हैं और यदि उनमें से प्रत्येक में DNS सर्वर निर्दिष्ट करते हैं। क्या आप जानते हैं कि अंत में DNS सर्वर का उपयोग किस प्रकार किया जाएगा?

वैसे आप इसे अभ्यास के माध्यम से देख सकते हैं।

nslookup 192.168.3.6

तो आप उस सर्वर को देखते हैं जो आपका पीसी वास्तव में उपयोग करता है

सवाल यह है कि - क्या निर्भर करता है कि DNS सर्वर विंडोज़ किस प्रकार उपयोग करना चुनती हैं और हम इसे कैसे बदल सकते हैं।

जब हम वीपीएन क्लाइंट का उपयोग करते हैं तो हमें विशेष रूप से इसकी आवश्यकता होती है।

उत्तर से qwerty2010 सही और सही है। लेकिन आप इसे केवल तभी उपयोग कर सकते हैं जब आपके पास नियंत्रण कक्ष में एनआईसी हो - नेटवर्क और साझाकरण केंद्र - एडाप्टर सेटिंग्स बदलें - एनआईसीएस की सूची

केवल तभी जब आप अपने वीपीएन क्लाइंट के लिए प्रतिलिपि बनाने वाले निक को देखते हैं तो आप विंडोज़ को इंगित करने के लिए ग्राफ़िकल तरीके का उपयोग कर सकते हैं जो डीएनएस सर्वर (जिसे किसी विशेष एनआईसी पर निर्दिष्ट किया गया है) का उपयोग करना चाहते हैं।

तो आप नेटवर्क और साझाकरण केंद्र -> एडाप्टर सेटिंग्स बदलें -> उन्नत -> उन्नत सेटिंग्स -> और आप यूपी को उस DNS के साथ ले जाएं जिसे आप उपयोग करना चाहते हैं। (यूपी आपको इसे यूपी उठाने की जरूरत है)।

हालांकि अगर उदाहरण के लिए आप श्रू वीपीएन क्लाइंट का उपयोग करते हैं - आपके पास कोई एनआईसी नहीं होगी।

आप क्या करते हैं।

आप रजिस्ट्री खोलें।

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}

और आप फ़ोल्डर के साथ 0000, 0001 आदि उपफोल्डर्स में देखते हैं

DriverDesc = Shrew Soft Virtual Adapter

ठीक। फिर आप क्लिपबोर्ड पर कॉपी करते हैं

NetCfgInstanceId = {B498E7DE-7257-48F6-AD32-60E470030F05}

अब तुम जाओ

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Linkage]

और आप खोलें key = Bind। आप इस तरह की सूची देखेंगे

\Device\{1DF89CE3-CAAD-4EB7-A53F-AD16BC1D5EFD}
\Device\{70126DBE-B44D-4392-9417-0CABD6E384B1}
\Device\{D5127F8E-E7BB-4661-AE5A-A922614173D0}
\Device\{C44039AB-6801-4A9B-A736-3B12782FF411}
\Device\{85231D0F-CD05-4774-A983-632C5D83AC62}
\Device\{7E87BC81-8C58-4E05-9FA0-7897A6AA5CCE}
\Device\{3A1A3EFC-A9DE-4BCA-BAF6-81C7074487E0}
\Device\{8D41EDFC-04AC-4537-B5D5-0D54EB51A023}

आपको बस इतना करना है कि शीर्ष पर रखा जाए

\Device\{B498E7DE-7257-48F6-AD32-60E470030F05}
\Device\{1DF89CE3-CAAD-4EB7-A53F-AD16BC1D5EFD}
\Device\{70126DBE-B44D-4392-9417-0CABD6E384B1}
\Device\{D5127F8E-E7BB-4661-AE5A-A922614173D0}
\Device\{C44039AB-6801-4A9B-A736-3B12782FF411}
\Device\{85231D0F-CD05-4774-A983-632C5D83AC62}
\Device\{7E87BC81-8C58-4E05-9FA0-7897A6AA5CCE}
\Device\{3A1A3EFC-A9DE-4BCA-BAF6-81C7074487E0}
\Device\{8D41EDFC-04AC-4537-B5D5-0D54EB51A023}

बस इतना ही। रीबूट करने की कोई आवश्यकता नहीं है।

जब आप वीपीएन कनेक्शन का उपयोग करते हैं तो अब आपकी खिड़कियां ब्रू वीपीएन एनआईसी में निर्दिष्ट DNS का उपयोग करेंगी।


2
2017-10-29 08:40





चूंकि यह आपको या दूसरों की मदद कर सकता है, तो आप डीएनएस उपयोग को अधिक अनुमानित बनाने के लिए सूचीबद्ध डीएनएस के विंडोज राउंड-रॉबिन उपयोग को अक्षम कर सकते हैं। सेट करने का प्रयास करें RoundRobin=0 में HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS\Parameters (संदर्भ) डीएनएस राउंड-रोबिंग को अक्षम करने के लिए।

सर्वर को घूर्णन करने के लिए "टाइमआउट" भी है, आप इसे सेट करने का भी प्रयास कर सकते हैं शून्य:

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters
 ServerPriorityTimeLimit=0

0
2017-09-24 14:05



उल्लिखित "संदर्भ" (लिंक) के अनुसार यह क्वेरी से पूछताछ के क्रमबद्ध क्रमबद्ध क्रमबद्ध क्रम में कुछ पूछे जाने वाले FQDN के लिए एकाधिक आईपी पते प्रदान करने में DNS सर्वर को कॉन्फ़िगर करने के लिए लागू होता है। इस सवाल के साथ इसका कोई लेना-देना नहीं है कि एक DNS रिज़ॉल्वर (क्लाइंट) क्वेरी करने के लिए DNS सर्वर का चयन कैसे कर रहा है। - cepharum


यह यादृच्छिक रूप से तय नहीं करता है। आप राउटर से जुड़े हुए हैं जो इसे एक कंपनी से आईपी प्राप्त करता है जिसमें DNS सर्वर हैं। उन्हें आपका अनुरोध तब तक मिलता है जब तक आप आईपी को अन्य DNS में मैन्युअल रूप से परिवर्तित नहीं करते हैं, उदाहरण के लिए: OpenDNS। या शायद आप अपने स्वयं के DNS सर्वर होने का फैसला करते हैं। यह भी काम करता है। बस नेटवर्क केंद्र में आईपी एड्रेस दर्ज करें और सभी को अच्छी तरह से होना चाहिए। और हाँ, आपको उन्हें मैन्युअल रूप से सेट करना होगा।

आप एक फ़ाइल भी समायोजित कर सकते हैं C:\Windows\System32 बिना किसी विस्तार के "होस्ट" कहा जाता है। यह आपको मानक DNS पर भेजे जाने के बजाय URL-अनुरोध रीडायरेक्ट करने की अनुमति देता है। एक स्थानीय सर्वर (जो चल रहा है और पोर्ट 80 को सुनना चाहिए)


-11
2017-11-13 03:54



मूल रूप से जो कुछ आपने यहां कहा है वह गलत है - MDMarra
और मेजबान फ़ाइल है कि उत्सव घृणा का जिक्र करने के लिए एक अतिरिक्त -1। - Maximus Minimus
जानकारीपूर्ण मार्कएम होने का तरीका - KdgDev
@WebDevHobo - एक टिप्पणी में सही करने के लिए वास्तव में बहुत कुछ है, लेकिन मैं बड़े बिंदुओं पर छूंगा। 1) ओपी में एक कंप्यूटर है जिसमें कई इंटरफेस (अधिकतर संभावित एनआईसी) हैं, और प्रत्येक पर एक अलग DNS परिभाषित है। प्रश्न के संदर्भ में, वह स्पष्ट रूप से कुछ आंतरिक DNS सर्वर चला रहा है या कुछ पसंदीदा बाहरी DNS सर्वर हैं - बॉक्स शायद बहु-गृह है। 2) यदि आप उस पते पूल के लिए DHCP सर्वर की कॉन्फ़िगरेशन में DHCP का उपयोग कर रहे हैं तो आपको मैन्युअल रूप से आंतरिक DNS सर्वर का पता सेट करने की आवश्यकता नहीं है। 3) मेजबान फ़ाइल का पथ c: \ windows \ system32 \ drivers \ etc है - MDMarra
और HOSTS फ़ाइल का उपयोग इस स्थिति में नहीं किया जाना चाहिए, या व्यावहारिक रूप से तब तक जब तक आप स्थानीय विकास नहीं कर रहे हैं और HOST हेडर या कुछ ऐसा उपयोग कर रहे हैं और स्थानीय रूप से हल करने के लिए FQDN की आवश्यकता है। और सर्वर को पोर्ट 80 चलाने की आवश्यकता नहीं है चाहे नाम समाधान या DNS सर्वर के लिए HOSTS फ़ाइल का उपयोग कर रहा हो। बस संलग्न करें: यूआरएल के अंत में port_number। HOSTS पोर्ट के बारे में परवाह नहीं करता है, जैसा कि DNS नहीं करता है - यह होस्ट नाम को आईपी पते पर अनुवाद करने का एक तरीका है और कुछ भी नहीं। - MDMarra