Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import dns.resolver
- import time
- class DNS Tester:
- def __init__(self):
- self.dns_servers = []
- def add_dns_server(self, server, name):
- self.dns_servers.append({'server': server, 'name': name})
- def test_dns_servers(self):
- for dns_server in self.dns_servers:
- start_time = time.time()
- try:
- answers = dns.resolver.resolve('example.com', 'A', lifetime=5, nameserver=[dns_server['server']])
- end_time = time.time()
- response_time = (end_time - start_time) * 1000 # convert to milliseconds
- print(f"Testing DNS: {dns_server['server']}")
- print(f"DNS Server: {dns_server['server']}")
- print(f"Response Time: {response_time:.2f} ms")
- print(f"Server: {dns_server['name']}")
- print(f"Address: {dns_server['server']}\n")
- except Exception as e:
- print(f"Error testing DNS server {dns_server['server']}: {str(e)}\n")
- def main():
- tester = DNS_Tester()
- while True:
- print("1. Add DNS Server")
- print("2. Test DNS Servers")
- print("3. Exit")
- choice = input("Enter your choice: ")
- if choice == "1":
- server = input("Enter the IP address of the DNS server: ")
- name = input("Enter the name of the DNS server: ")
- tester.add_dns_server(server, name)
- elif choice == "2":
- tester.test_dns_servers()
- elif choice == "3":
- break
- else:
- print("Invalid choice. Please choose again.")
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement