My Public IP Address is

Your public IP address location and detailed information

Base information

IP address
Version 4
Class A
Mapped from IPv4 to IPv6 ::ffff:


City Ashburn
Geonames ID 4744870
Postal Code 20149
Region subdivision Virginia
Geonames ID 6254928
ISO code VA
Country United States
Geonames ID 6252001
ISO code US
Continent North America
Geonames ID 6255149
ISO code NA
GPS Coordinates Latitude: 39.0481 Longitude: -77.4728
Accuracy radius 1000km
Time Zone America/New_York Local time: 2022-12-03 04:52:42

This product includes GeoLite2 data created by MaxMind, available from


Autonomous System Information

AS Number 14618
AS Organization Name AMAZON-AES

This product includes GeoLite2 data created by MaxMind, available from


Default, human-readable format
Integer format 751 979 882
Minimum Integer IP value 0
Maximum Integer IP value 4 294 967 295
Binary representation (Base 2) 00101100 11010010 01001101 01101010
Octal representation (Base 8) 054 322 115 152
Decimal representation (Base 10) 044 210 077 106
Hexa-decimal representation (Base 16) 2C D2 4D 6A



If you want to check out the API we provide, try out the following code:

$ curl

Our API provides an easy way to retrieve your public IP address and use it in your programs. See the handy examples below.


Using our API is extremely simple. Make a HTTP GET request and fetch the results in raw text, JSON or JSONP format. For JSONP format, add ?callback="something" in the request URL.

Endpoint Response Type Sample Output
GET plain text
GET json {"data":{"ip_address":""}}
GET jsonp /**/ typeof test === 'function' && test({"data":{"ip_address":""}});

Our commitments

  • You can use this API for free but there is a sensible rate-limiting in place, see below.
  • The service is deployed on highly available clusters of major cloud providers (AWS, GCP, etc.) which means it should always be up, no matter what.
  • This API is here to stay ! My own software depends on these services so I'll keep them running and improving for the years to come.
  • I'm a bit obsessed with quality and performance. If you see anything strange or slow, contact me.
  • You can query information about IPv4 and IPv6, both work. But currently the service will only detect your public IPv4 addresses. I'm actively looking to make it available for IPv6 too.


The requests are throttled at 1 per second which should be plenty for most use cases. If you hit the speed limit the service will return a 429 http status code.

If you need more, you can get unlimited access for a small contribution by reaching out to me at and we'll sort things out depending on your situation and use-case.


Choose your favorite language/platform below and start creating your next amazing piece of software !

If you want to suggest another language or snippet, send me an email with it and I'll add it to the list.


try (java.util.Scanner s = new java.util.Scanner(
        new"").openStream(), "UTF-8").useDelimiter("\\A")
    ) {
    System.out.println("My current IP address is " +;
} catch ( e) {


# The code below uses curlpp, the C++ binding for libcurl. See
#include <curlpp/cURLpp.hpp>
#include <curlpp/Options.hpp>

// Init libcURL

curlpp::Cleanup myCleanup;

// Send request and get a result.

std::ostringstream os;
os << curlpp::options::Url(std::string(""));

string publicIpAddress = os.str();
std::cout << "My current IP address is " << publicIpAddress;


# The code below requires the `requests` library to be installed.
# To install the library: `pip install requests` or you can lear more about
# the Requests library here:
from requests import get

ip = get('').text
print('My public IP address is: {}'.format(ip))

Visual Basic .NET

Dim httpClient As New System.Net.Http.HttpClient
Dim ip As String = Await httpClient.GetStringAsync("")
Console.WriteLine($"My public IP address is: {ip}")


var httpClient = new HttpClient();
var ip = await httpClient.GetStringAsync("");
Console.WriteLine($"My public IP address is: {ip}");

C# - Another way

using System;
using System.Net;

namespace Kwelo.Example {
    class Program {
        public static void Main (string[] args) {
            WebClient webClient = new WebClient();
            string publicIp = webClient.DownloadString("");
            Console.WriteLine("My public IP Address is: {0}", publicIp);


$ip = file_get_contents('');
echo "My public IP address is: " . $ip;

Javascript - Vanilla

<script type="application/javascript">
    function getPublicIP(json) {
        document.write("My public IP address is: ",;
<script type="application/javascript" src=""></script>

Javascript - jQuery

< type="application/javascript">
    $(function() {
            function(json) {
                document.write("My public IP address is: ",;

Javascript - Node

var http = require('http');

http.get({'host': '', 'port': 443, 'path': '/v1/network/ip-address/my'}, function(resp) {
    resp.on('data', function(ip) {
        console.log("My public IP address is: " + ip);


NSURL *url = [NSURL URLWithString:@""];
NSString *ipAddress = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
NSLog(@"My public IP address is: %@", ipAddress);


require "net/http"

ip = Net::HTTP.get(URI(""))
puts "My public IP Address is: " + ip


use strict;
use warnings;
use LWP::UserAgent;

my $ua = new LWP::UserAgent();
my $ip = $ua->get('')->content;
print 'My public IP address is: '. $ip;


package main

import (

func main() {
    res, _ := http.Get("h")
    ip, _ := ioutil.ReadAll(res.Body)

Shell - Bash


ip=$(curl -s
echo "My public IP address is: $ip"

Shell - Powershell

$ip = Invoke-RestMethod -Uri ''
"My public IP address is: $($"


val addr ="").mkString
println(s"My public IP address is: $addr")


# The example below uses HTTPoiton as the http library. See
response = HTTPotion.get ""
IO.puts("My public IP address is: #{response.body}")


;The code below uses the drakma http package. See

(let ((stream
(drakma:http-request "" :want-stream t)))
(let ((public-ip (read-line stream)))
(format t "My public IP address is: ~A" public-ip)))


http.Fetch("", function(body) print("My public ip address is: " .. body ) end


(require net/url)

(define ip (port->string (get-pure-port (string->url ""))))
(printf "My public IP address is: ~a" ip)


Dim s As New HTTPSecureSocket
Dim t As String = s.Get("",10)
MsgBox "My public IP Address is: " + t


import HttpClient
var ip = newHttpClient().getContent("")
echo("My public IP address is: ", ip)


put "My public IP address is" && url ""

Other IP Address Tools

Need other information about an IP address ?

Public IP Address

Every machine on the Internet has one, find out what's yours

Locate IP Address

Where is this IP coming from ? Locate and identify website visitors by IP address

IP Address Details

All the information on any IP address