NS के रिकॉर्ड में IP पते क्यों नहीं हैं?


18

NS रिकॉर्ड का बिंदु क्लाइंट को यह बताना है कि डोमेन नाम के लिए वास्तविक आईपी पता सुनिश्चित करने के लिए कौन सा सर्वर नाम जानता है। उदाहरण के लिए, निम्न प्रश्न आपको बताता है कि यदि आप एक आधिकारिक उत्तर प्राप्त करना चाहते हैं, तो आपको facebook.comपूछना चाहिए a.ns.facebook.com:

> dig ns facebook.com                                                                                                                                       19:58:27

; <<>> DiG 9.9.5-3ubuntu0.8-Ubuntu <<>> ns facebook.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32063
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;facebook.com.          IN  NS

;; ANSWER SECTION:
facebook.com.       65000   IN  NS  a.ns.facebook.com.
facebook.com.       65000   IN  NS  b.ns.facebook.com.

;; Query time: 13 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sun Mar 20 19:58:40 CET 2016
;; MSG SIZE  rcvd: 65

यह शांत और उपयोगी लगता है लेकिन मैं सोच रहा हूं कि ANSWERअनुभाग में आधिकारिक नाम का होस्टनाम और आईपी क्यों नहीं है? क्या क्लाइंट के लिए आधिकारिक स्रोत का वास्तविक आईपी पता प्राप्त करना आसान नहीं होगा और न ही होस्टनाम?

मेरा मतलब है कि अगर इसे होस्टनाम मिल जाता है, तो इस होस्टनाम को आईपी में हल करने के लिए एक और क्वेरी करनी होगी और फिर इस नए आईपी से शुरुआती facebook.comडोमेन के बारे में पूछें, जिसकी उसे तलाश थी। क्या यह अक्षम नहीं है?

मुझे इस समस्या के बारे में बताने वाले कुछ RFC के कुछ पैराग्राफ की ओर इशारा करने वाले उत्तर में दिलचस्पी होगी।


"जो इस समस्या की व्याख्या करता है।" कौनसा? क्या आपका मतलब एक अतिरिक्त प्रश्न है?
ALex_hha

हाँ @ALex_hha का अर्थ है मैं अतिरिक्त प्रश्न
पावेलम

जवाबों:


17

समस्या का समाधान DNS गोंद रिकॉर्ड है, जो कि एक गोंद रिकॉर्ड क्या है पर वर्णित हैं ?

RFC 1035 धारा 3.3.11 राज्यों

"... ध्यान दें कि वर्ग प्रोटोकॉल परिवार को इंगित नहीं कर सकता है जिसका उपयोग" मेजबान के साथ "संवाद करने के लिए किया जाना चाहिए, हालांकि यह आमतौर पर एक मजबूत संकेत है।"

आईपी ​​पते को लौटाना उस तरीके को बताते हुए टेंटमाउंट होगा जिसके द्वारा होस्ट से संपर्क किया जा सकता है, जो आरएफसी के खिलाफ जाता है।


धन्यवाद जेसन अगर एनएस रिकॉर्ड में आईपी होता है तो यह प्रोटोकॉल परिवार को इंगित करेगा, और आरएफसी मना करता है कि, क्या यह सही है? क्या इसका मतलब है कि ग्राहक डीएनएस क्वेरी करते समय विभिन्न प्रोटोकॉल परिवारों का उपयोग कर सकते हैं? मैंने सोचा कि यह केवल यूडीपी / टीसीपी का उपयोग कर सकता है?
पावेलम

5
प्रोटोकॉल परिवार IPv4, IPv6
sendmoreinfo

यदि आप जानते हैं कि प्रश्न एक डुप्लिकेट है, तो जैसा कि आप एक डुबकी के रूप में बंद करने के लिए मतदान नहीं कर सकते हैं, आपको इसे इस तरह से ध्वजांकित करना चाहिए।
user9517 supportGoFundMonica

3
मुझे लगता है कि RFC "हो सकता है" का उपयोग "हो सकता है" के अर्थ में कर रहा है, निषेध के अर्थ में नहीं। (यह RFC2119 की भविष्यवाणी करता है, जिसने अस्पष्टता को कम करने के लिए इस तरह की भाषा को मानकीकृत किया है।)
डेविड

37

जेसन ने DNS तंत्र प्रदान किया जो आपके द्वारा बताए गए मुद्दे के आसपास काम करता है, लेकिन हमने अभी भी इस पर ध्यान नहीं दिया है कि चीजें इस तरह से क्यों की जाती हैं।

मान लीजिए कि मैं खुद का हूं example.com, और मैंने अपनी वेबसाइट की कुछ सामग्री कंटेंट डिलीवरी कंपनी को कंटोसो नाम से अनुबंधित की है । उनके मंच से हमें sub.example.comअपने नेमसर्वर्स को सौंपने की आवश्यकता है ताकि वे यह नियंत्रित कर सकें कि क्या प्रतिक्रियाएँ वापस आ रही हैं।

; SOA and MX omitted from this example
$ORIGIN example.com.

@           IN      NS            ns1
@           IN      NS            ns2

; delegate sub.example.com to Contoso's nameservers
sub         IN      NS            ns1.cdn.contoso.com.
sub         IN      NS            ns2.cdn.contoso.com.

; this is ours, not Contoso's
www         IN      A             198.51.100.1

जैसा कि आपने नोट किया है, हमने कॉन्टोसो के नेमसर्वर्स के आईपी पते निर्दिष्ट नहीं किए हैं। हमारे सभी सर्वर को पता है कि इंटरनेट को बताना है "हम प्रबंधन नहीं करते हैंsub.example.com , इसके बजाय कॉन्टोसो से पूछें" । यह बहुत महत्वपूर्ण है, क्योंकि:

  • हम Contoso.com के स्वामी नहीं हैं।
  • हम Contoso से यह उम्मीद नहीं कर सकते हैं कि वे अपने सभी ग्राहकों के साथ अपने नेमसर्वर IP के परिवर्तन का समन्वय करें। अगर हमारे सर्वर उन आईपी को प्रदान कर रहा है तो वास्तव में क्या होगा।

अब तक सब ठीक है। एक साल बीत चुका है, और हमारे लिए अनजाने में कॉन्टोसो अपने सीडीएन नेमवेरर्स के आईपी पते बदल रहा है। क्योंकि DNS उस तरीके से काम करता है जो वह करता है, उन सभी को करना है जो Aवे ns1.cdnऔर उनके लिए वापस आने वाले रिकॉर्ड को अपडेट करते हैं ns2.cdn.contoso.com.

यह हमें एक महत्वपूर्ण बिंदु पर लाता है: जेसन द्वारा वर्णित गोंद रिकॉर्ड DNS में "चिकन और अंडे" परिदृश्यों से निपटने के लिए मौजूद है, जैसे google.comकि दुनिया को यह बताना कि उनके नेमवेरर्स हैं ns1.google.comऔर ns2.google.com। आपको बुनियादी ढांचे की ओर इशारा करते हुए कभी भी गोंद रिकॉर्ड नहीं बनाना चाहिए जो आपके पास नहीं हैं जब तक कि वे इस तरह की समस्या को हल करने के लिए मौजूद न हों:

@           IN      NS            ns1
@           IN      NS            ns2

; delegate sub.example.com to ns1 and ns2.sub.example.com
sub         IN      NS            ns1.sub
sub         IN      NS            ns2.sub

; provide the IP addresses of ns1 and ns2 so that nameservers
; on the internet can find them.
;
; these IP addresses are owned by Contoso, not us, and they must
; coordinate changes to these IPs with us
ns1.sub     IN       A            203.0.113.10
ns1.sub     IN       A            203.1.113.10

यह चिकन और अंडे के परिदृश्य से बचा जाता है, लेकिन यह भी बनाता है ताकि कॉन्टोसो को हमारे साथ उन नेमसर्वरों के हर आईपी परिवर्तन का समन्वय करना पड़े । यह बहुत जोखिम वाला और अवांछनीय है।


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