No description
- JavaScript 92.4%
- Jinja 7.6%
| roles | ||
| .editorconfig | ||
| .gitignore | ||
| bird.conf.j2 | ||
| config.yml | ||
| deploy.yml | ||
| eth0-network-drop-in.conf | ||
| generator.js | ||
| inventory.yml | ||
| keygen.yml | ||
| networkd-conf-drop-in.conf | ||
| package-lock.json | ||
| package.json | ||
| README | ||
This project is intended to help with setting up an ideally-mesh dynamically routed wireguard VPN, using the babel implementation in bird for route discovery and synchronization. Important files: - generator.js: generates all files containing complex logic, mainly systemd-networkd wireguard interface configuration. - deploy.yml: deployment ansible playbook, applies configuration to the set of remote containers - inventory.yml: ansible inventory file, defines the hosts ansible communicates with and their SSH endpoints - config.yml: network configuration, primary source of truth for the entire VPN, including host clearnet IP addresses and port ranges used to enable connections between hosts