close

यसरी सजिलै बुझ्नुहोस् डोमेन नेम सिस्टम (डीएनएस) र यसले काम गर्ने प्रक्रिया

ई. रबिनराज गौतम ई. रबिनराज गौतम

बैशाख २३, २०८२ १९:२

यसरी सजिलै बुझ्नुहोस् डोमेन नेम सिस्टम (डीएनएस) र यसले काम गर्ने प्रक्रिया

काठमाडौँ । डोमेन नेम सिस्टमलाई छोटकरीमा डीएनएस भनेर चिनिन्छ । यो इन्टरनेटको एउटा फोनबुक हो, जसले वेबसाइटको नाम (जस्तै: youtube.com) लाई त्यसको आईपी एड्रेस (जस्तै: 142.250.190.46) मा बदल्छ । र, खोजेकै वेबसाइटको पेज खोल्न मद्दत गर्छ । अर्थात् हामीले देख्दा ‘youtube.com’ खुलेको देखे पनि वास्तवमा यो आईपी एड्रेस ‘142.250.190.46’ खुलेको हुन्छ । 

यसलाई अझ सामान्य अर्थमा बुझ्न मोबाइलको उदाहरण लिएर हेरौँ । मोबाइलमा सयौँ नम्बर हुन्छन् । सबैको नम्बर याद गर्न सम्भव पनि हुँदैन । कसको नम्बर कति हो भन्ने थाहा पाउन वा त्यो नम्बर सम्झिन हामी नम्बरसँगै उक्त व्यक्तिको नाम राखेर सेभ गर्छौँ । मानौँ तपाईँले ‘राम’ भन्ने मान्छेको नाम लेखेर उसको नम्बर सेभ गर्नु भयो । अब कल गर्नु परेको बेला तपाईँ उक्त नम्बरको साटो रामको नाम सम्झिनु हुन्छ ।

हो, त्यसरी नै डीएनएसले तपाईँ हामीलाई सम्झिन सजिलो हुने डोमेनका नामहरूलाई कम्प्युटरले बुझ्ने अङ्कमा रूपान्तरण गर्छ, जसलाई आईपी एड्रेस भनिन्छ । हामीले सयौँ वेबसाइट प्रयोग गरिरहेका हुन्छौँ, ती सबैको आईपी एड्रेस सम्झन सम्भव हुँदैन । तर, डीएनएसका कारणले हामीलाई केवल डोमेन नाम (जस्तै: facebook.com, techpana.com) मात्र सम्झिए पुग्छ । यसले इन्टरनेट प्रयोग सहज बनाएको छ, सबैको पहुँचमा पुर्‍याएको छ ।

यसरी सुरु भएको थियो डीएनएसको अवधारणा

सन् १९५० को दशकतिर विश्वभर एकअर्कासँग आबद्ध भएका कम्प्युटरको सङ्ख्या सयभन्दा कम थियो । अपरेटरहरूले डोमेन (वेबसाइट) र आईपी एड्रेसलाई कागजमा स्टिकी नोटको रूपमा लेखेर राख्थे । ताकी आवश्यक परेको खण्डमा उक्त नम्बरमार्फत सम्बन्धित साइटमा पुग्न सकियोस् । 

कम्प्युटरहरू सस्तो हुँदै गएपछि नेटवर्क पनि विस्तार हुँदै गयो । यसले गर्दा एक मात्र ‘HOSTS.TXT’ फाइलमा सबै डोमेन-आईपी जोडीहरू राख्न थालियो । यसलाई तत्कालीन स्टान्डफोर्ड रिसर्च इन्स्टिच्युट (अहिलेको एसआरआई इन्टरनेसनल) को नेटवर्क सूचना केन्द्र (एनआईसी) ले व्यवस्थापन गरेको थियो ।

यो सन् १९७० को दशकसम्म प्रभावकारी मानिएको थियो । तर, कम्प्युटर प्रयोगकर्तासँगै फाइलको साइज दिनप्रतिदिन ठुलो हुँदै जाँदा यसको व्यवस्थापन झन्झटिलो र जटिल बन्दै गयो । बारम्बार अपडेट गर्नुपर्ने, त्रुटिहरू सजिलै फैलिने र केन्द्रीय प्रणालीमा निर्भर रहनुपर्ने समस्याले नयाँ समाधानको माग गर्‍यो ।

यिनै समस्यालाई समाधान गर्न सन् १९८३ मा पल मोकापेट्रिस (Paul Mockapetris) ले कम्प्युटर वैज्ञानिक जोन पोस्टेल (Jon Postel) को निर्देशनमा साउथर्न क्यालिफोर्निया विश्वविद्यालयको सूचना विज्ञान संस्थानमा डीएनएसको विकास गरे ।

डीएनएसको सुरुवाती विवरण आरएफसी ८८२ र आरएफसी ८८३ नोभेम्बर १९८३ मा प्रकाशित भए । पछि यो प्रणालीलाई सुधार गर्दै आरएफसी ९७३ (जनवरी १९८६) र त्यसपछि आरएफसी १०३४ तथा आरएफसी १०३५ (नोभेम्बर १९८७) प्रकाशित गरियो । यी आज पनि डीएनएस प्रणालीका आधारभूत दस्तावेज मानिन्छन् । 

वितरित प्रणाली (Distributed System) को रूपमा डीएनएस विकास भएसँगै अब सबै डोमेन-आईपी जोडी एउटै फाइलमा राख्ने र अपडेट गर्नुपर्ने आवश्यकता हट्यो । यसको सट्टा डीएनएस सर्भरहरूबिच स्वचालित रूपमा समन्वय हुन थाल्यो । यसले गर्दा प्रणाली बढी लचिलो, प्रभावकारी हुनुका साथै मापन योग्य बन्यो ।

डीएनएसको संरचना

डीएनएसले काम गर्न तहगत (Hierarchical) र वितरित (Distributed) संरचना अपनाउँछ । तहगत संरचना भनेको कुनै पनि कुरालाई तह-तहमा वा श्रेणीबद्ध रूपमा मिलाउनु हो । डीएनएसमा डोमेन नामहरूलाई पनि यसैगरी विभिन्न तहमा बाँडिएको हुन्छ । डोमेन नामको अन्तिम भाग सबैभन्दा माथिल्लो तहमा पर्छ ।

सबैभन्दा माथिल्लो तहलाई ‘रूट’ भनिन्छ । यहाँनिर ध्यान दिनुपर्ने कुरा के छ भने रूट लेभल डोमेनको कुनै नाम हुँदैन । साधारणतया यसको नामलाई शून्य अथवा खाली स्ट्रिङ (टेक्ट तथा डेटालाई प्रतिनिधित्व गराउन प्रयोग गरिने अङ्क, अक्षर र चिन्हहरू मिलाएर बनाइएको संरचना-“”) को रूपमा बुझ्न सकिन्छ ।

त्यसपछि टप-लेभल डोमेन (TLD) जस्तै .com, .org, .np आउँछन् । अनि सेकेन्ड-लेभल डोमेन (SLD) जस्तै google, wikipedia, techpana आउँछन् । र, त्यसभन्दा तल सबडोमेन जस्तै www, mail आउन सक्छन् ।

डीएनएसको पदानुक्रमिक संरचना बुझ्न ‘www/mail.google.com’ भन्ने डोमेन नामलाई उदाहरणको रूपमा हेरौँ । यसको तहगत संरचना यस्तो हुन्छ:

  • “” (रूट) - सबैभन्दा माथि

  • .com (TLD) - रूटभन्दा तल

  • techpana (SLD) - .com भन्दा तल

  • mail/www (Subdomain) - techpana.com भन्दा तल

 

तपाईँले डोमेन नामको ठेगाना खोज्नु भयो भने  डीएनएस प्रणालीले यही तहगत बाटो पछ्याउँछ । त्यसमा सबैभन्दा पहिले रूट सर्भरलाई सोध्छ, त्यसपछि .com सर्भरलाई अनि google.com को सर्भरलाई, र अन्त्यमा www.google.com को सही ठेगाना पत्ता लगाउँछ । यसले गर्दा खोज्ने प्रक्रिया व्यवस्थित हुन्छ ।

अब वि‍तरित संरचनाबारे बुझौँ । वितरित भनेको कुनै पनि जानकारी वा कामलाई एउटै ठाउँमा मात्र नराखी धेरै ठाउँमा बाँडेर राख्नु हो । यसलाई हामी एउटा ठुलो पुस्तकालयको सट्टा सहरभर छरिएका साना-साना धेरै पुस्तकालयहरूसँग तुलना गर्न सक्छौँ । यदि संसारका सबै पुस्तक एउटै ठाउँमा भए सबैले एकै पटक प्रयोग गर्न गाह्रो हुन्छ र त्यो भवन भत्किएमा सबै जानकारी नष्ट हुन्छ । तर धेरै ठाउँमा बाँडेर राखेमा यो समस्या हुँदैन ।

त्यसैले डीएनएसमा पनि वितरित संरचना प्रयोग गरिन्छ । यसमा सबैभन्दा पहिले डीएनएसको जानकारी (कुन नामको आईपी ठेगाना के हो भन्ने कुरा) एउटै विशाल कम्प्युटरमा राखिएको हुँदैन । बरु यो जानकारी संसारभर छरिएका हजारौँ डीएनएस सर्भरहरू (जसलाई नेम सर्भर भनिन्छ) मा बाँडिएको हुन्छ । हरेक सर्भरले डीएनएसको सम्पूर्ण जानकारी नभई त्यसको निश्चित भागको जानकारी मात्र राख्छ ।

यसमा रूट सर्भरहरूलाई .com, .org, .np जस्ता टप लेभल डोमेनहरूको जानकारी कुन सर्भरले राख्छ भन्ने थाहा हुन्छ । .com टप लेभल डोमेनको जानकारी राख्ने सर्भरलाई ‘google.com’, ‘facebook.com’, ‘youtube.com’ जस्ता हजारौँ सेकेन्ड लेभल डोमेनको जानकारी कुन-कुन सर्भरले राख्छन् भन्ने थाहा हुन्छ । र ‘google.com’ को जानकारी राख्ने सर्भरलाई बल्ल www.google.com, mail.google.com, drive.google.com आदिको सही आईपी एड्रेस थाहा हुन्छ । यसरी जानकारी विभिन्न सर्भरहरूमा तहगत रूपमा बाँडेर राखिएको हुन्छ । 
 

यीनै तहगत र वितरित संरचनाले विभिन्न तहमा काम गर्ने सर्भरहरूको सहयोगमा डोमेन नेमलाई IP ठेगानामा अनुवाद गर्छ । ती विभिन्न तह यस प्रकार छन्: 

१. स्टब रिजल्भर (Stub Resolver)

यो तपाईँको कम्प्युटर वा मोबाइल डिभाइसमा हुन्छ । जब तपाईँ ब्राउजरमा कुनै डोमेन नाम टाइप गर्नुहुन्छ, क्वेरी(query) यहीँबाट सुरु हुन्छ ।

२. रिकर्सिभ रिजल्भर (Recursive Resolver)

यो तपाईँको इन्टरनेट सेवा प्रदायक (ISP) वा कुनै पब्लिक डीएनएस (जस्तै: Google को 8.8.8.8) ले प्रदान गर्छ । यसले डीएनएस क्वेरी समाधान गर्न Root → TLD → Authoritative सर्भरसम्म यात्रा गर्छ ।

३. रूट सर्भर (Root Server)

‘रूट सर्भर’ डीएनएसको सबैभन्दा माथिल्लो तहको सर्भर हो, जसले “” डोमेनलाई प्रतिनिधित्व गर्छ । विश्वभर १३ ओटा रूट सर्भरहरू छन् । 

४. टप लेभल डोमेन सर्भर (Top-Level Domain Server)

.com, .org, .np आदि टप-लेभल डोमेनहरूको जानकारी राख्ने सर्भर हुन् ।

उदाहरणका लागि, .np डोमेनको लागि मर्कन्टाइल कम्युनिकेसन जिम्मेवार छ । 

५. अथोरिटेटिभ सर्भर (Authoritative Server)

अथोरिटेटिभ डीएनएस सर्भरले कुनै डोमेनको लागि आधिकारिक र अन्तिम आईपी ठेगाना प्रदान गर्ने काम गर्छ । डीएनएस क्वेरीहरू विभिन्न चरण हुँदै अघि बढ्दा अन्तिममा सो डोमेनसँग सम्बन्धित अथोरिटेटिभ सर्भरसम्म पुग्छ । जसले त्यस डोमेनको बारेमा प्रमाणित जानकारी राखेको हुन्छ ।

उदाहरणका लागि यदि प्रयोगकर्ताले आफ्नो ब्राउजरमा ‘techpana.com’ टाइप गरे भने सो अनुरोध डीएनएस प्रणाली हुँदै ‘techpana.com’ को अथोरिटेटिभ डीएनएस सर्भरसम्म पुग्छ । त्यहाँबाट सो डोमेनको वास्तविक आईपी ठेगाना प्राप्त हुन्छ । त्यसैलाई ब्राउजरले वेबसाइट खोल्न प्रयोग गर्छ ।

संक्षेपमा अथोरिटेटिभ सर्भरले नै ‘यो डोमेन कुन आईपी ठेगानाको हो’ भन्ने कुरा विश्वसनीय रूपमा प्रमाणित गर्छ ।

डीएनएस क्वेरी (Query) प्रक्रिया

जब तपाईँ ब्राउजरमा ‘www.techpana.com’ टाइप गर्नुहुन्छ, तब सुरुमा स्टब रिजल्भर (Stub Resolver) र स्थानीय डीएनएस क्याश चेक गर्छ । तपाईँको कम्प्युटरले पहिलो चरणमा आफ्नै डीएनएस क्याशमा www.techpana.com को आईपी ठेगाना खोज्छ । यदि क्याशमा आईपी ठेगाना भेटियो भने: ब्राउजरले तुरुन्तै उक्त आईपी प्रयोग गरेर वेबसाइट लोड गर्छ । तर क्याशमा आईपी ठेगाना भेटिएन भने डीएनएस क्वेरी एक ‘Recursive’ डीएनएस ‘Resolver’ (उदाहरण: आईएसपीको डीएनएस आईपी अथवा गुगल डीएनएस 8.8.8.8)) मा पठाइन्छ । 

Resolver ले आफ्नो क्याशमा www.techpana.com सम्बन्धी जानकारी खोज्छ । यदि ‘Resolver’ को क्याशमा आईपी ठेगाना भेटियो भने सो आईपी ठेगाना तपाईँको कम्प्युटरमा पठाइदिन्छ । यदि Resolver को क्याशमा पनि फेला परेन भने: Resolver ले पूर्ण डीएनएस Resolution प्रक्रिया सुरु गर्छ । 

डीएनएस ‘Resolution’ प्रक्रियामा Resolver ले Root Server सँग सोध्छ: “.com को डीएनएस Server कहाँ छ ?” Root Server ले .com ‘TLD’ सर्भरको ठेगाना फर्काउँछ । त्यसपछि Resolver ले .com ‘TLD’ सर्भरलाई सोध्छ: “techpana.com को Authoritative Server कहाँ छ ?” TLD सर्भरले techpana.com को Authoritative डीएनएस Server को ठेगाना फर्काउँछ ।

Resolver ले Authoritative Server सँग सोध्छ, "www.techpana.com को IP ठेगाना के हो ?" Server ले सही आईपी ठेगाना पठाउँछ ।
त्यसपछि प्राप्त आईपी ठेगाना TTL (Time To Live) अनुसार ‘Resolver’ को क्याशमा केही समयको लागि सुरक्षित गरिन्छ । Resolver ले सो आईपी ठेगाना तपाईँको कम्प्युटरमा फर्काउँछ । ब्राउजरले उक्त आईपी प्रयोग गरेर ‘www.techpana.com’ वेबसाइट लोड गर्छ ।

यो प्रक्रिया निकै लामो जस्तो देखिए पनि केही मिलिसेकेन्ड वा सेकेन्डमै सम्पन्न हुन्छ । साथै बारम्बार पहुँच गरिने डोमेनको क्याशिङ पनि गरिन्छ ।  आईडीएन (Internationalized Domain Name) को प्रयोगले अङ्ग्रेजी बाहेकका भाषामा पनि डोमेन नाम प्रयोग गर्न सकिन्छ । जसलाई ‘ASCII’ मा रूपान्तरण गर्न “Punycode” प्रयोग गरिन्छ । जस्तै: गृहमंत्रालय.सरकार.भारत/hi

डीएनएस डेलिगेसन

डीएनएस डिलिगेसब (Delegation) भन्नाले कुनै मुख्य डोमेनको सबडोमेनहरूको डीएनएस व्यवस्थापन अर्को डीएनएस सर्भर वा संस्थालाई सजग रूपमा जिम्मा दिने प्रक्रिया हो । यसले डीएनएस व्यवस्थापनलाई विभाजन गर्न, लोड घटाउन र पृथक् टिमहरू/सेवा प्रदायकहरूद्वारा स्वतन्त्र व्यवस्थापन गर्न सहयोग पुर्‍याउँछ ।

उदाहरणका लागि google.com को डीएनएस व्यवस्थापन गुगलका मुख्य ‘authoritative’ डीएनएस सर्भरहरूले गर्छन् । तर, जब प्रयोगकर्ताले mail.google.com (जिमेल सेवा) खोल्छ, त्यो एक फरक सेवा भएकाले यसको डीएनएस व्यवस्थापनलाई गुगलले आफ्नै फरक सर्भरहरूमा डेलिगेसन गरेर छुट्टै ह्यान्डल गर्छ ।

अर्थात्, google.com को authoritative सर्भरले mail.google.com को लागि भन्छ, “यो सबडोमेनको आईपी ठेगाना चाहिएमा यी डीएनएस सर्भरहरू (जस्तै ns1.google.com, ns2.google.com) सँग सोध्नुहोस् ।” यसरी डीएनएस डेलिगेसनको माध्यमबाट ठुला सेवा प्रदायकको आन्तरिक व्यवस्थापन सजिलो बनाइएको हुन्छ । .np (नेपालको TLD) ले .gov.np को जिम्मेवारी सरकारी संस्थालाई (IDMC) सुम्पेको छ । 

डीएनएस जोन 

डीएनएस जोन भन्नाले डीएनएसको त्यो भाग हो, जुन एउटै अथोरिटेटिभ सर्भरले व्यवस्थापन गर्छ । र जब डीएनएस मा एड्मिन अधिकार बाँडिन्छ (delegation), त्यहाँ जोन कट (zone cut) हुन्छ । डोमेन भनेको नामको पूरै संरचना हो (जस्तै: google.com) जबकि जोन भनेको त्यो भाग हो, जुन एउटै सर्भरले हेर्छ (जस्तै: google.com को मुख्य जोन) ।

उदाहरणका लागि google.com को सर्भरले docs.google.com र drive.google.com आफैँ व्यवस्थापन गर्न सक्छ । तर यदि mail.google.com को डीएनएस अधिकार ‘G Suite’ सर्भरलाई दिइएको छ भने त्यो जोन कटको उदाहरण हो, जहाँ mail.google.com सम्बन्धित सबै क्वेरीहरू अब ‘G Suite’ को डीएनएस सर्भरले समाधान गर्छ ।

डीएनएस र आईक्यान (ICANN) को भूमिका

आईक्यान अर्थात् Internet Corporation for Assigned Names and Numbers ले विश्वव्यापी डोमेन नेम प्रणाली (डीएनएस) को समन्वय गर्छ, रुट जोन र टप लेभल डोमेन (TLD) को व्यवस्थापन गर्छ । त्यसका साथै डोमेन रजिस्ट्रारहरूलाई मान्यता दिन्छ र बहु-सरोकारवाला मोडेलमार्फत डीएनएस नीतिहरू तयार गर्छ । यसले ‘IANA’ (Internet Assigned Numbers Authority) का काम सम्पन्न गर्छ, आईपी ठेगाना वितरण गर्छ र 'डीएनएस सेक' मार्फत डीएनएस सुरक्षालाई सपोर्ट गर्छ । यसले गर्दा स्थिर, सुरक्षित र अन्तरक्रियात्मक इन्टरनेट सुनिश्चित हुन्छ ।

'डीएनएस सेक' भनेको के हो ?

'डीएनएस सेक' (Domain Name System Security Extensions) भनेको डीएनएसमा सुरक्षा थप्ने प्रविधि हो । यसले डीएनएसबाट प्राप्त गरिएको जानकारी साँचो हो वा होइन भन्ने प्रमाणित गर्छ । अर्थात् डेटा बिचमै परिवर्तन गरिएको छैन भन्ने कुराको सुनिश्चित गर्छ ।

साधारण डीएनएस प्रणालीले तपाईँले टाइप गरेको डोमेन नाम (जस्तै techpana.com) लाई आईपी ठेगानामा अनुवाद गर्छ । तर यसले प्राप्त जानकारी सुरक्षित छ कि छैन भन्ने ग्यारेन्टी दिँदैन । यही कमजोरीका कारण डीएनएस स्पुफिङ (Spoofing) वा डीएनएस हाइज्याकिङ (Hijacking) जस्ता साइबर आक्रमण सम्भव हुन्छन्, जसमा प्रयोगकर्तालाई नक्कली वेबसाइटमा पठाइन्छ ।

सन् २०१९ मा विश्वभरका थुप्रै सरकारी निकाय, बैंक र निजी कम्पनी डीएनएस स्पुफिङको शिकार भएका थिए । यसमा विशेषगरी साइबर आक्रमणकारीले डीएनएस अभिलेख परिवर्तन गरेर प्रयोगकर्तालाई वास्तविक वेबसाइटको सट्टा नक्कली वेबसाइटमा पठाएका थिए ।

उदाहरणका लागि इजिप्ट, यूएई, र इरानका केही सरकारी वेबसाइटहरूको डीएनएस हाईज्याक गरेर प्रयोगकर्ताका लगइन विवरण (login credentials) चोरी गरिएको थियो । यी नक्कली वेबसाइट बिलकुलै वास्तविक जस्ता देखिने तर दुर्भावनापूर्ण नियतले बनाइएका थिए । यसले गर्दा प्रयोगकर्तालाई झुक्याउन सजिलो भयो । यस घटनाले डीएनएस प्रणालीमा प्रमाणिकता र इन्टिग्रिटीको महत्त्वलाई उजागर गर्‍यो र 'डीएनएस सेक' जस्ता सुरक्षात्मक उपाय आवश्यक छन् भन्ने संकेत गर्‍यो ।

'डीएनएस सेक’को आवश्यकता

डेटाको इन्टिग्रिटी (Integrity) सुनिश्चित गर्न: 'डीएनएस सेक' ले डीएनएस प्रतिक्रियामा डिजिटल हस्ताक्षर (digital signature) थप्छ । जसले जानकारी सही सर्भरबाट आएको हो र त्यसमा कुनै छेडछाड भएको छैन भन्ने प्रमाणित गर्छ ।

डीएनएस स्पुफिङबाट बच्न: 'डीएनएस सेक' बिना आक्रमणकारीले नक्कली डीएनएस जानकारी पठाएर प्रयोगकर्तालाई गलत (वा हानिकारक) वेबसाइटमा पठाउन सक्छन् ।
डीएनएस प्रणालीमा विश्वास बढाउन: यो इन्टरनेटको आधारभूत संरचनालाई अझ सुरक्षित र भरपर्दो बनाउँछ ।

समग्रगमा 'डीएनएस सेक' इन्टरनेटको डीएनएस प्रणालीमा सुरक्षा थप्ने उपाय हो जसले हाम्रो अनलाइन गतिविधिलाई थप सुरक्षित बनाउँछ । नेपाल जस्तो देशमा पनि ‘.np’ टप लेभल डोमेनमा 'डीएनएस सेक' लाग गर्नुले राष्ट्रिय साइबर सुरक्षामा ठुलो योगदान पुर्‍याउन सक्छ ।

पछिल्लो अध्यावधिक: बैशाख २३, २०८२ १९:१९