নীতিগতভাবে ডিএনএস নাম রেজোলিউশন কীভাবে কাজ করে?


10

এখনই আমি লিনাক্স সিসাদমিনের জন্য একটি অনলাইন কোর্স নিচ্ছি এবং আমাকে একটি প্রশ্ন জিজ্ঞাসা করা হয়েছিল যা আমি সাধারণত বুঝতে পারি না। নাম সার্ভারটি কীভাবে সন্ধান করতে হয় তা আমি জানি, যদি আমি কমপক্ষে সঠিক হয়ে থাকি তবে অতিরিক্ত বিভাগের কমান্ডে ঠিকানাটি খুঁজে পেতে এটি ডিগ কমান্ডটি ব্যবহার করা হয়, তবে নীচের প্রশ্নটি জিজ্ঞাসা করলে আমি কিছুটা হারিয়ে গেলাম।

আপনার কনফিগার করা নেমসার্ভার এর নিষ্পত্তি হিসাবে কোন ক্যাশেড ফলাফল নেই তা ধরে নিই, মানচিত্রের জিমেইল ডটকম সমাধান করার জন্য আপনার নেমসার্ভারের কতগুলি প্রশ্নের প্রয়োজন? এই সমস্ত নেমসার্ভারগুলি খুঁজতে আপনি কোন আদেশ (গুলি) ব্যবহার করবেন? প্রতিটি স্তর থেকে একটিকে তালিকাবদ্ধ করুন এবং ব্যাখ্যা করুন যে কেন এই স্তরটির প্রয়োজন।

আমি উত্তরটি চাই না, আমাকে ঠিক কী করতে বলা হচ্ছে তা জানতে চাই।


আমি ভাবছিলাম dig +trace, তবে স্তরের দ্বারা কী বোঝানো হচ্ছে তা আমি নিশ্চিত নই। এটি সার্ভার ফল্টের জন্য একটি প্রশ্ন হতে পারে।
বড় ম্যাকলার্জহিউজ

হাই লিনাক্স 8807। আশা করি এটি আরও পরিষ্কার করার জন্য আমি আপনার প্রশ্ন সম্পাদনা করেছি; বিশেষত, আমি এটির উপর আরও ভাল শিরোনাম রাখার চেষ্টা করেছি। আপনি যদি মনে করেন যে আমি আপনার অভিপ্রায় পরিবর্তন করেছি তবে নির্দ্বিধায় সম্পাদনাটি ফিরে আসুন ("সম্পাদিত" লিঙ্কটি ক্লিক করুন এবং তারপরে মূল সংশোধনের উপরে "রোলব্যাক")।
একটি সিভিএন

আমার মনে হয় এই ভিডিওটি এটি ব্যাখ্যা করেছে: youtube.com/watch?v=2ZUxoi7YNgs

উত্তর:


13

আপনার কনফিগার করা নেমসার্ভার এর নিষ্পত্তি হিসাবে কোন ক্যাশেড ফলাফল নেই তা ধরে নিই, মানচিত্রের জিমেইল ডটকম সমাধান করার জন্য আপনার নেমসার্ভারের কতগুলি প্রশ্নের প্রয়োজন? এই সমস্ত নেমসার্ভারগুলি খুঁজতে আপনি কোন আদেশ (গুলি) ব্যবহার করবেন? প্রতিটি স্তর থেকে একটিকে তালিকাবদ্ধ করুন এবং ব্যাখ্যা করুন যে কেন এই স্তরটির প্রয়োজন।

আচ্ছা, এটিকে আলাদা করে নিই।

"আপনার কনফিগার করা নেমসার্ভার ধরে নিলে এর নিষ্পত্তিতে কোনও ক্যাশেড ফলাফল নেই" - প্রথমে যদি এর কোনও ক্যাশেড ডেটা না থাকে তবে তা কোনও কিছুর সমাধান করতে পারে না। সমাধানকারীটির ক্যাশে প্রাইম করার জন্য আপনার কাছে .(একা রুট) জোনের জন্য এনএস এবং ঠিকানা (এ, এএএএ) রেকর্ড থাকা দরকার । এটাই মূল নাম সার্ভার, যা root-servers.net.জোনে পাওয়া যায় । সেই অঞ্চল বা সেই ডিএনএস সার্ভারগুলি সম্পর্কে যাদুকর কিছুই নেই। যাইহোক, এই ডেটা প্রায়শই ডিএনএস রেজলভারকে "ব্যান্ডের বাইরে" সরবরাহ করা হয়, সংশোধনকারীর ক্যাশে যথাযথভাবে প্রাইম হিসাবে। কেবলমাত্র প্রামাণিক নাম সার্ভারগুলির এই ডেটার প্রয়োজন হয় না, তবে নাম সার্ভারগুলির সমাধান করে।

এছাড়াও, "সমাধান" কি? এই নামে আরআর টাইপ? একটি Aআরআর? অথবা অন্য কিছু? কোন ক্লাস ( CH/ কেওসনেট, IN/ ইন্টারনেট, ...)? সঠিক প্রক্রিয়াটি আলাদা হবে তবে সাধারণ ধারণাটি একই থাকবে।

যদি আমরা ধরে নিতে পারি যে আমরা কীভাবে মূল নামের সার্ভারগুলি খুঁজে পেতে পারি তবে এর চেয়ে বেশি কিছুই হয় না এবং "সংকল্প" দ্বারা আমরা IN Aনামের সাথে সম্পর্কিত যে কোনও আরআর এর বিষয়বস্তু পেতে পারি তা বোঝা যায় এটি অনেক বেশি ব্যবহারিক হয়ে ওঠে।

একটি ডিএনএস নাম সমাধান করার জন্য, আপনি মূলত নামটি লেবেলে বিভক্ত করেন এবং তারপরে ডান থেকে বামে আপনার পথে কাজ করেন। .শেষে ভুলে যাবেন না ; আপনি maps.google.com.বরং বরং সমাধান করা চাই maps.google.com। এটি আমাদের সমাধানের প্রয়োজনের সাথে ছেড়ে দেয় (আমরা এটি জানি, তবে একটি ডিএনএস রেজলভার বাস্তবায়ন সম্ভবত তা করবে না):

  • .
  • com.
  • google.com.
  • maps.google.com.

কীসের বিষয়বস্তুটি জিজ্ঞাসা করতে হবে তা নির্ধারণের সাথে শুরু করুন .। এটা সহজ; আমাদের কাছে ইতিমধ্যে সেই তথ্য রয়েছে: মূল নাম সার্ভারের নাম এবং আইপি ঠিকানা । সুতরাং আমরা একটি রুট নেম সার্ভার আছে। আসুন আমরা a.root-servers.netনামের সমাধানটি অবিরত রাখতে 198.41.0.4 ( এছাড়াও 2001: 503: ba3e :: 2: 30) ব্যবহার করার সিদ্ধান্ত নিয়েছি । অনুশীলনে, সমাধানের মাধ্যমে প্রথম কাজগুলির মধ্যে একটি সম্ভবত প্রদত্ত রুট সার্ভার ডেটা ব্যবহার করে রুট জোনের সার্ভারের মধ্যে একটিকে রুট জোনের জন্য নামের সার্ভারের সঠিক তালিকার জন্য জিজ্ঞাসা করতে হবে, যাতে এটি নিশ্চিত করা হয় যে যে কোনও একটি যদি নাম এবং আইপি ঠিকানাগুলি বৈধ এবং অ্যাক্সেসযোগ্য, এটি রেজোলিউশন শুরু হওয়ার সাথে সাথে রুট জোনের জন্য ডেটার একটি সম্পূর্ণ এবং সম্পূর্ণ সেট থাকবে।

maps.google.com. IN A198.41.0.4 এ একটি ডিএনএস ক্যোয়ারী বন্ধ করুন । এটি প্রতিক্রিয়াতে আপনাকে বলবে "না, এটি করবে না, তবে এখানে এমন কেউ আছেন যিনি হয়ত জানেন"; এটি একটি রেফারেল। এটিতে NSসর্বাধিক নিকটবর্তী অঞ্চলের রেকর্ড রয়েছে যা সার্ভারটি যে সার্ভারের কাছে উপলব্ধ রয়েছে তার কোনও আঠালো রেকর্ডের সাথে জানে question যদি কোনও আঠালো ডেটা উপলভ্য না থাকে তবে প্রথমে আপনাকে বেছে নেওয়া এনএস রেকর্ডে থাকা হোস্টটিকে সমাধান করতে হবে, সুতরাং আইপি ঠিকানা পেতে একটি পৃথক নাম রেজ্যুলেশন স্প্যান করুন; যদি আঠালো ডেটা উপলভ্য থাকে তবে আপনার কাছে এমন একটি নেম সার্ভারের আইপি ঠিকানা থাকবে যা উত্তরের কমপক্ষে "কাছাকাছি" থাকবে। এই ক্ষেত্রে, এটি com.অঞ্চলটির জন্য সার্ভারের সেট হবে এবং পাশাপাশি আঠালো ডেটা সরবরাহ করা হবে।

com.নামের একটিতে সার্ভারকে একই প্রশ্ন জিজ্ঞাসা করে প্রক্রিয়াটি পুনরাবৃত্তি করুন । তারা উভয়ই জানে না, তবে আপনাকে গুগলের অনুমোদনের নাম সার্ভারগুলিতে রেফার করবে। সাধারণ ক্ষেত্রে এই মুহুর্তে এটি আঘাত হানা হবে বা আঠালো ডেটা সরবরাহ করা হয়েছে কিনা তা মিস করবেন; কোনও comডোমেনকে কেবল নাম সার্ভার রাখতে বাধা দেওয়ার কিছুই নেই nl, উদাহরণস্বরূপ, এই ক্ষেত্রে জিটিএলডি সার্ভারগুলি থেকে আঠালো ডেটা উপলব্ধ হওয়ার সম্ভাবনা কম। সরবরাহ করা আঠালো ডেটাও অসম্পূর্ণ হতে পারে, বা আপনি যদি সত্যিই দুর্ভাগ্য হন তবে এটি ভুলও হতে পারে! আমি উপরে উল্লিখিত পৃথক নাম রেজোলিউশনটি সরিয়ে রাখতে আপনাকে সর্বদা প্রস্তুত থাকতে হবে।

মূলত, আপনি aa(অনুমোদনমূলক উত্তর) পতাকা সেট সহ একটি উত্তর না পাওয়া পর্যন্ত আপনি চালিয়ে যান । এই উত্তরটি আপনাকে বলবে আপনি কী চাইছেন বা আপনি যে আরআর চেয়েছিলেন সেটি বিদ্যমান নেই (হয় না NXDOMAIN, বা NOERRORশূন্য প্রতিক্রিয়া ডেটা রেকর্ড সহ)। SERVFAIL(এবং এক ধাপ পিছনে পিছনে ফিরে যান এবং যদি আপনি একটি পান তবে অন্য সার্ভার চেষ্টা করুন; যদি নামযুক্ত সমস্ত সার্ভারগুলি ফিরে আসে SERVFAIL, নাম রেজোলিউশন প্রক্রিয়াটি ব্যর্থ SERVFAILকরে ক্লায়েন্টকে নিজেকে ফিরিয়ে দিন ) এর মতো প্রতিক্রিয়াগুলি সন্ধান করুন ।

প্রতিটি সার্ভারের (যা খারাপ অভ্যাস হিসাবে বিবেচিত হতে পারে) পূর্ণাঙ্গ আরআরনাম চাওয়ার বিকল্প হ'ল আমরা পূর্বে নির্ধারিত লেবেলের বিভক্ত তালিকাটি ব্যবহার করা, সার্ভারের দেওয়া নাম সার্ভারগুলি IN NSএবং IN A/ IN AAAAআরআর জন্য মূলের দিকে আরও জিজ্ঞাসা করুন সেই লেবেলের জন্য এবং নাম রেজোলিউশন প্রক্রিয়াটি আরও এগিয়ে নিতে সেগুলি ব্যবহার করুন। এটি অনুশীলনে কেবলমাত্র সামান্য পৃথক এবং একই প্রক্রিয়া এখনও প্রযোজ্য।

আপনি এই সম্পূর্ণ প্রক্রিয়াটি ইউটিলিটির +traceঅপশনটি ব্যবহার করে অনুকরণ করতে পারেন dig, যা বিআইএনএন্ডির অংশ হিসাবে আসে বা এর set debugমধ্যে আসে nslookup

এটি আরও মনে রাখার মতো যে কিছু আরআর টাইপস (উল্লেখযোগ্যভাবে NS, MXএবং আরও কয়েক জন; এছাড়াও, কিছু A6সময়ের জন্য যথাযথভাবে ব্যবহৃত হয়েছিল তবে অবমূল্যায়ন করা হয়েছে) এবং অন্যান্য আরআরগুলি রেফারেন্স করতে পারে এবং করতে পারে। যে ক্ষেত্রে, আপনি বন্ধ ডিম করার প্রয়োজন হতে পারে আরেকটি নাম রেজল্যুশন প্রক্রিয়া আপনার ক্লায়েন্ট করার জন্য একটি সম্পূর্ণ এবং দরকারী উত্তর দিতে।


1
আমি মনে করি যে এই উত্তরটি কেবলমাত্র পদ্ধতির চেয়ে ধারণাগুলি বোঝার জন্য ওপি-র অনুরোধের সাথে একেবারে ইনলাইন।
111 ---

সুতরাং আমি যা করছি তা খনন করা হয় মানচিত্রের ডটকমকে ডটকম এ.এন. এ, তবে আমি একইভাবে খনন করব তবে এনএস 1.google.com এর সাথে যদি এটি সঠিক হয় তবে তা যদি হয় তবে শিক্ষক কোন স্তরের কথা বলছেন এবং তারা কেন দরকার হবে?
linux8807

@ linux8807 আপনি digএকবার ns1.google.com নামটির জন্য চাইবেন যখন আপনি এর রেফারেল পেয়েছেন যা সরবরাহ করা আঠালো রেকর্ডসে কোনও আইপি ঠিকানা অন্তর্ভুক্ত করে না। তারপরে আপনি পূর্ববর্তী নাম সমাধান প্রক্রিয়াটি চালিয়ে যাবেন।
একটি সিভিএন

@ মাইকেলKjörling ns1-4.google.com সমস্ত রেকর্ডের আঠালো রেকর্ডে একটি আইপি ঠিকানা রয়েছে। i.imgur.com/o79aIGB.png
linux8807

@ লিনাক্স ৮৮০7 এ ক্ষেত্রে প্রায়শই এমন ঘটনা ঘটবে যখন আঠার রেকর্ডগুলি ডোমেনের জন্য জিজ্ঞাসা করা হচ্ছে একই টিএলডি এর অধীনে থাকবে। তবে সাধারণ ক্ষেত্রে আপনি এটির উপর নির্ভর করতে পারবেন না ।
একটি সিভিএন

7

একটি dnstracerকমান্ড রয়েছে (আপনার এটি ইনস্টল করার দরকার হতে পারে, কমপক্ষে দেবিয়ান-তে, এটি প্যাকেজের নামও) যা নামের সমাধানটি সনাক্ত করবে। আপনি (কোনও মন্তব্যে কোভেরাস পয়েন্ট হিসাবে) ব্যবহারও করতে পারেন dig

এখানে dnstracer সঙ্গে। -s .এর অর্থ মূল থেকে শুরু করা; -4আইপিভি 4 ব্যবহার করার অর্থ (ভি 6 এখানে ভাঙা আছে ...); -oএর অর্থ আসলে সমাধান হওয়া আইপি ঠিকানাগুলি শেষে দেখানো (আমি আউটপুটটির সেই অংশটি বাদ দিয়েছি, সেগুলির অনেকগুলি রয়েছে)।

anthony@Zia:~$ dnstracer -s . -4 -o maps.google.com
Tracing to maps.google.com[a] via A.ROOT-SERVERS.NET, maximum of 3 retries
A.ROOT-SERVERS.NET [.] (198.41.0.4) 
 |\___ m.gtld-servers.net [com] (192.55.83.30) 
 |     |\___ ns4.google.com [google.com] (216.239.38.10) Got authoritative answer 
 |     |\___ ns3.google.com [google.com] (216.239.36.10) Got authoritative answer 
 |     |\___ ns1.google.com [google.com] (216.239.32.10) Got authoritative answer 
 |      \___ ns2.google.com [google.com] (216.239.34.10) Got authoritative answer 
⋮

এই আউটপুটটি অব্যাহত থাকে, যেমন ডিএনস্ট্রেসার সমস্ত পাথ চিহ্নিত করে (যাতে আপনি দেখতে পারেন, উদাহরণস্বরূপ, কিছু নেমসার্সের একটি পুরানো জোন রয়েছে কিনা)।

সুতরাং, আপনি দেখতে পাচ্ছেন যে এটি রুট নেম সার্ভারে একটি ক্যোয়ারী নেবে, তারপরে একটি জিটিএলডি-সার্ভারে (.কম জোনের জন্য সার্ভার), শেষ পর্যন্ত একটি গুগল নেমসার্ভারে।

এর সাথে dig, আউটপুটটি অনেক বেশি ভার্বোজ (তাই আমি অনেকগুলি কাটা করবো):

dig -4 maps.google.com. +norecurse +trace
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> maps.google.com. +norecurse +trace
;; global options: +cmd
.                       425379  IN      NS      b.root-servers.net.
⋮
com.                    172800  IN      NS      f.gtld-servers.net.
⋮
google.com.             172800  IN      NS      ns2.google.com.
⋮
maps.google.com.        300     IN      A       74.125.228.70
⋮

digঅতিরিক্তভাবে দেখায় যে এটি রুট নেমসার্ভারের বর্তমান তালিকাটি পেতে কোনও অনুসন্ধান করেছে। এটি এমন কিছু যা একটি ডিএনএস সার্ভার সাধারণত খুব কম সময়ে ঘটায়। সুতরাং আমি নিশ্চিত না যে আপনি এটি আপনার ঠান্ডা ক্যাশে ক্ষেত্রে গণনা করছেন কিনা।

আপনি অবশ্যই তারের সাথে প্রকৃত প্রশ্নগুলি দেখতে পারেন, উদাহরণস্বরূপ wireshark,।


আমি কোনও কিছু ইনস্টল করতে সক্ষম হব না কারণ এটি কোনও টার্মিনালে সেটআপ হয়েছে তবে আমি কাজ থেকে বাড়ি ফিরে আসার পরে আমি ডিএনস্ট্রেসারটি চেষ্টা করব এবং তা কাজ করে কিনা তা দেখতে পাব এবং তিনি (* 216.239.38.10) (216.239.36.10) ( 216.239.32.10) (216.239.34.10) * এটি? যদি তা হয় তবে আমি ইতিমধ্যে একটি অর্থে এটি অ্যাক্সেস করতে সক্ষম তবে কোনও অনুমোদিত উত্তর দিয়ে নেই। এছাড়াও, এই কি তিনি স্তরের দ্বারা উল্লেখ করা হয়?
লিনাক্স 8807

@ linux8807 আপনার কাছে না digথাকলে আপনি ব্যবহার করতে পারেন dnstracer(বা যদি আপনার digফর্ম্যাটিং পছন্দ হয়)। ডিএনএসট্রেসারের আইপি অ্যাড্রেসগুলি হ'ল নেমসারভারের আইপি অ্যাড্রেসগুলি; তাদের নামগুলি বামে রয়েছে। a.root-servers.net হল 198.41.0.4, ইত্যাদি Those এগুলি সার্ভারগুলি অনুসন্ধান করা হচ্ছে এবং এটি আপনাকে কোন জোনের পাশাপাশি স্কোয়ার বন্ধনীগুলির জন্যও বলে। আমার সন্দেহ হয় প্রথম স্তরটি * .root -versvers.net (for .), দ্বিতীয়টি হয় * .gtld-servers.net (for .com), ইত্যাদি
ডার্বার্ট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.