3 """Get your public IP address from a UDP socket connection
6 import socket as _socket
9 def get_my_ip(host, port=80):
10 s = _socket.socket(_socket.AF_INET, _socket.SOCK_DGRAM)
12 s.connect((host, port))
13 return s.getsockname()[0]
18 if __name__ == '__main__':
19 import argparse as _argparse
21 parser = _argparse.ArgumentParser(description=__doc__)
23 'host', default='software-carpentry.org', nargs='?')
25 'port', default=80, type=int, nargs='?')
27 args = parser.parse_args()
29 print(get_my_ip(host=args.host, port=args.port))