Using cloudflare workers you can host your own[1]:
``` addEventListener("fetch", event => { event.respondWith(handleRequest(event.request)) })
async function handleRequest(e) { const connectingIP = e.headers.get("cf-connecting-ip"); return new Response(`${connectingIP}\n`, {status: 200}) } ```
[1]: formatting gets messed up: https://pastebin.com/gSysKd5k