this should be in a `try` `except` block? what happens when you try this while you're offline? `socket.gaierror`?