নির্দিষ্ট নাম-সার্ভারটি জিজ্ঞাসা করার সময় `dig` এবং` হোস্টের মধ্যে পার্থক্য কী?


11

আমি কোনও ডিএনএস সরবরাহকারীর সাথে জিনিসগুলি সঠিকভাবে সেট আপ করেছি কিনা তা যাচাই করার জন্য আমি এই আদেশটি ব্যবহার করছিলাম:

host hostname.example.com ns1.example-nameserver.com

আমি যতদূর বলতে পারি, এটি ns1.example-nameserver.comসন্ধান করতে hostname.example.comবলে এবং উত্তরটি প্রতিবেদন করে। আমি একটি হোস্ট-না-পাওয়া প্রতিক্রিয়া পাচ্ছিলাম তাই ভেবেছিলাম আমি এটি ভুল করে ফেলেছি। তবে, তাদের নাম-সার্ভারটি নির্দিষ্ট না করে (এভাবে আমার আইএসপির নাম-সার্ভারটিকে এটি সন্ধান করার অনুমতি দেওয়া হয়েছে) আমি সঠিক প্রতিক্রিয়া পেয়েছি ( hostnameএটি CNAMEযদি বিবেচিত হয় তবে এটি)। আমি এটি জানতে পারি না তাই আমি আশেপাশে অনুসন্ধান করে digকমান্ডটি পেয়েছি :

dig @ns1.example-nameserver.com hostname.example.com

যতদূর আমি এটি বলতে পারি hostকমান্ডের মতো একই কাজ করে - একটি নির্দিষ্ট নাম-সার্ভারকে একটি হোস্ট সন্ধান করতে বলে। অতএব আমি উপসংহারে পৌঁছেছি যে তারা অবশ্যই এটি কোনওভাবে ভিন্নভাবে করতে হবে, এবং সেই ক্যাচিং নাম-সার্ভারগুলিকে অবশ্যই একই পদ্ধতিটি ব্যবহার করা উচিত dig

আমার উপসংহারটি সঠিক বা ভুল, যদি এটি সঠিক হয়:

এই দুটি চেহারা আপ পদ্ধতির মধ্যে পার্থক্য কি?

যদি এটি ভুল হয়:

ডিএনএস এবং যে আদেশগুলি hostএবং digআমাকে এই উপসংহারে নিয়ে গেছে সেগুলি সম্পর্কে আমার কী ভুল ধারণা রয়েছে ?

উদাহরণ আউটপুট:

$ host cardiff.tzmchapters.org ns1.livedns.co.uk
Using domain server:
Name: ns1.livedns.co.uk
Address: 213.171.192.250#53
Aliases: 

Host cardiff.tzmchapters.org not found: 3(NXDOMAIN)

$ dig @ns1.livedns.co.uk cardiff.tzmchapters.org

; <<>> DiG 9.8.3-P1 <<>> @ns1.livedns.co.uk cardiff.tzmchapters.org
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 23620
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;cardiff.tzmchapters.org.   IN  A

;; ANSWER SECTION:
cardiff.tzmchapters.org. 3600   IN  CNAME   ghs.google.com.

;; AUTHORITY SECTION:
google.com.     3600    IN  SOA ns1.livedns.co.uk. admin.google.com. 1354213742 10800 3600 604800 3600

;; Query time: 27 msec
;; SERVER: 213.171.192.250#53(213.171.192.250)
;; WHEN: Mon Apr 22 23:47:05 2013
;; MSG SIZE  rcvd: 128

উভয় কমান্ডের ক্ষেত্রে একই পদ্ধতিতে কাজ করা উচিত। আপনি প্রতিটি কমান্ডের সম্পূর্ণ আউটপুট প্রদর্শন করতে পারেন?
রেনান

কিভাবে উভয় digএবং hostরিপোর্ট রিপোর্ট NXDOMAIN। সঙ্গে digযদি আপনি শিরোলেখে (5 ম অ ফাঁকা আউটপুট লাইন) এবং সঙ্গে এটি দেখতে পারেন hostএটি আরো সুস্পষ্ট। NXDOMAINমানে ডোমেনের অস্তিত্ব নেই। তবুও একটি CNAMEউত্তর বিভাগে ফিরে আসে! আমি বিশ্বাস করি যে এটি ডিএনএস সার্ভারে একটি বাগ!
সেলেদা

সুতরাং সেই ক্ষেত্রে, digএবং hostউভয়ই একই একই ক্যোয়ারী প্যাকেটটি প্রেরণ করুন, সঠিক একই প্রতিক্রিয়া প্যাকেটটি (কোনও টাইমস্ট্যাম্পগুলি বাদে) পান, তবে আলাদাভাবে ব্যাখ্যা করুন? hostজামিন তা দেখামাত্রই কি আউট হয় NXDOMAIN?
habাববট

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

উত্তর:


13

host, digএবং nslookupসমস্ত একই কার্যকারিতা ভাগ করে দেয়। আপনি যে বিষয়ে জিজ্ঞাসা করছেন (কোনও নির্দিষ্ট নামসারকে একটি নির্দিষ্ট ডিএনএস প্রশ্ন জিজ্ঞাসা করছেন), digএবং host(এবং প্রকৃতপক্ষে nslookup) ঠিক একই আচরণ করছেন।

ডিএনএস সমস্যা সমাধানের জন্য, digএটির পছন্দনীয় কারণ এর আউটপুট ফর্ম্যাটটি আরও "কাঁচা": এর আউটপুটে এটি সরাসরি ডিএনএস প্রতিক্রিয়াতে সমস্ত 4 টি ক্ষেত্রের বিষয়বস্তু প্রদর্শন করে: প্রশ্ন, উত্তর, কর্তৃত্ব এবং অতিরিক্ত বিভাগ (প্লাস শিরোনামে পতাকা) এবং এটিতে আরও বিকল্প রয়েছে। hostঅন্যদিকে, আরও ব্যবহারকারী-বান্ধব আউটপুট ফর্ম্যাট রয়েছে।

যদি আপনার কোনও বিকল্পের প্রয়োজন হয় না যা কমান্ডগুলির মধ্যে একটি রয়েছে এবং অন্যগুলি না করে, বা তথ্যগুলির একটি অংশ যা তাদের মধ্যে একটি আউটপুট দেয় এবং অন্যরা তা না করে, তবে এটি পছন্দের বিষয়টিতে নেমে আসে।


2
যদি তারা নেটওয়ার্কের পক্ষ থেকে একই কাজ করে (প্রকৃত ক্যোয়ারী) আমি কীভাবে হোস্টটি ব্যবহার করার সময় খুঁজে পাচ্ছি না hostতবে ব্যবহার করার সময় সঠিক উত্তরটি পাওয়া যাবে dig? এমনকি যদি সার্ভারটি কোনও নির্দিষ্ট সেটিংস (পছন্দ বা দুর্ঘটনা দ্বারা) ব্যবহার করে কনফিগার করা থাকে তবে এটি অবশ্যই অনুরোধগুলিকে আলাদা করতে সক্ষম হবে।
jhabbott

নাঃ! আপনার প্রশ্নে আপনি যে দুটি আদেশ দিয়েছেন তা সমান এবং তাদের একই উত্তর উত্পন্ন করা উচিত! আপনি কি নিশ্চিত যে অতিরিক্ত বা কর্তৃত্ব বিভাগে digকোনও সত্যিকারের উত্তর দিয়েছে এবং কোনও রেকর্ড নয়? হিসাবে Renan প্রস্তাব দেওয়া, এটা আউটপুট দেখানোর জন্য সাহায্য করতে পারে।
সেলেদা

ঠিক আছে, আমি কিছু উদাহরণ আউটপুট যোগ করেছি। আমি ঘরে এবং কর্মক্ষেত্রে একই ফল পাই। যখন আমি কোনও নাম সার্ভার ব্যবহার করার জন্য নির্দিষ্ট না করি এবং আমার আইএসপি কোয়েরিটি পরিচালনা করে, hostঠিকঠাক কাজ করে। দয়া করে নিজে চেষ্টা করে দেখুন এবং ফলাফলগুলি আমাকে জানান।
jhabbott

কেবল এটি পর্যালোচনা করে - আইএসপি অবশেষে আমাকে বলেছিল যে তাদের সার্ভারটি সরাসরি ক্লায়েন্টের প্রশ্নের উত্তর না দেওয়ার জন্য কনফিগার করা হয়েছিল, কেবল অন্য নামসারীদের কাছে তথ্য স্থানান্তর জিজ্ঞাসা করার জন্য - কি digকোনও নামসার্কারের মতো প্রশ্নটি আলাদাভাবে উপস্থাপন করবে?
jhabbott

1
ডিগ নিয়মিত প্রশ্ন (এএক্সএফআর ব্যতীত সকল প্রকারের) এবং জোন স্থানান্তর (টাইপ এএক্সএফআর) উভয়ই করতে পারে তবে ডিএনএস অপারেটররা সাধারণত জোন ট্রান্সফারকে অনুমোদিত দাসগুলিতে সীমাবদ্ধ করে যাতে আপনি সম্ভবত নিয়মিত প্রশ্ন ব্যবহার করতে চান
সেলেডা

0

আপনি যদি অ-এফকিউডিএন হোস্টনামটি ব্যবহার করেন তবে ফলাফলগুলি ভিন্ন হতে পারে কারণ hostঅনুসন্ধান ডোমেনগুলি এতে ব্যবহার করা হবে resolv.conf, যেখানে digডিফল্টরূপে নয়।

আপনি +searchযদি বিকল্পটি ব্যবহার করতে চান (বা এটিতে যুক্ত করতে চান ) আপনাকে বিকল্পটি digব্যবহার resolv.confকরতে হবে ~/.digrc

উদাহরণ স্বরূপ:

$ host foo
foo.myfqdn.com has address 10.1.2.3

$ dig +short foo
# (no result)

$ dig +short +search foo
10.1.2.3
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.