Take a look at https://github.com/AndySchroder/StaticWire . With lightning, it rents a wireguard tunnel for you from my rental server and then makes renewal payments automatically. The remote side of the tunnel is automatically configured and the local side can be automatically configured as well. The rented tunnel provides an IPv4 /32 subnet and an IPv6 /64 subnet. You can use ufw to simplify a lot of the iptables stuff.
Oh interesting! So this is to hide your IP address from websites? Like other VPNs?
Since originally, VPNs were meant for internal services. Not to access the internet like through a proxy.
IPv4 /32 subnet and an IPv6 /64 subnet.
Do you mean /24 subnet for IPv4? /32 is just a single address
edit: Ah, just read Current Limitations. /32 is indeed correct.
reply
You can use StaticWire for whatever you want. However, what makes StaticWire unique:
  1. Dedicated public static IP assignments with no firewall.
  2. Ability to programmatically maintain the tunnel (rental server API actually provides all calls needed to do this and the python client also actually does it).
  3. Dual stack IPv4/IPv6 support.
I'd think of wireguard as a tunneling technology and not a Virtual Private Network. A tunnel is a tool that allows you to create a Virtual Private Network. If you want to use "VPN" to describe StaticWire, I'd call it a Virtual Public Network.
reply
To answer your question a bit more application specific, StaticWire can be used to host your own services. That means you can host a website with StaticWire over a cellular internet connection for example. Or, you can use it to allow inbound connections from other lightning nodes to your lightning node. Or, you can use it to connect to your lightning node with Zeus remotely and not deal with all the issues of trying to use TOR to do that. Or, maybe you want to use it with your home automation or security system and eliminate application specific proxies that can back door into your house. Maybe you want to host your own Jitsi server.
reply
For IPv4, yes a /32 is only a single address. If there is demand for larger subnets I will consider adding it, but it is challenging to cleanly allocate my address pool not knowing the subnet size that most people will want to rent.
reply