Nebula is a scalable overlay networking tool that lets you create a software-defined network connecting computers across the internet with mutual authentication and encryption.
Nebula solves the problem of securely connecting distributed infrastructure without requiring a centralized VPN or complex networking setup. It uses a peer-to-peer architecture based on the Noise Protocol Framework, where nodes authenticate each other using certificates that assert IP address, name, and group membership. Discovery nodes called lighthouses help peers locate each other and enable UDP hole punching to traverse firewalls and NATs. Traffic filtering is defined through user-created security groups rather than fixed addressing schemes, allowing flexible policy enforcement across any combination of cloud providers, datacenters, and endpoints.
Nebula suits organizations managing infrastructure across multiple cloud regions or datacenters that need encrypted inter-node communication without the overhead of traditional VPN solutions. It works well for both small deployments and large-scale networks of tens of thousands of machines. The tool runs on Linux, macOS, Windows, FreeBSD, iOS, and Android, with distribution packages available for major Linux distributions and Homebrew. Those who prefer not to manage their own certificate infrastructure and lighthouses can use a managed hosting option. The README does not compare Nebula to alternative overlay networking tools.
The project receives issue reports from both core maintainers and external users, indicating adoption beyond the immediate team without creating an unsustainable support burden. Maintainers typically respond to new issues and pull requests within a few days. Work in the issue tracker centers on investigation, information gathering, and decision-making, suggesting the project is actively evaluating feature requests and bug reports rather than simply processing high volumes of routine maintenance.