What is my IP address?

3.144.17.45

Multiple command line HTTP clients are supported, including curl, httpie, GNU Wget and fetch.

CLI examples

$ curl srandista.valec.net
3.144.17.45

$ http -b srandista.valec.net
3.144.17.45

$ wget -qO- srandista.valec.net
3.144.17.45

$ fetch -qo- https://srandista.valec.net
3.144.17.45

$ bat -print=b srandista.valec.net/ip
3.144.17.45

Country lookup

$ http srandista.valec.net/country
United States

$ http srandista.valec.net/country-iso
US

City lookup

$ http srandista.valec.net/city
Seattle

JSON output

$ http srandista.valec.net/json
{
  "ip": "3.144.17.45",
  "ip_decimal": 59773229,
  "country": "United States",
  "country_eu": false,
  "country_iso": "US",
  "city": "Seattle",
  "hostname": "ec2-3-144-17-45.us-east-2.compute.amazonaws.com",
  "latitude": 47.6348,
  "longitude": -122.3451
}

Setting the Accept: application/json header also works as expected.

Plain output

Always returns the IP address including a trailing newline, regardless of user agent.

$ http srandista.valec.net/ip
3.144.17.45

Map

FAQ

How do I force IPv4 or IPv6 lookup?

As of 2018-07-25 it's no longer possible to force protocol using the v4 and v6 subdomains. IPv4 or IPv6 still can be forced by passing the appropiate flag to your client, e.g curl -4 or curl -6.

Is automated use of this service permitted?

Yes, as long as the rate limit is respected. The rate limit is in place to ensure a fair service for all.

Please limit automated requests to 1 request per minute. No guarantee is made for requests that exceed this limit. They may be rate-limited, with a 429 status code, or dropped entirely.

Can I run my own service?

Yes, the source code and documentation is available on GitHub.