क्या हमारे पास एक नाम के लिए कई CNAMES हो सकते हैं?


43

लोड बैलेंसिंग के लिए मुझे इसकी आवश्यकता है। उदाहरण के लिए, मैं दो नीला भंडारण खातों (माना है aऔर b) और उन लोगों के लिए ब्लॉब पते दिए गए हैं a.blob.core.windows.netऔर b.blob.core.windows.net। ये दोनों समान डेटा स्टोर करते हैं। अब मुझे एक एकल बाहरी नाम (कहना example.com) प्रदान करने की आवश्यकता है जो दोनों भंडारण खातों को इंगित करता है और राउंड रॉबिन में काम करना चाहिए। अगर मैं निम्नलिखित के रूप में DNS में दो CNAME प्रविष्टियाँ बनाता हूँ, तो इसे प्राप्त किया जा सकता है और यह राउंड रॉबिंग में उनमें से एक को हल करता है।

  1. example.com CNAME a.blob.core.windows.net
  2. example.com CNAME b.blob.core.windows.net

लेकिन मैं Windows DNS सर्वर में एक ही नाम के लिए दो CNAME रिकॉर्ड नहीं बना सकता।

तो क्या यह कभी संभव है?


मैं जाँच नहीं कर सकता, लेकिन मुझे नहीं लगता कि आप CNAMES के साथ ऐसा कर सकते हैं। इसके बजाय ए रिकॉर्ड्स आज़माएं।
दान

1
@ समस्या एक एडब्ल्यूएस इलास्टिक लोड बैलेंसर की तरह एक निश्चित आईपी नहीं होने वाली सेवाएं हैं। यह देखते हुए कि core.windows.netमुझे Azure या कुछ और इसी तरह की स्थिति पर संदेह होगा।
ceejayoz

लेकिन ए रिकॉर्ड के साथ, मुझे आईपी पता सही बताना होगा? मैं आईपी पते के लिए DNS नाम पसंद करते हैं।
रघुराम मूर्ति पी।

आप ऐसा क्यों करना चाहते हो? azure बूँद भंडारण पहले से ही उच्च उपलब्धता और भू अतिरेक के लिए सेटअप है।
जेटीएचएच

@JTKH क्योंकि ब्लॉब की डाउनलोड सीमा 65MB / सेकंड या तो होती है और यदि मैं अधिक डाउनलोड सीमा चाहता हूं, तो मैंने एक से अधिक ब्लॉब का उपयोग करने के बारे में सोचा।
रघुराम मूर्ति पी

जवाबों:


58

समान पूरी तरह से योग्य डोमेन नाम के लिए एकाधिक CNAME रिकॉर्ड DNS के लिए चश्मे का उल्लंघन है। BIND के कुछ संस्करण आपको ऐसा करने की अनुमति देंगे (कुछ केवल यदि आप multiple-cnames yesविकल्प निर्दिष्ट करते हैं ) और तब के बीच राउंड-रॉबिन लोड-बैलेंस होगा, लेकिन यह तकनीकी रूप से कानूनी नहीं है।

CNAME के ​​समान नाम और nits को लेने के लिए संसाधन रिकॉर्ड (RRs) नहीं हैं, जिसमें कई समान CNAME शामिल होंगे। क्वाथ RFC 1034, धारा 3.6.2:

यदि CNAME RR नोड पर मौजूद है, तो कोई अन्य डेटा मौजूद नहीं होना चाहिए; यह सुनिश्चित करता है कि एक विहित नाम और उसके उपनामों का डेटा अलग-अलग नहीं हो सकता है। यह नियम यह भी सुनिश्चित करता है कि एक कैश किए गए CNAME का उपयोग अन्य RR प्रकारों के लिए एक आधिकारिक सर्वर के साथ जाँच के बिना किया जा सकता है।

आपके द्वारा जो भी किया जा रहा है उसे संभालने के लिए RFC पद्धति का अक्षर एकल CNAME के ​​साथ लोड-संतुलित "A" रिकॉर्ड की चर्चा करता है।


अधिक जानकारी के लिए docstore.mik.ua/orelly/networking_2ndEd/dns/… देखें ।
वेदी

11

आप नहीं कर सकते। एक CNAME एक रिकॉर्ड को दूसरे के लिए एक और नाम बनाता है। यदि कोई रिकॉर्ड दो नामों के लिए CNAMES हो सकता है, तो यह उनमें से किसी एक के लिए दूसरा नाम नहीं होगा, लेकिन पूरी तरह से नए के लिए एक नाम, CNAME प्रविष्टि को अनुपयुक्त बना देगा।

हालांकि आपकी बाहरी समस्या को हल करने का एक अच्छा तरीका है। उदाहरण के लिए, आपके पास कई ए रिकॉर्ड हो सकते हैं।


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