এই বিষয়টিতে উত্সর্গীকৃত একটি আরএফসি রয়েছে: আরএফসি 2308 - ডিএনএস কোয়েরি (ডিএনএস এনসিএসিএইচ) এর নেতিবাচক ক্যাচিং ।
পড়ার জন্য প্রাসঙ্গিক বিভাগটি 5 - নেতিবাচক উত্তরগুলি ক্যাচিংয়ে লিখিত হয়েছে:
সাধারণ উত্তরের মতো নেতিবাচক উত্তরগুলির বেঁচে থাকার সময় থাকে (টিটিএল)। যে উত্তর বিভাগে এই টিটিএল প্রয়োগ করা যেতে পারে তার কোনও রেকর্ড নেই বলেই টিটিএলকে অন্য পদ্ধতিতে বহন করতে হবে। উত্তরের কর্তৃত্ব বিভাগে অঞ্চল থেকে এসওএ রেকর্ডটি অন্তর্ভুক্ত করে এটি করা হয়। যখন অনুমোদনশীল সার্ভার এই রেকর্ডটি তৈরি করে তখন এর টিটিএল সর্বনিম্ন SOA.MINIMUM ক্ষেত্র এবং SOA এর টিটিএল থেকে নেওয়া হয়। এই টিটিএল হ'ল সাধারণ ক্যাশেড উত্তরের অনুরূপভাবে এবং শূন্যের (0) পৌঁছানোর পরে ক্যাশেড নেতিবাচক উত্তরটি আবার ব্যবহার করা উচিত নয়।
প্রথমে SOA.MINIMUM
আরএফসিতে বর্ণিত এবং এসওএ টিটিএল সনাক্ত করতে দিন । টিটিএল হল রেকর্ড টাইপের আগের নম্বর IN
( 900
নীচের উদাহরণে সেকেন্ড)। যদিও সর্বনিম্ন রেকর্ডের সর্বশেষ ক্ষেত্র ( 86400
নীচের উদাহরণে সেকেন্ড)।
$ dig serverfault.com soa @ns-1135.awsdns-13.org +noall +answer +multiline
; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> serverfault.com soa @ns-1135.awsdns-13.org +noall +answer +multiline
;; global options: +cmd
serverfault.com. 900 IN SOA ns-1135.awsdns-13.org. awsdns-hostmaster.amazon.com. (
1 ; serial
7200 ; refresh (2 hours)
900 ; retry (15 minutes)
1209600 ; expire (2 weeks)
86400 ; minimum (1 day)
)
এখন কয়েকটি উদাহরণ দেখে নেওয়া যাক, serverfault.com
জোনটি বর্ণনামূলক কারণ এটিতে দুটি পৃথক সরবরাহকারীর পক্ষ থেকে অনুমোদনযোগ্য সার্ভার রয়েছে যা আলাদাভাবে কনফিগার করা হয়েছে।
serverfault.com
অঞ্চলটির জন্য অনুমোদনযোগ্য নেমসার্ভারগুলি সন্ধান করুন :
$ host -t ns serverfault.com
serverfault.com name server ns-860.awsdns-43.net.
serverfault.com name server ns-1135.awsdns-13.org.
serverfault.com name server ns-cloud-c1.googledomains.com.
serverfault.com name server ns-cloud-c2.googledomains.com.
তারপরে একটি অ্যাউস নেমসারভার ব্যবহার করে এসওএ রেকর্ডটি পরীক্ষা করুন:
$ dig serverfault.com soa @ns-1135.awsdns-13.org | grep 'ANSWER SECTION' -A 1
;; ANSWER SECTION:
serverfault.com. 900 IN SOA ns-1135.awsdns-13.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
এর থেকে আমরা দেখতে পাচ্ছি যে এসওএ রেকর্ডের 900
টিটিএল সেকেন্ডে এবং নেতিবাচক টিটিএল মান 86400
সেকেন্ড। এর SOA টিটিএল মান 900
কম তাই আমরা আশা করি এই মানটি ব্যবহার করা হবে।
এখন যদি আমরা অস্তিত্বহীন ডোমেনের জন্য কোনও অনুমোদিত সার্ভারকে জিজ্ঞাসা করি তবে আমাদের কোনও উত্তর ছাড়াই এবং কর্তৃত্ব বিভাগে এসওএ রেকর্ড সহ একটি প্রতিক্রিয়া পাওয়া উচিত:
$ dig nxdomain.serverfault.com @ns-1135.awsdns-13.org
; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> nxdomain.serverfault.com @ns-1135.awsdns-13.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 51948
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;nxdomain.serverfault.com. IN A
;; AUTHORITY SECTION:
serverfault.com. 900 IN SOA ns-1135.awsdns-13.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
;; Query time: 125 msec
;; SERVER: 205.251.196.111#53(205.251.196.111)
;; WHEN: Tue Aug 20 15:49:47 NZST 2019
;; MSG SIZE rcvd: 135
যখন কোনও পুনরাবৃত্ত (ক্যাশিং) সমাধানকারী এই উত্তরটি গ্রহণ করে এটি এসওএ রেকর্ডটিকে পার্স করবে AUTHORITY SECTION
এবং এই রেকর্ডটির টিটিএল ব্যবহার করবে এটি নির্ধারণ করতে হবে যে এটি কতক্ষণ নেতিবাচক ফলাফলকে ক্যাশে করতে হবে (এই ক্ষেত্রে 900
সেকেন্ডে)।
এখন গুগল নেমসারভারের সাহায্যে একই পদ্ধতিটি অনুসরণ করা যাক:
$ dig serverfault.com soa @ns-cloud-c2.googledomains.com | grep 'ANSWER SECTION' -A 1
;; ANSWER SECTION:
serverfault.com. 21600 IN SOA ns-cloud-c1.googledomains.com. cloud-dns-hostmaster.google.com. 1 21600 3600 259200 300
আপনি দেখতে পারেন যে গুগল নেমসার্ভারের এসওএ টিটিএল এবং নেতিবাচক টিটিএল মান উভয়ের জন্য আলাদা আলাদা মান রয়েছে। এই ক্ষেত্রে নেতিবাচক TTL এর 300
এর এসওএ যুগ্মভাবে TTL এর চেয়ে কম 21600
। সুতরাং AUTHORITY SECTION
কোনও NXDOMAIN
প্রতিক্রিয়া ফিরিয়ে দেওয়ার সময় গুগল সার্ভারের এসওএ রেকর্ডের মধ্যে নিম্ন মানের ব্যবহার করা উচিত :
$ dig nxdomain.serverfault.com @ns-cloud-c2.googledomains.com
; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> nxdomain.serverfault.com @ns-cloud-c2.googledomains.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 25920
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;nxdomain.serverfault.com. IN A
;; AUTHORITY SECTION:
serverfault.com. 300 IN SOA ns-cloud-c1.googledomains.com. cloud-dns-hostmaster.google.com. 1 21600 3600 259200 300
;; Query time: 130 msec
;; SERVER: 216.239.34.108#53(216.239.34.108)
;; WHEN: Tue Aug 20 16:05:24 NZST 2019
;; MSG SIZE rcvd: 143
প্রত্যাশিত হিসাবে এসওএ যুগ্মভাবে রেকর্ড TTL এর NXDOMAIN
প্রতিক্রিয়া 300
সেকেন্ড।
উপরের উদাহরণটিও দেখায় যে একই ক্যোয়ারির বিভিন্ন উত্তর পাওয়া কতটা সহজ। কোনও পৃথক ক্যাশে রিসলভারটি যে উত্তরটি ব্যবহার করে শেষ হয় তা নীচে যা প্রামাণিক নামসারকে জিজ্ঞাসা করা হয়েছিল।
আমার পরীক্ষায় আমি আরও লক্ষ্য করেছি যে কিছু পুনরাবৃত্ত (ক্যাশিং) সমাধানকারীরা AUTHORITY SECTION
পরবর্তী অনুরোধগুলির জন্য হ্রাসমান টিটিএল সহ এসওএ রেকর্ড সহ কোনও ফেরত দেয় না অন্যরা তা করে।
উদাহরণস্বরূপ ক্লাউডফ্লেয়ার রিসলভার দেয় (হ্রাসমান টিটিএল মানটি নোট করুন):
$ dig nxdomain.serverfault.com @1.1.1.1 | grep 'AUTHORITY SECTION' -A 1
;; AUTHORITY SECTION:
serverfault.com. 674 IN SOA ns-1135.awsdns-13.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
$ dig nxdomain.serverfault.com @1.1.1.1 | grep 'AUTHORITY SECTION' -A 1
;; AUTHORITY SECTION:
serverfault.com. 668 IN SOA ns-1135.awsdns-13.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
যখন কোনও এডাব্লুএস ভিপিসিতে ডিফল্ট সমাধানকারী কেবল প্রথম অনুরোধে একটি কর্তৃপক্ষের বিভাগে সাড়া দেবে:
$ dig nxdomain.serverfault.com @169.254.169.253 | grep 'AUTHORITY SECTION' -A 1
;; AUTHORITY SECTION:
serverfault.com. 300 IN SOA ns-cloud-c1.googledomains.com. cloud-dns-hostmaster.google.com. 1 21600 3600 259200 300
$ dig nxdomain.serverfault.com @169.254.169.253 | grep 'AUTHORITY SECTION' -A 1 | wc -l
0
দ্রষ্টব্য: এই উত্তরটি উত্তরের আচরণকে চিহ্নিত করে NXDOMAIN
।
শব্দকোষ: