With my current setup, I have more IP addresses than I need, and despite most services having two IPv4 addresses, with proper RDNS records, I still have about 100 IPs with no usage.

My initial thought was to rent them out to people who need them, but the question is how! Even if I were to set proper RDNS records such as $friendname-ip(int).business.(domain), how would one best route them through to friends?

Enter the Cloud Hosted Router! With the numerous open source / free routing solutions like pfsense and VyOS, I’ve settled on VyOS to route subnets to friends, becoming my own miniature ISP. How my setup will work is, I’ll assign a /32 or /29 to a friend, it’ll route the IPs via GRE to VPN tunnel to their home lab servers. From this point, I can block traffic and whitelist traffic for them, and they can bypass any residential ISP port blockages.

As there’s an implied liability, I’m only going to allow trusted friends to utilize this system, and eventually hope to expand. Currently, my plan is four friends to pay $25/month each to rent a total of 75 IPv4 addresses. This means approximately $100/month in income, and helps offset my colocation and maintenance cost. As I’ve now got dual redundant 1G lines, bandwidth is not an issue.

My thought is reverse DNS records, updating firewall rules via ansible or salt, and each VM router will run on 512 MB memory, 15 GB disk. This lets me scale them very easily, and not break my system!

Let’s see where the future takes this project! For now, dubbed Geek ISP.