मैं बाहरी DNS लुकअप का बेंचमार्क प्रदर्शन कैसे करूं?


14

मैं Google के सार्वजनिक DNS सर्वरों को अपने नेटवर्क के लिए बाहरी DNS के रूप में मान रहा हूं। वर्तमान में मैं अपने आईएसपी से डीएनएस सर्वर का उपयोग कर रहा हूं। मैंने पूर्व में भी OpenDNS पर विचार किया है, लेकिन अंततः कूदने का फैसला नहीं किया।

मैं यह मान लेना चाहता हूं कि संबंधित सर्वर कितनी जल्दी हमारे DNS अनुरोधों को पूरा करने में सक्षम हैं। मुझे nslookup में कुछ भी नहीं दिखता है जो मदद करेगा।

मैं बाहरी रूप से प्रदान किए गए DNS के लिए गोल-यात्रा समय का परीक्षण कैसे कर सकता हूं?

जवाबों:


5

DNS क्वेरी \ प्रतिक्रिया समय को ट्रैक करने के लिए आप एक पैकेट कैप्चर प्रोग्राम (DNS के लिए फ़िल्टरिंग) का उपयोग कर सकते हैं। आप इसे अपनी मशीन पर या अपने आंतरिक DNS सर्वर (यदि आपके पास एक है) पर चला सकते हैं। सभी चीजें कमोबेश बराबर होती हैं, इससे आपको यह अंदाजा हो सकता है कि आपके आईएसपी की तुलना में Google DNS कितनी जल्दी है।


5
Wireshark का DNS डिसेक्टर ट्रैकिंग / रिस्पॉन्स ट्रैकिंग करता है। प्रतिक्रिया समय खोजने के लिए "dns.time" डिस्प्ले फ़िल्टर का उपयोग किया जा सकता है।
गेराल्ड कॉम्स

40

आप बस digऔर कर सकते हैंgrep

$ dig @8.8.8.8   www.rimuhosting.com | grep "Query time:"
;; Query time: 15 msec
$ dig @4.2.2.1   www.rimuhosting.com | grep "Query time:"
;; Query time: 289 msec

13

जीआरसी के डोमेन नाम स्पीड बेंचमार्क का उपयोग करें ।


मैं इस उपकरण की जाँच ... यह चट्टानों!
माइक एल

2
मैंने Google के नाम-पत्र को चलाने के बाद जीआरसी के बेंचमार्क की कोशिश की। Google का कहना है कि यह 8.8.4.4 का है, अन्य की तुलना में 21.1% अधिक तेज था। हालांकि जीआरसी की अनुकूलित सूची w / जोड़ा गया 8.8.4.4 ने दिखाया कि Google, Comcast द्वारा प्रदान की गई मेरी वर्तमान DNS की तुलना में सबसे धीमी और केवल थोड़ी तेज है। सबसे तेज सभी स्तर 3 संचार से थे। मुझे अब Google पर GRC के DNS बेंचमार्क पर भरोसा है। और जीआरसी विधानसभा में लिखा जाता है और एक एकल 184k फ़ाइल से चलता है। प्रभावशाली!
ब्रायन बोटराइट

यदि आप यूएसए में नहीं हैं तो जीआरसी से सावधान रहें। यह कई (किसी भी?) गैर-यूएसए होस्ट किए गए सर्वर का परीक्षण करने के लिए प्रतीत नहीं होता है।
निक

3

मैंने namebench - Google के ओपन सोर्स DNS बेंचमार्क यूटिलिटी पर भी नज़र डाली । यह बहुत व्यापक था।


लिंक समाप्त हो रहा है :-(
पोल हॉलन

नामबेंच का संस्करण (v1.3) अभी बहुत पुराना है। GitHub पर एक अद्यतन (v2) रिपॉजिटरी है: github.com/google/namebench जो DNSSEC, CDN बेंचमार्किंग आदि का समर्थन करता है
पैट्रिक


2

फ़ायरफ़ॉक्स और IE के लिए फायरबग प्लगइन में एक "नेट" टैब है जो आपको हर फ़ाइल अनुरोध के लिए लोड समय का चित्रमय प्रतिनिधित्व देता है।

यह DNS लुकअप सहित गतिविधि में टूट जाता है, जो हरे रंग में दिखाए जाते हैं।


2

सरल खोल स्क्रिप्ट qtest.sh का उपयोग किया जा सकता है:

% qtest -n3 "A.gtld-servers.net" 172.19.1.1 62.4.16.70 62.4.17.69 208.67.222.222 208.67.220.220 156.154.70.1 156.154.71.1  
3 172.19.1.1/172.19.1.1
49 62.4.17.69/62.4.17.69
61 208.67.222.222/208.67.222.222

यहाँ, 172.19.1.1एक स्थानीय रिज़ॉल्वर, तेजी से, इसके बाद ISP रिवाल्वर, फिर OpenDNS है।


2

DNS सर्वर से कनेक्शन का मूल्यांकन करने के लिए मैंने बहुत अच्छी स्क्रिप्ट लिखी है:

cat >test_dns_list_speed.sh
#!/usr/bin/env ksh
site="www.google.com"
IPfile="$1"
samples=$2

if [ ! -f "$IPfile" ] || ! echo "$samples"|egrep -q "[0-9]+" ; then
  echo "test_dns_list_speed.sh <file-ip-list> <samples>"
  echo "<file-ip-list>       newline separated list of DNS server IP adresses"
  echo "<samples>            how many DNS resolution samples to take"
  echo "PURPOSE:"
  echo "          collect statistics about response times from list of DNS servers"
  exit 1
fi

typeset -i i

while [ $i -lt $samples ]; do
  i=$i+1
  for IP in `cat $IPfile`; do
    time=`dig @$IP $site| awk '/Query time:/ {print " "$4}'`
    IPtrans=`echo $IP|tr \. _`
    eval `echo result$IPtrans=\"\\$result$IPtrans$time\"`
  done
done

for IP in `cat $IPfile`; do
  IPtrans=`echo $IP|tr \. _`
  printf "%-15s " "$IP"; echo -e `eval "echo \\$result$IPtrans"`|tr ' ' "\n"|awk '/.+/ {rt=$1; rec=rec+1; total=total+rt; if (minn>rt || minn==0) {minn=rt}; if (maxx<rt) {maxx=rt}; }
             END{ if (rec==0) {ave=0} else {ave=total/rec}; printf "average %5i     min %5i     max %5i ms %2i responses\n", ave,minn,maxx,rec}'
done

./test_dns_list_speed server_list 20
202.93.142.10   average   949     min   523     max  2229 ms 20 responses
202.93.142.20   average   897     min   515     max  2017 ms 20 responses
208.67.222.222  average  1235     min   530     max  3362 ms 20 responses
8.8.8.8         average   759     min   529     max  1624 ms 20 responses

1

आप यह जानने के लिए पिंग का उपयोग कर सकते हैं कि एक पैकेट को अपने सर्वर और DNS सर्वर के बीच आगे और पीछे जाने में कितना समय लगेगा। एक सामान्य नियम के रूप में: जो काम करता है उसे कभी नहीं बदलें।

OpenDNS के लिए एक नुकसान यह है कि जो डोमेन मौजूद नहीं हैं, वे OpenDNS के खोज पृष्ठ की ओर इशारा करते हुए A रिकॉर्ड के साथ प्रतिक्रिया कर सकते हैं, क्योंकि वे ऐसा करते हैं। Google वर्तमान में ऐसा नहीं करता है, लेकिन यह मान लेना मूर्खतापूर्ण होगा कि वे केवल DNS रिसॉल्वर प्रदान कर रहे हैं ताकि इससे कुछ हासिल न हो।


यदि मैं एक उत्तर को विभाजित कर सकता था, तो मुझे करना होगा। मुझे इसकी सरलता के लिए पिंग टेस्ट पसंद आया। मैं इसे उन सभी के खिलाफ चला सकता था, फिर औसत देखें। यहां, मैं पैकेट के लिए राउंड ट्रिप के अलावा क्वेरी के लिए प्रतिक्रिया समय देखना चाहता था, इसलिए मैंने पैकेट कैप्चर का विकल्प चुना। इसे स्थापित करने और परीक्षण करने के लिए और अधिक काम, लेकिन बाहरी सर्वर के सही प्रदर्शन के लिए अधिक सटीक है। धन्यवाद!
माइक एल

1
पिंग का उपयोग करने के लिए बुरा विचार। सभी सर्वर पिंग का जवाब नहीं देते हैं और शून्य गारंटी है कि प्रतिक्रिया समय DNS के साथ और ICMP के साथ समान होगा।
bortzmeyer

0

dnsevaldnsdiag से विंडोज लिनक्स और मैक पर एक आकर्षण की तरह काम करता है। (पुराने नामबेंच की तुलना में बेहतर) जीथब पर डाउनलोड करें

इसका उपयोग करने के लिए, पहले एक टेक्स्ट फ़ाइल लिखें जिसे प्रत्येक DNS आप अपने आईपी एड्रेस के साथ एक लाइन का परीक्षण करना चाहते हैं mylist.txt:

8.8.8.8
192.168.178.1

और फिर चला

./dnseval -f mylist.txt yahoo.com     # latency for cached sites
./dnseval -m -f mylist.txt yahoo.com  # latency for sites not in cache

हालांकि यह सर्वरों के उस कैश आकार का निरीक्षण नहीं करता है, लेकिन यह बहुत आसान और तेज़ दृष्टिकोण है और मुझे उम्मीद है कि यह वास्तविक दुनिया के प्रदर्शन के साथ अच्छी तरह से संबंध स्थापित करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.