Skip to content

Fetch your public IP address from external sources with Python.

License

Notifications You must be signed in to change notification settings

asweigart/whatismyip

Repository files navigation

whatismyip

Fetch your public IP address from external sources with Python.

Install with pip install whatismyip

Example:

>>> import whatismyip
>>> whatismyip.amionline()
True
>>> whatismyip.whatismyip()
'69.89.31.226'
>>> whatismyip.whatismyipv4()
'69.89.31.226'
>>> whatismyip.whatismyipv6()
'2345:0425:2CA1:0000:0000:0567:5673:23b5'
>>> whatismyip.whatismylocalip()  # Returns local IPs of all network cards.
('192.168.189.1', '192.168.220.1', '192.168.56.1', '192.168.1.201')
>>> whatismyip.whatismyhostname()
'GIBSON'

On average these ip-finding functions take about half a second to run. Your results may vary.

Because whatismyip relies on online services, you always want to update to the latest version. This module uses calendar versioning, such as version 2024.2.20 for the version released on February 20, 2024.

How Does whatismyip Work?

There are several public STUN (Session Traversal Utilities for NAT) servers (listed in the whatismip.STUN_SERVERS variable, listed in order of response speed) that return your IP address (as it appears to them). There are also several public websites that you can view in your browser (listed in the whatismyip.IP4_WEBSITES, whatismyip.IP6_WEBSITES, and whatismyip.IP_WEBSITES):

The whatismyip module does not have any dependencies outside the Python standard library. It does not require Requests to be installed.

Support

If you find this project helpful and would like to support its development, consider donating to its creator on Patreon.

About

Fetch your public IP address from external sources with Python.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages