जब आप एक प्रदर्शन करते हैं तो लिनक्स कौन पूछता है?


11

जब तुम करोगे:

$ whois stackoverflow.com

क्या आपका लिनक्स सबसे पहले DNS क्वेरी करता है, stackoverflow.com का IP ढूंढता है, और फिर वहां की जानकारी सीधे पूछता है?

या क्या यह एक "रूट" whois सर्वर से पूछता है (एक लिनक्स वितरण में "रूट whois सर्वर" हार्डकोड का आईपी, इसी तरह से फैशन में है /etc/bind/db.root?), जो फिर एक अन्य whois सर्वर को दर्शाता है जो जानकारी देता है?

कनेक्शन प्रवाह क्या है?

my computer doing `whois ...` ---> root whois server ---> another whois server ---> information

या

my computer doing `whois ...` ---> DNS server (?) ---> ... ?

जवाबों:


12

यदि आप Marco d'Itri काwhois उपयोग कर रहे हैं , तो आप --verboseयह देखने के लिए विकल्प जोड़ सकते हैं कि यह क्या कर रहा है। Stackoverflow.com के लिए, यह whois.verisign-grs.com ( WHOIS सर्वर की इसकी सूची देखें) पूछकर शुरू होता है , जो इसे कई जानकारी देता है, जिसमें स्टैक ओवरफ्लो का रजिस्ट्रार Name.com और इसके WHOIS शामिल हैं। सर्वर whois.name.com है; तो यह तो whois.name.com पूछने के लिए आगे बढ़ता है।

प्रोटोकॉल RFC 3912 में प्रलेखित है । whoisमैनपेज भी उपयोगी संकेत दिए गए है।


धन्यवाद (ऐसा लगता है कि डेबियन डिफ़ॉल्ट है जो मार्को डी'आइट्री है)। क्या whoisवर्जन-जीआर की तुलना में किसी अन्य WHOIS सर्वर का उपयोग करने के लिए बताने की आज्ञा है ? मुझे यह नहीं मिला man whois
बसज

कुछ और: आपने कहा तो यह सवाल है whois.name.com। क्या इसका मतलब यह है कि हर रजिस्ट्रार के पास एक रजिस्ट्रार-ह्विस सर्वर होना चाहिए? जब ऐसा whois google.frकरने से हार्ड-कोड-इन-वन एक यानी whois.nic.fr की तुलना में कोई अन्य क्वेरी करने के लिए प्रतीत नहीं होता है। क्या वह सही है?
बसज

ठीक है, डेबियन का डिफ़ॉल्ट whoisमार्को डी'ट्री है (मार्को एक डेबियन डेवलपर है)। आप जिस विकल्प की तलाश कर रहे हैं, वह है -h(देखें whois -h whois.name.com stackoverflow.com)। रजिस्ट्रार के पास WHOIS सर्वर होना आवश्यक नहीं है; केवल एक TLD के लिए "आधिकारिक" रजिस्ट्रार AFAIK करता है। इस प्रकार के google.frमामले में, रजिस्ट्रार MARMMONITOR है, लेकिन जानकारी AFNIC से आती है जो कि TLD रजिस्ट्रार है .fr
स्टीफन किट

बहुत बहुत धन्यवाद। मजेदार बात यह है: जब whois stackoverflow.comमुझे बहुत कम जानकारी मिलती है, लेकिन जब whois -h whois.name.com stackoverflow.comमैं बहुत अधिक informations ( Admin Organization: Stack Exchange, Inc., सड़क का पता, आदि) प्राप्त करता हूं, तो मुझे ऐसा नहीं करना चाहिए whois stackoverflow.com। इसके बारे में अपेक्षित व्यवहार है whois, आप के लिए है यानी पहले करते हैं whois domain.com, तो whois सर्वर को देखते हुए, आप के लिए है फिर से करना एक whois -h ... domain.comअधिक जानकारियां है करने के लिए? whoisयह सब सीधे नहीं करना चाहिए जब वह एक रजिस्ट्रार whois पाता है?
बसज

आप एक ही जानकारी प्राप्त करना चाहिए, क्योंकि whois stackoverflow.com है जाने के लिए और पूछना ही whois.name.com (कम से कम, यह संस्करण 5.2.17 में करता है)। यदि आप बहुत अधिक अनुरोध जारी करते हैं (लेकिन आपको एक त्रुटि मिलती है), तो आप अस्थायी रूप से आपको सीमित करने की दर में चल रहे हैं, whois.name.com आपको अस्थायी रूप से ब्लॉक करता है। अगर मैं डंप whois stackoverflow.comऔर whois -h whois.name.com stackoverflow.comऔर उनकी तुलना में, मैं वास्तव में दोनों ही मामलों में एक ही name.com उत्पादन मिलता है।
स्टीफन किट

11

स्टीफन ने मुख्य भागों का जवाब दिया लेकिन आपके पास कुछ अन्य बिंदु हैं जिन्हें मैं संबोधित करना चाहता हूं:

  1. Whois एक खराब परिभाषित प्रोटोकॉल है। कोई पदानुक्रम नहीं है, कोई जड़ नहीं है, इत्यादि, वास्तव में, WHOIS सिस्टम में DNS से ​​संबंधित कुछ भी नहीं है, आपको उन्हें अपने दिमाग में पूरी तरह से अलग करके शुरू करना चाहिए, इस तथ्य के साथ कि वे एक ही स्रोत से अपना डेटा लेते हैं (रजिस्ट्री) डेटाबेस) वे पूरी तरह से स्वतंत्र रूप से काम करते हैं।
  2. प्रत्येक TLD रजिस्ट्री इस संबंध में अलग तरीके से काम करती है। gTLDs अपने आप में एक मामला है: ICANN अनुबंध के अनुसार, अब के लिए, प्रत्येक रजिस्ट्रार का दायित्व है कि वह सभी नामों के लिए एक ह्विस सर्वर का उत्तर दे जिसे वह संभालता है। रजिस्ट्रियों की एक ही आवश्यकता है। रजिस्ट्री whois आउटपुट रजिस्ट्रार whois सर्वर को सूचीबद्ध करता है (लेकिन जैसा कि मैंने ऊपर एक टिप्पणी में लिखा है, यह थोड़ा हाल ही में बदल गया है - वास्तव में बिना किसी अच्छे कारण के - जो कि कई whois ग्राहकों को तोड़ दिया) मुख्य रूप से एक ऐतिहासिक कारण के लिए जो जल्द ही गायब हो जाएगा: अतीत में (और अभी भी .COM / .NET के लिए .JOBS तरह का हाल ही में स्विच किया गया था, लेकिन पहले उसी नाव में था, https://www.icann.org/resources/pages/thick-whois-transition-policy-2017- देखें 02-01-en) रजिस्ट्रियां जहां 'पतली' का अर्थ है कि रजिस्ट्री संपर्कों के बारे में डेटा स्टोर नहीं करती है, केवल रजिस्ट्रार करता है। जिसका अर्थ है कि यदि आप वास्तव में डोमेन नाम के बारे में डेटा रखना चाहते हैं और पाते हैं कि समस्याओं के मामले में कौन संपर्क करे (जो था - और अभी भी है - Whois प्रोटोकॉल का मूल लक्ष्य), तो आपको सबसे पहले रजिस्ट्री कोइस सर्वर से क्वेरी करने की आवश्यकता है जानकारी का मूल सेट प्राप्त करें और रजिस्ट्रार whois सर्वर की खोज करें और फिर सभी संपर्क जानकारी तक पहुंचने के लिए इस रजिस्ट्रार whois सर्वर से संपर्क करें। यह बताता है कि .COM / .NET का रजिस्ट्री आउटपुट आज आपको डोमेन नेमवेरर्स, दिनांक और स्थिति के बारे में केवल डेटा देता है। और रजिस्ट्रार whois सर्वर का नाम, जो whois ग्राहक का पालन करने की कोशिश करते हैं, लेकिन कभी-कभी ऐसा नहीं कर सकते क्योंकि चीजें बदल जाती हैं (ऊपर मेरी टिप्पणी देखें)
  3. ccTLDs लगभग हमेशा उस तरह से काम नहीं करते हैं, भले ही रजिस्ट्रार का उपयोग कर रहे हों, रजिस्ट्री क्विज़ सर्वर का उपयोग करने से आपको आवश्यक सभी परिणाम वापस मिल जाते हैं और भले ही कुछ गायब हों (उदाहरण के लिए गोपनीयता कारणों से), आपको रजिस्ट्रार के उस सर्वर को क्वेरी करने की आवश्यकता नहीं है। उन्हें रजिस्ट्रियों द्वारा अनिवार्य नहीं किया जाता है कि वे इसे उस ccTLD के लिए चलाएं जिसे वे संभालते हैं (लेकिन कुछ रजिस्ट्रार फिर भी करते हैं)। यह .frउदाहरण के लिए एक डोमेन नाम के लिए आपका अवलोकन बताता है ।
  4. कुछ whois क्लाइंट, whois सर्वर के हार्डकोड पते, कुछ whois.nic.$TLDडिफ़ॉल्ट रूप से कोशिश करते हैं जो अक्सर रजिस्ट्री के रूप में काम करता है $TLDअक्सर nic.$TLDप्राथमिक ऑपरेटिंग डोमेन नाम के रूप में होता है ।
  5. IANA में रजिस्ट्रियों की सूची संभालती https://www.iana.org/domains/root/db जैसे, और प्रत्येक रजिस्ट्री पेज में https://www.iana.org/domains/root/db/fr.html आप WHOIS Serverचयनित रजिस्ट्री से संबंधित WHOIS सर्वर को सूचीबद्ध करने वाली एक लाइन होगी । कृपया ध्यान दें कि यह कभी-कभी पुराना या गलत हो सकता है। आप इस डेटा को TLD के लिए एक whois क्वेरी करके भी एक्सेस कर सकते हैं whois.iana.org, यह आपको संबंधित रजिस्ट्री के बारे में डेटा देगा, जिसमें whoisकुंजी में इसका whois सर्वर भी शामिल है ।
  6. एक और तरकीब भी है। यदि आप DNS क्वेरी करते हैं (लेकिन कृपया याद रखें कि यह बिंदु पहले बिंदु को अमान्य नहीं करता है) $TLD.whois-servers.netतो इसके लिए आपको $TLDCNAME रिकॉर्ड के रूप में संबंधित व्हिस सर्वर का नाम दिया जाएगा । कुछ whois ग्राहक इस ट्रिक का उपयोग कर सकते हैं, लेकिन मुझे संदेह है कि (GNU whoisक्लाइंट उनमें से एक हो सकता है, या यह शायद FreeBSD एक है)। ध्यान दें कि यह पहल पूरी तरह से निजी है और, भले ही यह होना चाहिए था, इन सभी में शामिल शीर्ष अधिकारियों द्वारा नियंत्रित नहीं किया जाता है, जैसे कि ICANN या IANA। उदाहरण के लिए dig uk.whois-servers.net +shortआप देंगे whois.nic.uk.:। इसका आकर्षण यह है कि यह तब बदला जाना चाहिए जब यह परिवर्तन (बहुत कम) या (अधिक बार) हो जब नई रजिस्ट्रियां / टीएलडी लाइव हो जाएं।
  7. कुछ रजिस्ट्रियां अपने WHOIS सर्वर एड्रेस एंडपॉइंट को प्रकाशित करती हैं, SRVजो यह निर्दिष्ट करने के लिए समर्पित DNS रिकॉर्ड प्रकार है कि एक डोमेन नाम विशिष्ट सेवा को संभालता है। इसलिए यदि आप करते हैं तो dig _nicname._tcp.fr +shortआपको वास्तव में वह मिलेगा, 0 0 43 whois.nic.fr.जो दो पहले नंबरों के अलावा देता है, जिनका उपयोग नहीं किया जाता है (लेकिन लोड संतुलन / असफल होने के लिए इस्तेमाल किया जा सकता है), पोर्ट नंबर ( 43) और सर्वर नाम whois.nic.frको प्राप्त करने के लिए संपर्क करने के लिए nicname, जो whoisइसके तहत सेवा है आधिकारिक पंजीकृत नाम ( https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml ), के लिएfrडोमेन। यह बहुत सारी रजिस्ट्रियों द्वारा उपयोग नहीं किया जाता है, लेकिन यह होना चाहिए था, एसआरवी रिकॉर्ड इस वितरित ऑटो-डिस्कवरी तंत्र को प्रदान करता है जो यहां तक ​​कि DNS पेड़ के किसी भी स्तर पर काम करता है ताकि यह रजिस्ट्रियों और "उप" -registries, आदि के लिए काम करे। ।

ध्यान दें कि एक बार एक नया प्रोटोकॉल, RDAP बदल जाएगा, जो WHIS की जगह लेगा। यह पहले से ही कई RFC द्वारा परिभाषित है और कुछ रजिस्ट्रियों (RIRs के लिए उत्पादन में, कुछ डोमेन नाम रजिस्ट्रियों के लिए प्रयोगों में) द्वारा उपयोग किया जाता है, लेकिन यह अभी तक अनुबंधित रूप से रजिस्ट्रार और रजिस्ट्रार (गैर तकनीकी कारणों से) के लिए gTLD में उपयोग करने के लिए मजबूर नहीं है। दुनिया, और ccTLD रजिस्ट्रियां RDAP सर्वरों को डालने के लिए अपने वर्तमान whois सर्वरों को खोदने के लिए अनिच्छुक लगती हैं।


2

आपका WHOIS क्लाइंट WHOIS सर्वर (TCP पोर्ट 43 पर) पूछता है और यह सीधे जवाब देता है। डेबियन के WHOIS क्लाइंट के पास सर्वरों की हार्डकोड सूची है, जो इसे स्वचालित रूप से चुनता है। IANA की WHOIS सेवा भी है।

स्रोत: RFC 3912


धन्यवाद। क्या tld_serv_listफाइल डेबियन में उपलब्ध नहीं है? मैंने अपने फाइल सिस्टम पर खोज की लेकिन वह नहीं मिली। इसका मतलब यह है कि यह बाइनरी बाइनरी के अंदर संकलित है /usr/bin/whois?
बसज

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