Internal Service Made Open Source

An internal service, known as IP IsHere, has been made open source.

Internal Service Made Open Source
Photo by Lucija Ros / Unsplash

The repository in GitHub is known as ip.ishere.dev and is:

GitHub - andreimerlescu/ip.ishere.dev: A web utility built in Go that provides API access to remote IP Addressess that connect to it for “home locator” but in-house.
A web utility built in Go that provides API access to remote IP Addressess that connect to it for “home locator” but in-house. - andreimerlescu/ip.ishere.dev

As a project, its not designed really for you to clone the repo and begin using it, unless you want it for your own internal systems. I use it for when I am setting up a new host, or need to know what my WAN IP address is, and I don't want to hand over to a public service the knowledge that I was doing such a task. None of their business what my WAN IP is, right? Well that's the idea of this. If you need to access your WAN IP, and want to have your own service, you can now. The GitHub repo contains the detailed deployment instructions on how to get a copy of the server running in your own infrastructure.

I am currently hosting mine on DigitalOcean on an $8/month droplet. It doesn't require anything else. Every now and then, you may need to go in and clear out logs for the disk space, but that can also be done using logrotate.

Regardless of whether you find use in the open source code behind that project, and how its deployed; the hosted service can be used by going to https://ip.ishere.dev and it'll tell you what your IP address is, without giving you ads, and a bunch of extra junk that you do not need. It has a CLI access point for JSON, YAML, and INI files at the /read.json endpoints (also /read.ini and /read.yaml).

Some of the deployment steps needed for running these services in Linux with SELinux enforcing can be difficult for new engineers, and I made this open source for others to learn from and enhance their own abilities. Getting a binary to run with protections in place where read/write disk access is needed, required steps to succeed. The run-app.sh script handles this for you. Enjoy using this project! =D