FOR YOUR TERMINAL · 5 MIN READ
Your Public IP.
One Command.
No banner, no markup, no extra fields. A command-line request to ABOUTIP returns the source IP seen by the service, followed by one newline.
No API keyIPv4 + IPv640 requests / minute
curl
Just the domain. No parameters needed.
That bare command uses HTTP. For an encrypted connection, use HTTPS:
curl -fsS https://aboutip.info
The address belongs to this connection, not necessarily your device. A VPN, proxy, NAT gateway or different IP protocol can change what you see.
wget
Write the plain IP response to your terminal.
wget -qO- https://aboutip.info
PowerShell
Use the dedicated plain-text endpoint so the result does not depend on the request’s user agent.
Invoke-RestMethod https://aboutip.info/ip
In Windows PowerShell, curl can be an alias. Use curl.exe if you specifically want the curl executable.
Always Plain Text
/ip returns the address and a newline regardless of your client. Ordinary browsers visiting the home page receive the toolkit.
curl -fsS https://aboutip.info/ip
JSON for Your Script
/api/ip keeps the same two fields: ip is the observed source address; version is 4 or 6.
curl -fsS https://aboutip.info/api/ip
ILLUSTRATIVE RESPONSE · NOT YOUR LIVE IP{"ip":"192.0.2.10","version":4} PowerShell converts the JSON to an object. Read just its IP field:
(Invoke-RestMethod https://aboutip.info/api/ip).ip
Choose IPv4 or IPv6
These flags select an IP family. Your network must support that family; a failed IPv6 connection does not mean the IP API is unavailable over IPv4.
curl -4 -fsS https://aboutip.info
curl -6 -fsS https://aboutip.info
Look Up a DNS Record
Supply a public hostname and record type. Supported types are A, AAAA, MX, NS, TXT, CNAME, SOA and CAA. Requests go from our server to Cloudflare’s DNS-over-HTTPS resolver.
curl -fsS -G https://aboutip.info/api/dns --data-urlencode "name=aboutip.info" --data-urlencode "type=A"
Invoke-RestMethod 'https://aboutip.info/api/dns?name=aboutip.info&type=AAAA'
The JSON includes name, type, DNS status, dnssecValidated, resolver and records. Each record contains name, type, ttl (seconds) and value. HTTP 200 alone is not a successful DNS answer: check the DNS status and records too. An empty NOERROR answer may simply mean no record of that type.
Inspect an Address
Send a literal IPv4 or IPv6 address to /api/inspect to get its version, bit length, scope, expanded form and reverse lookup name. This does not establish ownership or reachability.
$ip = (Invoke-RestMethod https://aboutip.info/api/ip).ip
Invoke-RestMethod ("https://aboutip.info/api/inspect?ip=" + [uri]::EscapeDataString($ip))
To request PTR records, use /api/reverse?ip= with the encoded address instead. Inspection alone does not run a DNS lookup.
Requests, Limits and Retries
All pages, assets reaching the application, HEAD requests, errors and API endpoints share 40 accepted requests per source IP in any rolling 60 seconds. DNS and reverse-DNS calls also share a separate 30-lookup per-minute budget within that total. Switching endpoints or clients does not give you another allowance. People sharing a public IP share the allowance.
Read X-RateLimit-Limit and X-RateLimit-Remaining for the overall budget. A 429 response includes Retry-After; wait at least that many seconds before trying again. A HEAD request also counts.
curl -sSI https://aboutip.info/ip
Invalid inputs return 400. Upstream lookup failures can return 502 or 503. Use timeouts, handle non-success responses and avoid tight retry loops. Cache observations in your own script when appropriate; personalized IP responses are not shared-cacheable. This casual-use service has no uptime guarantee.