DNS

DNS-explanation

Written by Kh. anik

November 29, 2021

DNS কি?
Domain Name System (DNS) এমন একটি ডিস্ট্রিবিউটেড হায়ারারকিক্যাল সিস্টেম, যার সাহায্য ছাড়া বর্তমান ইন্টারনেট কল্পনাও করা যায়না। ইন্টারনেট মূলতঃ বিশ্বব্যাপী একে অপরের সাথে সংযুক্ত একটি কম্পিউটার নেটওয়ার্ক ব্যবস্থাপনা সিস্টেম, যেখানে ডিভাইস সমূহের মধ্যে সংযোগ স্থাপন এবং যোগাযোগ এর জন্যে আইপি এড্রেস নামক এক প্রকার এড্রেস ব্যবহার করা হয়। ইন্টারনেট-এ সকল ধরনের ডাটা আদান প্রদান এই আইপি- এড্রেস এর মাধ্যমে হয়ে থাকে। কিন্তু একজন সাধারণ ব্যবহারকারীর নিকট ইন্টারনেট ব্যবহারের জন্য আইপি-এড্রেস মনেরাখা একটি দুরহ ব্যাপার। এ জন্য ইন্টারনেট কমোনিউকেশন সহজলভ্য করতে এমন একটি প্রযুক্তি ডেভেলপ করা হয় যার নাম হলো Domain Name System (DNS)। এর দারা কমিউনিকেশন এর সময় বিভিন্ন ধরনের নাম ব্যবহার করা হয় যা DNS সার্ভার এর মাধ্যমে স্বয়ংক্রিয়ভাবে আইপি-এড্রেস এ পরিবর্তিত হয়ে ক্লায়েন্ট এবং সার্ভার এর মধ্যে যোগাযোগ সম্পন্ন করে।

এখানে ব্যবহৃত নামকে ডোমেইন নেইম (Domain Name) বলা হয়ে থাকে, আর একটি Domain Name System (DNS) দুই ধরনের কাজ করে থাকে, ডোমেইন নেইম (Domain Name) কে পরিবর্তন করে আইপি-এড্রেস দিয়ে থাকে যাকে ফরওয়ার্ড রিজলভ এবং আইপি-এড্রেস এর পরিবর্তে ডোমেইন নেইম (Domain Name) দিয়ে থাকে যাকে রিভার্স রিজলভ বলা হয়ে থাকে।

DNS কম্পোনেন্টঃ

১। DNS Resolver:

এটি ক্লায়েন্ট এর হয়ে কাজ করে। যখন ক্লায়েন্ট একটি ডোমেইন এর নির্দিষ্ট সার্ভিসের জন্য তার DNS সার্ভার কে রিকোয়েস্ট পাঠায় DNS Resolver তখন আইপি-এড্রেস এর জন্য নেম সার্ভার (NS) এর নিকট DNS রিকোয়েস্ট কুয়েরী পাঠায়। আমরা ইন্টারনেট ব্যবহারের জন্য এই কম্পোনেন্টটি বেশী ব্যাবহার করে থাকি।

২। Name Servers (NS):

একটি ডোমেইন এর Information যে সার্ভার এ store করা থাকে তাকে ওই ডোমেইন এর Name Server বলা হয়। একটি ডোমেইন এর যাবতীয় Information তার Name Serverএ store করা থাকে।

৩। Resource Records (RR):

Name Serverএ store করা একটি ডোমেইন প্রত্যেকটি সার্ভিস (web, mail, smtp etc.) এর Information কেই Resource Records (RR) বলে।

DNS কিভাবে কাজ করে?

আমরা আগেই জেনেছি Domain Name System (DNS) একটি ডিস্ট্রিবিউটেড হায়ারারকিক্যাল সিস্টেম, যেখানে অনেকগুলো সিস্টেম এর সমন্বয়ে এর কর্মপ্রক্রিয়া সম্পন্ন করে থাকে। এখানে আমরা কর্মপ্রক্রিয়ার ধাপগুলো নিয়ে বিস্তারিত আলোচনা করবো।

ধাপ-১: এখানে একজন ব্যবহারকারী যখন তার ব্রাউজারে একটি URL (ডোমেইন নেইম) ব্রাউজ করার জন্যে রিকোয়েস্ট করবে, রিকোয়েস্ট টি উক্ত ডিভাইস (পিসি, ল্যাপটপ, মোবাইল ডিভাইস) এর DNS Resolver এর নিকট আইপি-এড্রেস এর জন্য ফরওয়ার্ড করবে

ধাপ-২: DNS Resolver সার্ভার রিকোয়েস্টটিকে রুট সার্ভার এর নিকট ফরওয়ার্ড করবে (২)। রুট সার্ভার ডোমেইন নেইম টাইপ (.com, .org, .net, .edu, .bd etc.) এর উপর ভিত্তি করে DNS Resolver কে ডোমেইন এর নির্দিষ্ট Top Level Domain Name Server (TLD NS) এর এড্রেসটি জানিয়ে দিবে (৩)।

ধাপ-৩: DNS Resolver সার্ভার ওই ডোমেইন এর Top Level Domain Name Server (TLD NS) সার্ভার এর সঙ্গে যোগাযোগ করবে এবং ডোমেইনটির ইনফরমেশন চাইবে (৪)। Top Level Domain Name Server (TLD NS) সার্ভার ওই ডোমেইন এর নেম সার্ভার (NS) এর এড্রেসটি জানিয়ে দিবে (৫)।

ধাপ-৪: DNS Resolver সার্ভার ওই ডোমেইন এর নির্দিষ্ট সার্ভিস (web, mail, smtp etc.) এর জন্যে ওই ডোমেইন এর নেম সার্ভার (NS) এর সংগে যোগাযোগ করবে (৬)। নেম সার্ভার (NS) ওই সার্ভিস এর জন্যে আইপি-এড্রেস (www.google.com IP:172.217.26.206) প্রদান করবে (৭)।

ধাপ-৫: এবার DNS Resolver সার্ভার ক্লায়েন্ট কে ওই নির্দিষ্ট সার্ভিস এর আইপি-এড্রেস (www.google.com IP:172.217.26.206) প্রদান করবে (৮)। ক্লায়েন্ট উক্ত সার্ভিস এর জন্যে সার্ভিস এর আইপি-এড্রেস (www.google.com IP:172.217.26.206) এ যোগাযোগ করবে (৯)। এভাবে DNS Resolving প্রক্রিয়া সম্পন্ন করবে।

DNS সার্ভার এর প্রকারভেদঃ

কার্যপ্রণালী গত পার্থক্যঃ

১। Authoritative-Only DNS Servers: যে DNS সার্ভার তার ডাটাবেস এ রক্ষিত ডোমেইন এর Information ব্যতীত অন্য কোন ডোমেইন এর রিকোয়েস্ট কুয়েরী Accept করেনা তাকে Authoritative-Only DNS Servers বলা হয়। কোন ডোমেইন এর Name Server ই ওই ডোমেইন এর Authoritative DNS Server আর এটি যদি অন্য কোন ডোমেইন এর রিকোয়েস্ট কুয়েরী Accept না করে তখন এটিকে Authoritative-Only DNS Servers বলা হবে।

২। Caching-Only or Caching DNS Server: DNS Resolver সার্ভার কেই Caching-Only or Caching DNS Server বলা হয়। Caching DNS Server এ কোন ডোমেইন এর Information থাকেনা। এটি DNS রিকোয়েস্ট কুয়েরীর মাধ্যমে Name Server থেকে বিভিন্ন ডোমেইন এর Information কালেক্ট করে ক্লায়েন্ট কে প্রদান করে থাকে। দ্রুত রিকোয়েস্ট resolve এর জন্য Frequent ব্রাউজ করা ডোমেইন গুলোর জন্যে একটি Cache ট্যাবল তৈরি করে নির্দিষ্ট সময় পর্যন্ত তথ্য সংরক্ষণ করে।

৩। Forwarding DNS Server: এটিও Caching-Only or Caching DNS Server মতই কাজ করে, তবে এটি Name Server সমূহের সংগে সরাসরি যোগাযোগ না করে সমস্ত DNS রিকোয়েস্ট গুলোকে একটি নির্দিষ্ট DNS Resolver সার্ভার এ ফরওয়ার্ড করে। এটিও দ্রুত রিকোয়েস্ট resolve এর জন্য Frequent ব্রাউজ করা ডোমেইন গুলোর জন্যে একটি Cache ট্যাবল তৈরি করে নির্দিষ্ট সময় পর্যন্ত তথ্য সংরক্ষণ করে।

৮। Hybrid DNS Server: Caching DNS এবং Authoritative DNS Server একই সার্ভার থেকে পরিচালিত হলে তাকে আমরা Hybrid DNS Server বলছে পাড়ি।

সম্পর্কগত পার্থক্যঃ

১। Primary or Master DNS Server: এটি একটি Authoritative DNS Server। একটি ডোমেইন এর Information এর Master ডাটাবেস এই সার্ভার এ সংরক্ষণ করা হয় এবং Resource Records (RR) গুলো এই সার্ভার থেকেই ডাটাবেস এ এন্ট্রি দেয়া হয়ে থাকে।

২। Secondary or Slave Servers: এটিও একটি Authoritative DNS Server। একটি ডোমেইন এর Information এর Replicate (Slave) ডাটাবেস এই সার্ভার এ সংরক্ষণ করা হয়। এই সার্ভার এ কোন Resource Records (RR) এন্ট্রি দেয়া হয়না, Master বা Primary সার্ভার থেকে পুল করে থাকে।

৩। Public vs. Private Servers: ইন্টারনেট এ যে কেউ যে সার্ভার এর ক্লায়েন্ট হতে পারে সেটাই Public Server যেমন 4.2.2.2, 8.8.8.8 বহুল ব্যবহৃত Public DNS Server যেগুলো Public DNS Resolver হিসেবে কাজ করছে। পক্ষান্তরে Private Server হলও যেখানে ক্লায়েন্টদের কে আগে থেকেই ডিফাইন করা থাকে যে, কে কে এই DNS এর ক্লায়েন্ট হতে পাড়বে।

DNS সার্ভার কনফিগারেশনঃ

DNS Server কনফিগারেশন জন্য আমাদের একটি সার্ভার প্রয়োজন যেটিতে CentOS অথবা RHEL 7 ইন্সটল করা থাকতে হবে। তারপর আমরা পরবর্তী ধাপ গুলো ফলো করে DNS Server কনফিগারেশন করবো।

১। Scenario: আমরা Primary এবং Secondary DNS সার্ভার কনফিগারেশন জন্য নিম্নোক্ত Scenario টি ব্যবহার করবো।

Primary DNS Server:
Hostname : ns1
Domain Name : mahedi.me
IP Address : 192.168.1.5

Secondary DNS Server:
Hostname : ns2
Domain Name : mahedi.me
IP Address : 192.168.1.10

2. কনফিগারেশন Firewall

ডিস্যাবল SELinux:

এবার server টি reboot দিন।

# reboot

3. কনফিগারেশন Hostname:

বর্তমান hostname টি দেখার জন্য

[root@localhost ~]# hostname localhost.localdomain

You May Also Like…

ওয়াইফাই স্লো হওয়ার ১০ কারণ

ওয়াইফাই স্লো হওয়ার ১০ কারণ

এখন ইন্টারনেট ব্যবহারের জন্য সবচেয়ে ভালো উপায় হচ্ছে ওয়াইফাই। এর সুবিধা হচ্ছে এতে একটি সংযোগ দিয়েই একাধিক ডিভাইসে...

How to install DNS dig tool in Windows

How to install DNS dig tool in Windows

Dig হলো DNS সার্ভারের অপারেশন এবং টেস্টিং এর জন্য সর্বাধিক ফিচার সম্বলিত একটি টুল যার সাহায্যে DNS সকল অপারেশন এর সকল...

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *