Does it handle IP assignment/configuration as well?
Does it handle IP assignment/configuration as well?
I wrote a little script that creates the configuration files, and shows a QR code in the terminal to easily add new clients.
The problem I ran into is dynamic IP allocation, without extra logging, or storing the client config files after they’ve been distributed. If I want to avoid assigning a used IP, I need to know what I’ve already given out.
I mocked up a few things then decided the perfect was becoming the enemy of the good. Since I’ll only ever have a few peers, I ultimately just decided randomize the 4th octet, each time I create a new client config. Obviously, this opens me up to a potential conflict in the future (prayers to St. YAGNI for benevolence).
I suppose I could/should be pre-generating all the configs, handing one out at random, then deleting it.
0: https://gist.github.com/Belphemur/b014a11f9ae6c20203276f214e...
1: https://gist.github.com/judge2020/e9631be086ea105005614c70a8...
You will also likely need to make some changes to your iptables and/or sysctl depending on your server config and firewall.
Nothing too shocking per se; you need to do all that with any other kind of VPN as well.