Python - Tra cứu DNS
Địa chỉ IP khi được dịch sang các định dạng hoặc từ có thể đọc được của con người sẽ được gọi là tên miền. Việc dịch tên miền sang địa chỉ IP được quản lý bởi mô-đun pythondnspythonMô-đun này cũng cung cấp các phương pháp để tìm ra các bản ghi CNAME và MX.
Tìm bản ghi 'A'
Trong chương trình dưới đây, chúng tôi tìm địa chỉ ip cho miền bằng phương thức dns.resolver. Thông thường, ánh xạ này giữa địa chỉ IP và tên miền còn được gọi là bản ghi 'A'.
import dnspython as dns
import dns.resolver
result = dns.resolver.query('tutorialspoint.com', 'A')
for ipval in result:
print('IP', ipval.to_text())
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được kết quả sau:
('IP', u'94.130.81.180')
Tìm giá trị CNAME
Bản ghi CNAME còn được gọi là Bản ghi tên hợp quy là một loại bản ghi trong Hệ thống tên miền (DNS) được sử dụng để ánh xạ một tên miền làm bí danh cho một miền khác. Bản ghi CNAME luôn trỏ đến một tên miền khác và không bao giờ trực tiếp đến một địa chỉ IP. Trong phương thức truy vấn bên dưới, chúng tôi chỉ định tham số CNAME để nhận giá trị 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
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được kết quả sau:
cname target address: googlemail.l.google.com.
Tìm Bản ghi MX
Bản ghi MX còn được gọi là bản ghi trao đổi thư là một bản ghi tài nguyên trong Hệ thống tên miền chỉ định một máy chủ thư chịu trách nhiệm chấp nhận thư email thay mặt cho miền của người nhận. Nó cũng đặt giá trị ưu tiên được sử dụng để ưu tiên gửi thư nếu có nhiều máy chủ thư. Tương tự như các chương trình trên, chúng ta có thể tìm giá trị cho bản ghi MX bằng cách sử dụng tham số 'MX' trong phương thức truy vấn.
result = dns.resolver.query('mail.google.com', 'MX')
for exdata in result:
print ' MX Record:', exdata.exchange.text()
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được kết quả sau:
MX Record: ASPMX.L.GOOGLE.COM.
MX Record: ALT1.ASPMX.L.GOOGLE.COM.
MX Record: ALT2.ASPMX.L.GOOGLE.COM.
Trên đây là đầu ra mẫu và không phải là kết quả chính xác.