Skip to content

Instantly share code, notes, and snippets.

@bboozzoo
Created September 19, 2016 18:44
Show Gist options
  • Save bboozzoo/e280aebf2586fce70a5f64f55287cc28 to your computer and use it in GitHub Desktop.
Save bboozzoo/e280aebf2586fce70a5f64f55287cc28 to your computer and use it in GitHub Desktop.
DNS test in Python
#!/usr/bin/python3
import argparse
import socket
import logging
import time
def parse_arguments():
parser = argparse.ArgumentParser(description='DNS test')
parser.add_argument('-w', '--wait', default=0.5,
help='wait time', type=float)
parser.add_argument('host', help='host to resolve')
return parser.parse_args()
def main(opts):
while True:
try:
res = socket.getaddrinfo(opts.host, None)
except socket.gaierror as err:
logging.error('resolver failed: %s', err)
else:
addrs = {v[4][0] for v in res}
logging.info('resolved to: %s', addrs)
time.sleep(opts.wait)
if __name__ == '__main__':
opts = parse_arguments()
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s - %(levelname)s - %(message)s')
main(opts)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment