Skip to content
Network tool

meuip.rs

Blue3's "what is my IP" service: it shows the caller's public address, with ASN, provider, country and region — and answers in the shape the caller asked in. `curl` gets the bare address and a newline; a browser gets the whole page. It also carries a looking glass: a traceroute run on the server and streamed live to the page, for when it is your own network that blocks ICMP. No account, no API key and no cookie.

One address, two answers

Ask curl meuip.rs and you get the bare address and a newline — parseable, with nothing to strip. Open the same url in a browser and you get the page: the address in large type, who your provider is, where the route puts you, and the commands to do it all from the terminal.

That is the whole idea. A "what is my IP" that a script can use is a different service from one a person can read, and most sites make you pick. This one reads the Accept header and answers the question in the shape the caller can actually use.

From the terminal

$ curl meuip.rs
170.233.230.254

$ curl meuip.rs/asn
AS265198

$ curl -s meuip.rs/all | jq .isp
"BLUE3 TELECOM"

No key, no account, no rate-limit dance. The output is one line, so it goes straight into a variable.

Endpoints

Route What it answers
meuip.rs Your public address — plain text for a client, the full page for a browser.
meuip.rs/ip The address on its own, always as text.
meuip.rs/asn The autonomous system your route comes out of.
meuip.rs/isp The provider that announces that AS.
meuip.rs/country Country code.
meuip.rs/region State or region.
meuip.rs/coord Latitude and longitude — on the page, a link to the map.
meuip.rs/all Everything above in one JSON object.
meuip.rs/trace Traceroute: the route to your own address, or to a host you name.
meuip.rs/doc The documentation, same content in both shapes.
Looking glass

A traceroute that runs on the server, not on your machine

Corporate networks block ICMP, and a traceroute run from inside one tells you about that network, not about the route. /trace runs the hops from the server and streams them to the page as they come back — no waiting for the whole run to finish — and holds the route open in a continuous mtr-style reading when you ask it to.

It answers in both shapes like everything else: a browser gets the live page, curl gets the plain route.

What it does not do

No account

Nothing to sign up for and nothing to log in to. There is no paid tier that unlocks the other endpoints.

No API key

The endpoints are open. The geo lookup behind them is cached on the server, so a loop over curl does not become a bill.

No cookie

The page sets none. The theme you choose is kept in localStorage, in your own browser, and never travels.

No JavaScript required

The page is rendered on the server and reads the same with scripting off — the copy buttons and the live trace are what need it.

Built and run by Blue3, in PHP with no framework: a front controller, prepared statements, and a geo lookup over native cURL with a timeout and a cache. The v2.0 rewrite is what replaced the shell_exec("curl …") of the original.

What changed

The most recent releases, taken from the project's own changelog.

  1. v0.2.10 current
    • The exposed .git directory is closed, and the v1 code that was still executing in production alongside the rewrite is gone.
  2. v0.2.0
    • The page gets a dark theme that does not flash on load, a copyable address with an IPv4/IPv6 badge, context chips, a copy button on every curl command, and coordinates that open a map.
    • Keyboard focus is visible again, and animation honours a system that asks for less of it.
    • Measured against production, endpoint by endpoint: the plain-text API answers exactly as before. A visual pass that changed what curl returns would have broken the point of the service.

The v2.0 rewrite and the live traceroute came before this version line and are in the git history rather than in the numbering. The entries above start where the house versioning does.