VPN server and client in Python

I wrote my own VPN with Python using the TUN/TAP interface. I also wrote my own VPN server using Python and its asyncio library.

This worked pretty well.

I had never used TUN/TAP before, so this was a good exercise to learn how that worked. The initial TUN/TAP code from this project (along with the knowledge I gained from making a centralized, single-server VPN) ended up being part of the Smolmesh2 mesh VPN.