ক্যাশে ব্যবহার না করে সমাধানের জন্য জোর করে খনন করুন


90

আমি ভাবছি যে কোনও ডিএনএস সার্ভার এবং বাইপাস ক্যাচিংয়ের (সাথে dig) ক্যোয়ার করার কোনও উপায় আছে কিনা । প্রায়শই আমি ডিএনএস সার্ভারে একটি অঞ্চল পরিবর্তন করি এবং আমি আমার ওয়ার্কস্টেশন থেকে এটি সঠিকভাবে সমাধান করে কিনা তা পরীক্ষা করে দেখতে চাই। তবে যেহেতু সার্ভার অনুরোধগুলি সমাধান করেছে তাই আমি প্রায়শই পুরানোগুলি পাই। সার্ভার পুনরায় চালু বা লোড করা সত্যিই খুব সুন্দর কিছু নয়।

উত্তর:


119

@নির্দিষ্ট সার্ভার থেকে ডোমেনটি সন্ধান করতে আপনি সিনট্যাক্সটি ব্যবহার করতে পারেন । ডিএনএস সার্ভার যদি সেই ডোমেনের পক্ষে অনুমোদনযোগ্য হয় তবে প্রতিক্রিয়া ক্যাশেড ফলাফল হবে না।

dig @ns1.example.com example.com

আপনি NSকোনও ডোমেনের জন্য রেকর্ড চেয়ে জিজ্ঞাসাবাদী সার্ভারগুলি খুঁজে পেতে পারেন :

dig example.com NS

2
ওহ ঠিক আছে. হ্যাঁ আমি @ সিনট্যাক্সের সাথে পরিচিত ছিলাম, তবে পরিবর্তে অথোরিটিভ সার্ভারটি জিজ্ঞাসা করার ধারণা নেই। ধন্যবাদ!
ড্যানিয়েল

3
পার্শ্ব দ্রষ্টব্য: আপনি যখন কেচিং সার্ভারের কী প্রতিক্রিয়া পাবেন তা দেখার চেষ্টা করছেন, +norecurseসেই ক্ষেত্রে বাঞ্ছনীয়। +recurseডিফল্টরূপে চালু থাকে কোনও ডিএনএস সার্ভার আপনার প্রশ্নের সম্পূর্ণ ব্যাখ্যা করার উপায়টি মাঝে মধ্যে বদলে দেবে।
অ্যান্ড্রু বি

4
আপনি যদি কর্তৃপক্ষের সার্ভারগুলির পরিবর্তনের জন্য অপেক্ষা করছেন?
গুয়াকা

@ ক্যাস্পারসৌরেন আপনি কি প্রামাণিক সার্ভারগুলিতে এনএস রেকর্ড বা পিতা-মাতার কাছে আঠালো রেকর্ড সম্পর্কে কথা বলছেন? আপনি পিতামাতাকে খুঁজে পেতে পারেন +traceতবে ক্যাশে থেকে সাবধান হন। নেমসার্ভারগুলি পরিবর্তনের জন্য অপেক্ষা করার সময় ক্যাশে কীভাবে আপনাকে চালিত করতে পারে তার একটি দুর্দান্ত ব্যাখ্যা লিখেছিলেন অ্যান্ড্রু বি।
লাদাদাদাদা

3
আপনি গুগল ডিএনএসেও পরীক্ষা করতে পারেন dig @8.8.8.8 example.com। রেকর্ডগুলি সেখানে আরও দ্রুত উপস্থিত হয়।
মেশিনাডিক্ট

25

নেমসার্ভারের ক্যাশে ব্যবহার না করে প্রতিক্রিয়া জানাতে বাধ্য করার কোনও মানক, নির্ভরযোগ্য উপায় নেই। খনন নিজেই কোনও নেমসার্ভার নয়, এটি কেবলমাত্র একটি সরঞ্জাম যা আপনার ডিভাইসগুলিকে স্ট্যান্ডার্ড ডিএনএস অনুরোধগুলি ব্যবহার করে আপনি যে কোনও নেমসারভারগুলি কনফিগার করেছেন to সেখানে হয় "পুনরাবৃত্তির ব্যবহার করবেন না" বলে একটি উপায়, কিন্তু এই নয় আপনি যা চান তা - এটি কেবল বৃহত্তর ইন্টারনেটে ডোমেইন নাম কোন লুক-বাধা প্রাপ্ত হবে।

আপনি যদি কোনও নেমসারভারকে এর ক্যাশে থেকে প্রতিক্রিয়া জানাতে বাধা দিতে চেয়েছিলেন, আপনাকে নেমসার্ভারে কনফিগারেশন পরিবর্তন করে তা অর্জন করতে হবে , তবে আপনি যদি নেমসারভারটি নিয়ন্ত্রণ না করেন, আপনি এটি করতে পারবেন না।

তবে, আপনি কনফিগার করা নেমসার্ভারগুলি বাইপাস করতে খনন করতে পারেন এবং এর নিজস্ব পুনরাবৃত্তির অনুরোধটি সম্পাদন করতে পারেন যা মূল সার্ভারে ফিরে যায়। এটি করতে, +traceবিকল্পটি ব্যবহার করুন ।

dig example.com +trace

অনুশীলনে যেহেতু এটি কেবল আপনার স্থানীয় ক্যাশে সমাধানের পরিবর্তে অনুমোদনযোগ্য সার্ভারগুলিকে জিজ্ঞাসা করবে, সেই সার্ভারগুলি অভ্যন্তরীণ ক্যাচিং নিয়োগ দিলেও ফলাফল বাসি হবে না। ব্যবহারের অতিরিক্ত সুবিধা +traceহ'ল আপনি পথটির সাথে তৈরি পৃথক সমস্ত অনুরোধগুলি দেখতে পান।


10
ব্যবহার করে +norecurseকেবল নেমসার্ভারকে এটি থাকা সমস্ত তথ্য (ক্যাশেড তথ্য সহ, যদি থাকে) ফিরিয়ে দিতে বলে, যাতে এটি সঠিক নয়। +traceকাজ করবে কারণ এটি কোনও অনুমোদিত সার্ভারে পুনরাবৃত্তি চেইনটি অনুসরণ করবে।
রমন

1
দ্রষ্টব্য যে আমি +norecurseপ্রস্তাবটি সরানোর জন্য এই উত্তরটি পরিবর্তন করেছি কারণ এটি সমস্যাটিকে বিভ্রান্ত করেছে।
থোমাসরুটটার

13

এখানে লক্ষণীয় কিছু গুরুত্বপূর্ণ, যা আমি লক্ষ্য করি যে অনেক লোকের মধ্যে এই সম্পর্কে কথা বলার সময় কখনও অন্তর্ভুক্ত হয় না তা +traceহ'ল +traceডিগ ক্লায়েন্টটি ট্রেস করবে তা আপনার কনফিগারেশনে উল্লিখিত ডিএনএস সার্ভার নয় (/etc/resolv.conf)। সুতরাং, অন্য কথায়, আপনার ডিগ ক্লায়েন্টটি পুনরাবৃত্ত ডিএনএস সার্ভারের মতো কাজ করবে, আপনার এটি জিজ্ঞাসা করা উচিত। তবে - গুরুত্বপূর্ণ, আপনি একটি ক্যাশে পান নি।

আরও বিশদ - সুতরাং যদি আপনি ইতিমধ্যে mxব্যবহার করে একটি রেকর্ড চেয়েছিলেন dig -t mx example.comএবং আপনার /etc/resolv.conf 8.8.8.8 হয় তবে জোনটির টিটিএল এর ভিতরে কিছু করা ক্যাশেড ফলাফলটি ফিরিয়ে দেবে। একটি উপায়ে, আপনি যদি নিজের জোন এবং গুগল কীভাবে এটি সম্পর্কে কিছু সন্ধান করে থাকেন তবে আপনি আপনার জোনটির টিটিএল এর জন্য গুগলের সাথে আপনার ডিএনএস ফলাফলকে বিষাক্ত করে তুলেছেন। আপনার একটি সংক্ষিপ্ত টিটিএল থাকলে খারাপ নয়, যদি আপনার 1 ঘণ্টা থাকে তবে কিছুটা আবর্জনা।

সুতরাং, যখন +traceআপনি প্রথমবারের জন্য গুগলকে জিজ্ঞাসা করছেন এবং এর কোনও ক্যাশে প্রবেশ নেই, তবে আপনাকে কী দেখতে হবে তা দেখতে আপনাকে সহায়তা করবে, এটি আপনাকে একটি ভুল ধারণা দিতে পারে যে গুগল সবাইকে আপনার +traceফলাফল হিসাবে একই রকম বলবে , কোনটি এটি আপনি যদি আগে জিজ্ঞাসা করেছিলেন এবং একটি দীর্ঘ টিটিএল রাখবেন না, কারণ এটি ক্যাশে থেকে টিটিএলটির মেয়াদ শেষ না হওয়া অবধি পরিবেশন করবে - তারপরে এটি আপনার +traceপ্রকাশিত হিসাবে একই রকম কাজ করবে ।

খুব বেশি আইএমও থাকতে পারে না।


ডিগের নিজস্ব ক্যাশে আছে বা ওএস ক্যাশে ব্যবহার করে?
সিএমসিডিগ্রাগনকাই

ডিগের ক্যাশে নেই। যদিও এটি প্রবাহিত নেমসার্ভারটি ব্যবহার করে তবে তা এতে উপকৃত হয়।
থোমাস্রুটার

dig mydomain.com +traceশুধু আমাকে থেকে resolvdস্টাব ফলাফল প্রদান 127.0.0.53Github.com
জেমস বওয়ারি

ব্যবহার করার সময় +traceখনন শুরু ট্রেস নিদিষ্ট নেমসার্ভারটি ব্যবহার (যেমন, 8.8.8.8 আপনি কি কনফিগার করেছেন যদি) প্রথম লুকআপ (রুট জোন) জন্য, কিন্তু যে পরে এটি আরও প্রশ্নের ফিরে নেমসার্ভার ব্যবহার করে। সুতরাং আপনার কনফিগার করা নেমসার্ভারটি যদি কাজ না করে বা রুট নেমসার্ভারগুলির জন্য কোনও প্রশ্নের সঠিকভাবে প্রতিক্রিয়া না জানায় তবে আপনার সমস্যা হতে পারে (উপরের মতামত হিসাবে)।
থোমাস্রুটার

2

এই ব্যাশটি প্রথম তালিকাভুক্ত নাম সার্ভার থেকে উদাহরণ.কমের ডিএনএস এন্ট্রিগুলি খনন করবে:

dig @$(dig @8.8.8.8 example.com ns +short | head -n1) example.com ANY +noall +answer
  • অভ্যন্তরীণ ডিগটি গুগলের ডিএনএস (8.8.8.8) থেকে উদাহরণ ডটকমের নেমসার্ভারগুলি জিজ্ঞাসা করে।
  • বহিরাগত ডিগের প্রশ্নগুলি উদাহরণ.কমের প্রথম নাম সার্ভার।

এখানে .zshrc (এবং সম্ভবত .brcrc) এর একটি উপাধি হিসাবে একই:

# e.g. `checkdns google.com`
checkdns () { dig @$(dig @8.8.8.8 $1 ns +short | head -n1) $1 ANY +noall +answer; ping -c1 $1; }

এখানে / এর জন্য আউটপুট দেওয়া হচ্ছে:

☀  checkdns slashdot.org                                                                                                dev
-->Server DNS Query

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @ns1.dnsmadeeasy.com. slashdot.org ANY +noall +answer
; (2 servers found)
;; global options: +cmd
slashdot.org.       21600   IN  SOA ns0.dnsmadeeasy.com. hostmaster.slashdotmedia.com. 2016045603 14400 600 604800 300
slashdot.org.       86400   IN  NS  ns3.dnsmadeeasy.com.
slashdot.org.       86400   IN  NS  ns4.dnsmadeeasy.com.
slashdot.org.       86400   IN  NS  ns0.dnsmadeeasy.com.
slashdot.org.       86400   IN  NS  ns2.dnsmadeeasy.com.
slashdot.org.       86400   IN  NS  ns1.dnsmadeeasy.com.
slashdot.org.       3600    IN  MX  10 mx.sourceforge.net.
slashdot.org.       3600    IN  TXT "google-site-verification=mwj5KfwLNG8eetH4m5w1VEUAzUlHotrNwnprxNQN5Io"
slashdot.org.       3600    IN  TXT "v=spf1 include:servers.mcsv.net ip4:216.34.181.51 ?all"
slashdot.org.       300 IN  A   216.34.181.45
-->Local DNS Query
PING slashdot.org (216.34.181.45) 56(84) bytes of data.
64 bytes from slashdot.org (216.34.181.45): icmp_seq=1 ttl=242 time=33.0 ms

--- slashdot.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 33.026/33.026/33.026/0.000 ms

এই সমাধানটি মনে রাখা অবৈধ হতে যথেষ্ট জটিল, তবে সমস্যাটি ঠিক না করার পক্ষে যথেষ্ট সহজ। digআমার বিশেষত্ব নয় - উন্নতিগুলি স্বাগত :-)

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