কোনও নির্দিষ্ট সার্ভারে নির্দেশিত সমস্ত সিএনএম এন্ট্রিগুলি আবিষ্কার করার জন্য কি আমাদের অভ্যন্তরীণ ডিএনএস এন্ট্রিগুলি জিজ্ঞাসা করার কোনও উপায় আছে?
সম্পাদনা করুন: আমরা একটি উইন্ডোজ পরিবেশ, সার্ভার 2003।
কোনও নির্দিষ্ট সার্ভারে নির্দেশিত সমস্ত সিএনএম এন্ট্রিগুলি আবিষ্কার করার জন্য কি আমাদের অভ্যন্তরীণ ডিএনএস এন্ট্রিগুলি জিজ্ঞাসা করার কোনও উপায় আছে?
সম্পাদনা করুন: আমরা একটি উইন্ডোজ পরিবেশ, সার্ভার 2003।
উত্তর:
আপনার পরিবেশ কী তা আপনি নির্দিষ্ট করেন নি তবে আপনি ইউনিক্স ব্যবহার করছেন বলে আমি মনে করি খনন এবং গ্রেপের সংমিশ্রণটি কাজ করা উচিত। ns.example.com
আপনার নেমসারভারের হোস্ট-নেম হওয়া উচিত, example.com
আপনার হোস্টটি সেই ডোমেনেরই অংশ, এবং HOST হল এমন হোস্ট যেটির জন্য আপনি সমস্ত সিএমএল রেকর্ড সন্ধান করতে চান। এটি আসলে গ্রেপ কমান্ডের একটি ট্যাব চরিত্র, আক্ষরিক নয় <TAB>
(আপনাকে গ্রেপ স্ট্রিং সামঞ্জস্য করতে হতে পারে)।
এছাড়াও জোন স্থানান্তরের অনুমতি দেওয়ার জন্য আপনার নেমসারভারটি কনফিগার করা দরকার, যার বিবরণ বাস্তবায়ন নির্ভর be
dig @ns.example.com example.com axfr |grep 'CNAME<tab>HOST$'
অথবা আপনি যদি উইন্ডোজে থাকেন তবে আপনি এনএসলআপ ব্যবহার করতে পারেন :
C:\> nslookup
> name ns.example.com
> ls -a example.com FILE
এটি ডোমেনের সমস্ত রেকর্ড আউটপুট করা উচিত example.com
যা ns.example.com
ফাইলটিকে "সম্পর্কে" জানে। এরপরে আপনি সংশ্লিষ্ট সিএনএসএস-এর জন্য সন্ধান করতে পাঠ্য ফাইলের মাধ্যমে সাজানোর জন্য যে কোনও সরঞ্জামটি ব্যবহার করতে পারেন।
অথবা এই অনির্ধারিত (তবে সম্ভবত সঠিক দেখাচ্ছে) পার্ল স্ক্রিপ্ট সহ :
#!/usr/bin/perl
use Net::DNS;
($target, $zone) = @ARGV;
$res = new Net::DNS::Resolver;
foreach $rr ($res->axfr($zone)) {
print $rr->name."\n" if (($rr->type eq "CNAME") && ($rr->rdatastr eq $target."."));
}
সম্পূর্ণতার জন্য কয়েকটি পয়েন্ট:
আপনার যদি আপনার ডিএনএস কনফিগারেশনে অ্যাক্সেস থাকে তবে এই ডেটাটি আবিষ্কার করা বরং তুচ্ছ। যাইহোক, যে কোনও ব্যক্তির কাছে আপনার সার্ভারের দিকে ইঙ্গিত করতে কোনও সিএমএ থাকতে পারে। আপনি এগুলি সনাক্ত করতে সক্ষম হবেন না।
@ ওয়ম্বি যেমন উল্লেখ করেছে যে আপনি সিআইএমএসের জন্য বিপরীত অনুসন্ধান করতে পারবেন না। সিএনএমএসের জন্য কোনও পিটিআর সমতুল্য নেই, এবং এমনকি যদি সেখানে সম্ভবত এটির কিছু রেকর্ড উপস্থিত থাকে। ডোমেনগুলির এলোমেলো নির্বাচনের দ্রুত চেক PTR রেকর্ডগুলি প্রায়শই A রেকর্ডের দিকে ফিরে দেখায় না তা দেখায়। তেমনি, এলোমেলো ঠিকানার জন্য পিটিআর রেকর্ডগুলির বিপরীত অনুসন্ধানগুলি প্রায়শই সম্পর্কিত এ রেকর্ড খুঁজে পায় না।
সম্পাদনা: সিএমএনগুলি কেবলমাত্র কোনও সিস্টেমের ওরফে থাকার একমাত্র উপায় নয়। ডিএনএস একাধিক এ রেকর্ডকে একই ঠিকানাটি নির্দেশ করতে দেয়। কার্যত এটি একটি সিএনএম যুক্ত করার মতো তবে পদ্ধতিটি আলাদা। একই সমস্যা আপনার ডোমেনের বাইরে প্রযোজ্য। বিভিন্ন এ রেকর্ড অনুসন্ধান করতে আপনি প্রশ্নে থাকা সিস্টেমের আইপি ঠিকানা (এস) অনুসন্ধান করবেন।
পাওয়ারশেল ব্যবহার করুন:
আপনার মাইক্রোসফ্ট ডিএনএস সার্ভারে প্রাথমিক নাম পরীক্ষা করুন:
Get-WmiObject -Namespace 'root \ MicrosoftDNS' -Class MicrosoftDNS_AType -Filter "IPAddress = 'xx.xx.xx.xx.xx (IP)'" -কম্পিউটারনেম মাইডেন্সারভারনেম
আপনার মাইক্রোসফ্ট ডিএনএস সার্ভার থেকে সেই হোস্টের জন্য সমস্ত নাম পান:
Get-WmiObject -Namespace 'root \ MicrosoftDNS'-ক্লাস মাইক্রোসফ্ট DNS_CNAMEType -Filter "প্রাথমিক নাম = 'প্রাথমিক জিজ্ঞাসা থেকে প্রাথমিক নাম একটি ডট দিয়ে শেষ করা হয়েছে।'" -কম্পিউটারনেম মাইডেন্সারভারনেম | নিজস্ব নাম, প্রাথমিক নাম নির্বাচন করুন