पायथन - डीएनएस लुक-अप
IP पते जब मानव पठनीय स्वरूपों या शब्दों में अनुवादित होते हैं तो डोमेन नाम के रूप में जाने जाते हैं। आईपी पते के लिए डोमेन नामों का अनुवाद अजगर मॉड्यूल द्वारा प्रबंधित किया जाता हैdnspython.यह मॉड्यूल CNAME और MX रिकॉर्ड का पता लगाने के लिए तरीके भी प्रदान करता है।
'ए' रिकॉर्ड ढूँढना
नीचे दिए गए प्रोग्राम में हम dns.resolver मेथड का उपयोग करके डोमेन के लिए आईपी एड्रेस ढूंढते हैं। आमतौर पर आईपी पते और डोमेन नाम के बीच की मैपिंग को 'ए' रिकॉर्ड के रूप में भी जाना जाता है।
import dnspython as dns
import dns.resolver
result = dns.resolver.query('tutorialspoint.com', 'A')
for ipval in result:
print('IP', ipval.to_text())
जब हम उपरोक्त कार्यक्रम चलाते हैं, तो हमें निम्न आउटपुट मिलते हैं -
('IP', u'94.130.81.180')
CNAME मान ढूँढना
एक CNAME रिकॉर्ड जिसे Canonical Name Record के रूप में भी जाना जाता है, डोमेन नेम सिस्टम (DNS) में एक प्रकार का रिकॉर्ड है जो किसी अन्य डोमेन के लिए डोमेन नाम को उपनाम के रूप में मैप करने के लिए उपयोग किया जाता है। CNAME रिकॉर्ड हमेशा किसी अन्य डोमेन नाम की ओर इशारा करते हैं और कभी भी सीधे IP पते पर नहीं। नीचे क्वेरी पद्धति में हम CNAME मान प्राप्त करने के लिए CNAME पैरामीटर निर्दिष्ट करते हैं।
import dnspython as dns
import dns.resolver
result = dns.resolver.query('mail.google.com', 'CNAME')
for cnameval in result:
print ' cname target address:', cnameval.target
जब हम उपरोक्त कार्यक्रम चलाते हैं, तो हमें निम्न आउटपुट मिलते हैं -
cname target address: googlemail.l.google.com.
एमएक्स रिकॉर्ड ढूँढना
एक एमएक्स रिकॉर्ड जिसे मेल एक्सचेंजर रिकॉर्ड भी कहा जाता है, डोमेन नेम सिस्टम में एक संसाधन रिकॉर्ड है जो प्राप्तकर्ता के डोमेन की ओर से ईमेल संदेशों को स्वीकार करने के लिए जिम्मेदार एक मेल सर्वर को निर्दिष्ट करता है। यदि मेल सर्वर उपलब्ध हैं, तो मेल डिलीवरी को प्राथमिकता देने के लिए उपयोग की जाने वाली वरीयता मान भी सेट करता है। उपरोक्त कार्यक्रमों के समान हम क्वेरी विधि में 'एमएक्स' पैरामीटर का उपयोग करके एमएक्स रिकॉर्ड के लिए मूल्य पा सकते हैं।
result = dns.resolver.query('mail.google.com', 'MX')
for exdata in result:
print ' MX Record:', exdata.exchange.text()
जब हम उपरोक्त कार्यक्रम चलाते हैं, तो हमें निम्न आउटपुट मिलते हैं -
MX Record: ASPMX.L.GOOGLE.COM.
MX Record: ALT1.ASPMX.L.GOOGLE.COM.
MX Record: ALT2.ASPMX.L.GOOGLE.COM.
ऊपर एक नमूना आउटपुट है और सटीक नहीं है।