PAGES
← all tools
◆ Secure Access (VPN / SASE / ZTNA)

Nebula

v1.12.0 open-source

Nebula is a scalable overlay networking tool that connects computers anywhere in the world, running on Linux, OSX, Windows, iOS, and Android.

Summary

Nebula is an open-source overlay networking tool that creates a mutually authenticated, encrypted mesh between hosts anywhere on the internet, using certificates built on the Noise Protocol Framework rather than a central VPNVPNA virtual private network, an encrypted tunnel between devices or networks. It carries traffic across another network as though the endpoints had a private connection. gateway. It runs as a binary or system service installed via package managers or Docker on Linux, Windows, macOS, and FreeBSD, with mobile clients for iOS and Android, and can be embedded as a library for programmatic control. It is aimed at network and platform engineers who need to connect distributed servers, laptops, and edge devices, from small fleets up to tens of thousands of nodes, without managing a traditional VPN concentrator. Its README describes it as a scalable peer-to-peer alternative to conventional overlay VPNsVPNsA virtual private network, an encrypted tunnel between devices or networks. It carries traffic across another network as though the endpoints had a private connection., combining security groups, tunneling, and certificate-based trust in one system. First committed in 2019 and maintained by 95 contributors, it remains under active development, with a release 29 days ago.

Nebula is a scalable overlay networking tool that connects computers anywhere in the world, running on Linux, OSX, Windows, iOS, and Android.

How Nebula helps

Which of my hosts can reach each other once the mesh is up?

every node holds a certificate signed by its own certificate authority and mutually authenticates with any peer it tries to handshake with, so reachability is settled by certificate trust rather than a central gateway's routing table

Which machines are allowed to talk to which, and on what ports?

firewall rules are defined per host using group and CIDR membership pulled from each certificate, so the answer is enforced locally at every node rather than looked up from a central policy server

What happens to traffic when a laptop moves from wifi to a wired connection?

the listener rebinds and re-queries the lighthouse automatically when the underlay network changes, so the tunnel re-establishes instead of hanging on a stale address

Is a given certificate actually trusted by the group I think it belongs in?

the certificate encodes IP and group membership at signing time, and every peer checks incoming handshakes against its own copy of the signing certificate authority before allowing a tunnel

Which idle connections are still holding resources on a host?

tunnels can be set to drop automatically after a period of inactivity, so a long-lived but unused peer connection gets reclaimed instead of sitting open indefinitely

all 44 features, with the evidence for each →

Languages

Not documented

Features

44 capabilities across 8 areas · 3 backed by code, an API document or a real run

Built from Nebula's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

What Nebula offers you

  • Command-line interface5
  • Plugin system1
Overlay Network Connectivity 3 capabilities Nebula's core function is creating and maintaining an encrypted mesh network between hosts. It handles peer discovery, host mapping, and network roaming so that nodes can find and stay connected to each other.
macOS network roaming support shipped Detects when a macOS device switches between wifi and wired networks and automatically re-establishes the underlay connection and re-queries lighthouses. 2 releases · 1 other source · first seen Jul 2026

release

  • Enables automatic listener rebinding and lighthouse re-query on macOS network changes via listen.rebind_on_network_change (default true). v1.11.0 · Jul 2026 · source · release history
  • firewall.inbound_action and firewall.outbound_action were each applied to the opposite direction; this is now corrected. If you set either, you are currently getting the behavior of the other and likely need to swap them before upgrading. v1.11.0 · Jul 2026 · source · release history

example

  • Keep macOS laptops connected when they roam between wifi and wired — disable the default rebind behaviour only if your environment requires it. # In config.yml — omit or set to true to enable (the default) listen: rebind_on_network_change: true v1.11.0 · Jul 2026 · source
Lighthouse peer discovery shipped Keeps lighthouse connections fresh and reacts immediately when a lighthouse becomes available rather than waiting for the next scheduled check. 1 release · first seen Jul 2026

release

  • Triggers an immediate lighthouse update when reconnecting to or adding a lighthouse instead of waiting for the next tick. v1.11.0 · Jul 2026 · source · release history
Host map querying verified Looks up all known hosts in the network so the node has a current picture of its peers. 1 other source · first seen May 2023

command line

  • --by-index — gets all hosts in the hostmap from the index table v1.7.0 · May 2023 · command-line history
Firewall and Traffic Control 4 capabilities Nebula enforces inbound and outbound traffic rules at the overlay layer, including connection tracking and standards-compliant rejection responses. Rules can be updated at runtime without restarting the node.
Firewall traffic control shipped Blocks or permits traffic based on configured inbound and outbound rules and sends correct ICMP rejection packets to the source when traffic is denied. 9 releases · 1 other source · first seen May 2023

release 9 total

  • A firewall rule group that YAML reads as a float, a date, a map, or a nested array is now rejected on startup and reload instead of being silently converted to a string (e.g. group: 1.10 used to match group 1.1). A null group or groups is rejected when no host, other group, or cidr limits the rule. v1.12.0 · Oct 2026 · source · release history
  • Reject packets for non-TCP traffic now use ICMP code 13 (communication administratively prohibited) instead of code 3 (port unreachable). Anything keying off the old code needs updating. v1.11.0 · Jul 2026 · source · release history
  • Generates IPv6 reject packets for non-TCP traffic, matching existing IPv4 behavior. v1.11.0 · Jul 2026 · source · release history
  • Supports port-free ICMP firewall rules — port is no longer required in ICMP rule definitions. v1.11.0 · Jul 2026 · source · release history
  • Generates IPv6 reject packets for blocked traffic, matching existing IPv4 reject behavior. v1.11.0 · Jul 2026 · source · release history
  • default_local_cidr_any now defaults to false — firewall rules targeting unsafe_routes entries must explicitly declare the destination via the local_cidr field, or traffic that previously matched will no longer match. v1.10.0 · Dec 2025 · source · release history

example

  • Ensure unsafe_routes firewall rules still match after the default_local_cidr_any change by explicitly declaring local_cidr in each rule. # In nebula config.yml firewall section firewall: inbound: - port: any proto: any group: trusted local_cidr: 10.20.0.0/24 v1.10.0 · Dec 2025 · source
Firewall direction bug fix shipped Fixes a bug where inbound and outbound default actions were applied to the wrong direction, so rules now behave as configured. 2 releases · first seen Jul 2026

release

  • The firewall.inbound_action and firewall.outbound_action semantics are swapped; values previously applying to inbound now apply to outbound and vice versa. v1.11.0 · Jul 2026 · source · release history
  • Adds automatic listener rebind and lighthouse re-query on macOS when the underlay network changes (wifi↔wired), controlled by listen.rebind_on_network_change (default true). v1.11.0 · Jul 2026 · source · release history
Dynamic firewall reload shipped Reloads firewall rules automatically when certificate-defined unsafe networks change, avoiding any need to restart the node. 1 release · first seen Jul 2026

release

  • Reloads the firewall automatically when unsafe networks in the certificate change, without requiring a restart. v1.11.0 · Jul 2026 · source · release history
ICMP connection tracking shipped Tracks ICMP flows through the connection tracking system so stateful rules apply correctly to ICMP traffic. 1 release · first seen Jul 2026

release

Certificate and Identity Management 3 capabilities Nebula uses its own certificate authority to authenticate nodes and control network membership. The CLI tooling lets operators create, inspect, and distribute certificates as part of normal operations.
Certificate management CLI shipped Provides a dedicated command-line tool for creating and inspecting Nebula certificates, including reading and writing via stdin and stdout. 6 releases · 3 other sources · first seen Jan 2020

Also counts toward: Command-line interface

release

  • Allows nebula-cert to read from stdin or write to stdout when - is passed as the file argument. v1.11.0 · Jul 2026 · source · release history
  • Accepts - as a path in nebula-cert subcommands to read from stdin or write to stdout. v1.11.0 · Jul 2026 · source · release history
  • Support for the deprecated local_range option is removed; migrate to preferred_ranges v1.9.0 · May 2024 · source · release history
  • nebula-cert ca now accepts the -encrypt flag to encrypt CA private keys with a passphrase using AES-256-GCM and Argon2id. v1.7.0 · May 2023 · source · release history
  • Adds print, ca, and sign modes of nebula-cert that can output QR code images for mobile client configuration v1.4.0 · May 2021 · source · release history
  • The certificate lifespan validation now enforces that the certificate expiration does not exceed the root CA's expiration; existing certificates with longer lifespans must be reissued. v1.1.0 · Jan 2020 · source · release history

example

  • Sign certificate with group membership ./nebula-cert sign -name "laptop" -ip "192.168.100.2/24" -groups "laptop,home,ssh"
  • Create a Nebula certificate authority ./nebula-cert ca -name "Myorganization, Inc"
  • Sign a host certificate with IP ./nebula-cert sign -name "lighthouse1" -ip "192.168.100.1/24"
Certificate inspection verified Shows the contents of a certificate in a chosen format so operators can verify identity and expiry details. 3 releases · 2 other sources · first seen Nov 2021

Also counts toward: Command-line interface

release

  • Query node identity over HTTP through the new opt-in info socket: GET /v1/identity for the local node, GET /v1/identity/<vpn addr> for another host, and /pem under either path for the certificate. v1.12.0 · Oct 2026 · source · release history
  • Adds tunnels.drop_inactive config option to automatically drop inactive tunnels (disabled by default). v1.9.6 · Jul 2025 · source · release history
  • Adds the -raw flag to the ssh print-cert command for PEM certificate output v1.5.0 · Nov 2021 · source · release history

command line

  • --raw — raw prints the PEM encoded certificate, not compatible with -json or -pretty v1.5.0 · Nov 2021 · command-line history

example

  • Inspect the certificate and VPN identity of a peer from the local host without an SSH session. nebula ctl print-cert v1.12.0 · Oct 2026 · source
Release binary signing shipped Signs Windows release binaries so that operating systems and users can verify the integrity of the distributed files. 1 release · first seen Jul 2026

release

Platform Integration and Deployment 3 capabilities Nebula provides platform-specific integrations for Windows, macOS, containers, and system service managers so it can be deployed consistently across environments. This includes OS-level network and firewall configuration as well as packaged distribution formats.
Windows platform integration shipped Applies Windows-specific settings including marking the network adapter as private and installing firewall filters so Windows Defender does not block Nebula traffic. 4 releases · first seen Jul 2026

release

  • On Linux, Nebula refuses a tun.dev that already exists (including a persistent device created with ip tuntap add or systemd-networkd); remove it and let Nebula create the device. v1.12.0 · Oct 2026 · source · release history
  • On Windows, WFP filters replace WDF for the nebula adapter and listener port by default; set tun.windows_bypass_wdf and listen.windows_bypass_wdf to false to restore WDF reliance. v1.11.0 · Jul 2026 · source · release history
  • On Windows, the Nebula device network category is now set to private instead of whatever Windows chose (usually Public). Set tun.network_category to unset to keep the old behavior. v1.11.0 · Jul 2026 · source · release history
  • On Windows, Nebula now installs WFP PERMIT filters for the nebula adapter and listener port by default, bypassing Windows Defender Firewall (WDF) inbound rules for those. Set tun.windows_bypass_wdf and listen.windows_bypass_wdf to false to leave WDF in charge. v1.11.0 · Jul 2026 · source · release history
Configuration file discovery shipped Searches for configuration files in standard locations automatically so operators do not need to specify the path explicitly in common setups. 2 releases · 1 other source · first seen Jul 2026

release

  • Searches for both config.yml and config.yaml automatically in service and CLI modes. v1.11.0 · Jul 2026 · source · release history
  • Expands config file discovery to search for both config.yml and config.yaml in service and command line modes. v1.11.0 · Jul 2026 · source · release history

example

  • Run Nebula with a config file ./nebula -config /path/to/config.yml
Container image distribution shipped Publishes versioned container images so Nebula can be deployed in Docker or Kubernetes environments. 3 releases · first seen Jun 2022

release

  • Adds version labels to Docker/OCI images. v1.11.0 · Jul 2026 · source · release history
  • Adds official nebulaoss/nebula distroless Docker image containing nebula and nebula-cert binaries v1.9.0 · May 2024 · source · release history
  • punchy and most lighthouse config options now support hot reloading v1.6.0 · Jun 2022 · source · release history
Embedded Services and APIs 3 capabilities Nebula exposes an embedded DNS server and a programmatic Go API so it can be integrated into larger systems and applications. A built-in SSH debug interface provides runtime inspection and profiling without a full restart.
Programmatic control API shipped Exposes a Go API for embedding Nebula in other programs, including a method that blocks until Nebula has fully shut down. 7 releases · first seen Sep 2024

release 7 total

  • Embedders: SSH debug commands moved to the new commands package; sshd.RegisterCommand and sshd.Command are removed; sshd.NewSSHServer takes a *commands.Registry; firewall.ProtoTCP, ProtoUDP, ProtoICMP, and ProtoICMPv6 are now iputil.IPProtocol*. v1.12.0 · Oct 2026 · source · release history
  • Embedders: overlay.Device no longer embeds io.ReadWriteCloser; NewMultiQueueReader and SupportsMultiqueue are replaced by Queues; udp.Conn gained WriteBatch, IPv4Only; ListenOut takes a flush callback; ReloadConfig takes a *config.Reload; udp.NewListener and udp.NewGenericListener take a… v1.12.0 · Oct 2026 · source · release history
  • Embedders: config.C.RegisterReloadCallback callbacks now take (*config.C, *config.Reload); ReloadConfig and ReloadConfigString return a config.ReloadResult; ReloadConfigString used to return an error, now it is the result's Err. v1.12.0 · Oct 2026 · source · release history
  • Embedders must update constructors to accept a *slog.Logger instead of the previous logger interface. v1.11.0 · Jul 2026 · source · release history
  • Adds Control.Wait, a new API method that blocks until Nebula has fully stopped and returns the first fatal reader error. v1.11.0 · Jul 2026 · source · release history
  • Allows library users with userspace networking to configure the logger and build version. v1.10.0 · Dec 2025 · source · release history
SSH debug server shipped Provides an SSH-accessible debug interface where operators can run profiling commands, with output restricted to a configurable directory. 7 releases · first seen May 2023

release 7 total

  • Access every SSH debug command through a new local control socket via nebula ctl <command>, with access restricted to the running user, root, or a group named in local_api.control.group; set a per-instance path with local_api.control.socket. v1.12.0 · Oct 2026 · source · release history
  • The SSH debug server's start-cpu-profile, stop-cpu-profile, save-heap-profile, save-mutex-profile, and mutex-profile-fraction commands, and sshd.sandbox_dir, are removed. v1.12.0 · Oct 2026 · source · release history
  • SSH debug server commands now exit with status 1 when they refuse; with -json or -pretty they report refusal as {"ok":false,"reason":...}. Every command now accepts -json and -pretty. v1.12.0 · Oct 2026 · source · release history
  • The SSH debug server's profiling commands (start-cpu-profile, save-heap-profile, save-mutex-profile) are now confined to sshd.sandbox_dir (default $TMP/nebula-debug). Absolute paths outside that directory are rejected; the directory is not created automatically. v1.11.0 · Jul 2026 · source · release history
  • SSH daemon supports inlined host keys v1.9.0 · May 2024 · source · release history
  • SSH daemon supports certificates with sshd.trusted_cas v1.9.0 · May 2024 · source · release history
Embedded DNS server shipped Runs an embedded DNS server that resolves the hostnames of Nebula nodes, including the local host, and returns correct responses when a record type does not exist. 4 releases · first seen Dec 2023

release

  • Configure split DNS or full DNS override with the experimental dns stanza, pointing the host resolver at dns.nameservers for dns.match_domains or all lookups (macOS and Windows only, off by default). v1.12.0 · Oct 2026 · source · release history
  • Returns NODATA instead of NXDOMAIN from the embedded DNS server when a name exists but lacks the requested record type, fixing AAAA-first resolvers (busybox/Alpine). v1.11.0 · Jul 2026 · source · release history
  • Records the local Nebula host's own details in the DNS server. v1.11.0 · Jul 2026 · source · release history
  • Windows: Use Registered IO (RIO) for ~50x throughput improvement v1.8.0 · Dec 2023 · source · release history
Observability and Logging 1 capability Nebula emits structured logs with consistent formatting so that log aggregation and monitoring systems can parse and correlate events reliably. Log output uses stable field names, upper-case severity levels, and high-precision timestamps.
Structured logging shipped Writes structured log entries in a stable format with upper-case level names and nanosecond-precision timestamps so logs integrate cleanly with monitoring pipelines. 3 releases · first seen Apr 2020

release

  • Logging has switched from logrus to Go's structured slog: log levels are now upper case (level=INFO), trace prints as level=DEBUG-4, timestamps are always RFC3339Nano, logging.timestamp_format is ignored, and some messages were reworded. Embedders must update constructors to accept *slog.Logger. v1.11.0 · Jul 2026 · source · release history
  • Set logging.disable_timestamp=true to omit timestamps from log lines for external log systems v1.3.0 · Sep 2020 · source · release history
  • Adds logging.timestamp_format config option for millisecond-precision logging timestamps. v1.2.0 · Apr 2020 · source · release history
Other 1 capability Capabilities that did not group under any area above.
System service management verified Controls Nebula as a system service via the CLI. 3 releases · 2 other sources · first seen Jan 2020

Also counts toward: Command-line interface

release

  • nebula and nebula-service refuse to start when given an argument that is not a flag (previously ignored). v1.12.0 · Oct 2026 · source · release history
  • Linux: Notify systemd of service readiness via examples/service_scripts/nebula.service v1.8.0 · Dec 2023 · source · release history
  • Adds nebula -service subcommand and make service build target to install and manage the Nebula service on macOS and Windows v1.1.0 · Jan 2020 · source · release history

docs

  • Scalable peer-to-peer overlay networking cyber tool that connects computers worldwide using mutual authentication, certificates, and encrypted tunnels.

command line

Other 26 capabilities
Subnet routing and gateway support shipped Enables hosts behind the cyber tool to reach external subnets via gateway routes, supporting both Linux and Windows platforms. 6 releases · 1 other source · first seen Jan 2020

release

  • unsafe_route config entries now support an install option to control whether the route is installed in the system routing table. v1.7.0 · May 2023 · source · release history
  • New tun option tun.use_system_route_table (true/false) enables managing unsafe routes directly on the system route table with gateway routes (Linux only). v1.7.0 · May 2023 · source · release history
  • Adds unsafe_routes.<route>.metric config key to set specific route metrics v1.5.0 · Nov 2021 · source · release history
  • Adds new experimental config option remote_allow_ranges v1.5.0 · Nov 2021 · source · release history
  • unsafe_routes now supported on Windows. v1.2.0 · Apr 2020 · source · release history
  • Adds unsafe_routes config section to enable subnet routing and gateway functionality on Linux and macOS v1.1.0 · Jan 2020 · source · release history

example

  • Define a gateway route to allow hosts behind Nebula to reach an external subnet unsafe_routes: - interface: neb0 subnet: '192.168.1.0/24' v1.1.0 · Jan 2020 · source
Multi-architecture binary support shipped Provides release binaries for various CPU architectures including mips, mips64, 386, ppc64le, freebsd/amd64, and linux/mips-softfloat. 6 releases · first seen Jan 2020

release

  • Provides experimental binaries for the loong64 architecture v1.9.0 · May 2024 · source · release history
  • Windows builds now require at least Windows 10 or Windows Server 2016 due to Go 1.22 toolchain changes v1.9.0 · May 2024 · source · release history
  • Adds support for Linux riscv64 build architecture v1.5.0 · Nov 2021 · source · release history
  • Add experimental support for freebsd/amd64 binaries v1.3.0 · Sep 2020 · source · release history
  • Add experimental release binary for linux/mips-softfloat with reduced file size v1.3.0 · Sep 2020 · source · release history
  • Supports mips, mips64, 386, and ppc64le architectures on Linux v1.1.0 · Jan 2020 · source · release history
Packet statistics emission shipped Configures the cyber tool to emit statistics regarding non-message packets and lighthouse packet interactions. 4 releases · first seen Sep 2020

release

  • Metric certificate.ttl_seconds is now exposed via stats for monitoring certificate expiration. v1.7.0 · May 2023 · source · release history
  • Adds the routines config option to enable parallel work on multiple CPU cores in send and receive paths v1.4.0 · May 2021 · source · release history
  • Configure stats.message_metrics to emit statistics about non-message packets v1.3.0 · Sep 2020 · source · release history
  • Configure stats.lighthouse_metrics to emit detailed statistics about lighthouse packets v1.3.0 · Sep 2020 · source · release history
Certificate crypto support shipped Supports P256 curves and BoringCrypto for certificate generation and validation. 3 releases · first seen May 2023

Also counts toward: Command-line interface

release

  • Build CGO-free FIPS 140-3 binaries with make fips140 or make release-fips140; these restrict operation to P256 certificates and AES, and nebula-cert ca and keygen default to -curve P256 in those builds. v1.12.0 · Oct 2026 · source · release history
  • Adds PKCS11 support for P256 keys when built with the pkcs11 tag. v1.10.0 · Dec 2025 · source · release history
  • Support for P256 curves and BoringCrypto has been added for certificate generation and validation. v1.7.0 · May 2023 · source · release history
Linux network offload support shipped Enables Linux TUN offloads (TSO/USO) and UDP GSO/GRO, and batches outbound UDP sends via sendmmsg, to increase throughput and reduce CPU overhead on high-traffic nodes. 2 releases · 1 other source · first seen Oct 2026

release

  • Enable Linux TUN offloads (TSO/USO) and UDP GSO/GRO for higher throughput with tun.use_offloads and listen.udp_offloads in config (off by default; will be on by default in a future release).⁠︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄⁠ v1.12.0 · Oct 2026 · source · release history
  • Nebula now batches outbound UDP sends on Linux, up to 128 packets per sendmmsg call. v1.12.0 · Oct 2026 · source · release history

example

  • Opt into Linux kernel offloads to reduce CPU overhead on high-throughput Nebula nodes. tun: use_offloads: true listen: udp_offloads: true v1.12.0 · Oct 2026 · source
Production-ready routines support shipped Promotes the routines configuration from experimental status to a supported feature. 2 releases · 1 other source · first seen Jun 2022

release

  • Pin each I/O routine's thread to a CPU on Linux when routines is above 1, controlled by tun.pin_threads (default true), tun.pin_threads_key (pid or port), and tun.cpu_affinity. v1.12.0 · Oct 2026 · source · release history
  • Promotes routines config from experimental to supported feature v1.6.0 · Jun 2022 · source · release history

example

  • Spread I/O routines across physical performance cores to reduce latency jitter on multi-core Linux hosts. routines: 4 tun: pin_threads: true pin_threads_key: pid v1.12.0 · Oct 2026 · source
Certification lifecycle management shipped Manages the active state of certificates, allowing automatic disconnection of peers when their certificates expire or lose trust. 3 releases · first seen Nov 2021

release

  • pki.disconnect_invalid now defaults to true, causing tunnel disconnection upon certificate expiration v1.8.0 · Dec 2023 · source · release history
  • pki.disconnect_invalid defaults to true, disconnecting tunnels when certificates expire v1.8.0 · Dec 2023 · source · release history
  • Adds pki.disconnect_invalid config option to tear down tunnels on cert expiry or trust loss v1.5.0 · Nov 2021 · source · release history
PKI blocklist management shipped Manages blocked keys in the public key infrastructure using a new blocklist configuration replacing the previous blacklist mechanism. 2 releases · first seen Sep 2020

release

  • A pki.blocklist entry that is not a hex SHA-256 fingerprint now causes Nebula to refuse to start and fail a reload. v1.12.0 · Oct 2026 · source · release history
  • pki.blocklist replaces pki.blacklist for managing blocked keys v1.3.0 · Sep 2020 · source · release history
Receive error control shipped Controls recv_error message conditions via the listen.send_recv_error configuration option. 2 releases · first seen Jun 2022

release

  • Adds a config option to control whether recv_error packets are accepted, defaulting to always. v1.10.1 · Jan 2026 · source · release history
  • Adds listen.send_recv_error to control recv_error message conditions v1.6.0 · Jun 2022 · source · release history
IPv6 underlay support shipped Allows the cyber tool to establish and maintain connections over IPv6 networks. 2 releases · first seen May 2021

release

  • Supports IPv6 and multiple IPv4/IPv6 addresses in the overlay network. v1.10.0 · Dec 2025 · source · release history
  • Adds IPv6 support for the underlay network v1.4.0 · May 2021 · source · release history
Lighthouse handshake optimization shipped Enables handshakes without a lighthouse in certain configurations and limits busy tunnel lighthouse queries via timers. 2 releases · first seen May 2023

release

  • New config option timers.requery_wait_duration (default 60s) limits busy tunnel lighthouse queries v1.8.0 · Dec 2023 · source · release history
  • Config option lighthouse.calculated_remotes enables handshakes without a lighthouse in certain configurations. v1.7.0 · May 2023 · source · release history
NAT punchy configuration update shipped Updates the configuration schema for NAT punching, replacing nested options with a top-level directive containing punch and respond fields. 2 releases · first seen Apr 2020

release

  • New tun option punchy.respond_delay allows configuring the delay before attempting punchy responds (default 5 seconds). v1.7.0 · May 2023 · source · release history
  • punchy and punch_back config options are replaced by the top-level punchy directive using nested punch and respond fields. v1.2.0 · Apr 2020 · source · release history
Lighthouse-only mode shipped Allows running a lighthouse node without requiring a TUN device or root privileges by disabling the network interface. 2 releases · first seen Sep 2020

release

  • Enables ICMP ping responses when tun.disabled is set to true, allowing pings against lighthouses in tun-less mode v1.4.0 · May 2021 · source · release history
  • Add tun.disabled=true to run a lighthouse without a TUN device or root privileges v1.3.0 · Sep 2020 · source · release history
Lighthouse allow list filtering shipped Filters subnets used for handshakes with other hosts and local IPs advertised to lighthouses via configuration. 2 releases · first seen Apr 2020

release

  • Adds lighthouse.remote_allow_list config to filter subnets used for handshakes with other hosts. v1.2.0 · Apr 2020 · source · release history
  • Adds lighthouse.local_allow_list config to filter local IPs/interfaces advertised to lighthouses. v1.2.0 · Apr 2020 · source · release history
Wireshark packet dissection shipped Provides a plugin and command-line interface to decode Nebula cyber tooling packet headers using Wireshark. 1 release · 1 other source · first seen Apr 2020

Also counts toward: Command-line interface, Plugin system

release

  • Wireshark dissector plugin available at dist/wireshark to decode Nebula packet headers. v1.2.0 · Apr 2020 · source · release history

example

  • Run the Wireshark dissector to decode Nebula packets. # Place dist/wireshark/* in your Wireshark plugins folder (e.g. ~/.wireshark/plugins) v1.2.0 · Apr 2020 · source
Lighthouse DNS configuration shipped Allows configuration of the listen address and port for lighthouse DNS resolution via config keys. 1 release · 1 other source · first seen Jan 2020

release

  • Adds lighthouse.dns.host and lighthouse.dns.port config keys to control DNS listen address for lighthouses v1.1.0 · Jan 2020 · source · release history

example

  • Configure lighthouse DNS settings in the Nebula config file lighthouse: dns: host: '0.0.0.0' port: 53 v1.1.0 · Jan 2020 · source
MTU cap enforcement shipped Caps tun.mtu and per-route MTU values above 8937 to 8937 and emits a warning when the configured value is exceeded. 1 release · first seen Oct 2026

release

  • tun.mtu and any route mtu above 8937 is capped to 8937 with a warning. v1.12.0 · Oct 2026 · source · release history
CA passphrase environment variable support shipped Accepts the encrypted CA passphrase from an environment variable for library users with userspace networking. 1 release · first seen Dec 2025

release

  • Accepts encrypted CA passphrase from an environment variable. v1.10.0 · Dec 2025 · source · release history
ECMP routing support shipped Adds Equal-Cost Multi-Path (ECMP) support for unsafe routes to enable multiple next-hops. 1 release · first seen Dec 2025

release

  • Adds ECMP (Equal-Cost Multi-Path) support for unsafe_routes. v1.10.0 · Dec 2025 · source · release history
Lighthouse connection flexibility shipped Allows handshaking with any trusted remote regardless of specific lighthouse configuration restrictions. 1 release · first seen Dec 2025

release

Packet marking for Linux shipped Adds packet marking on Linux to better target Nebula packets in iptables/nftables rules. 1 release · first seen Dec 2025

release

  • Adds packet marking on Linux to better target Nebula packets in iptables/nftables rules. v1.10.0 · Dec 2025 · source · release history
PKI certificate format evolution shipped Introduces a new v2 ASN.1-based certificate format with a unified interface for external implementations. 1 release · first seen Dec 2025

release

  • Introduces a new v2 ASN.1-based certificate format with a unified interface for external implementations. v1.10.0 · Dec 2025 · source · release history
Manual lighthouse IP:port reporting shipped Allows configuration to report manually specified ip:port pairs to lighthouses. 1 release · first seen Jun 2022

release

  • Adds configuration option to report manually specified ip:ports to lighthouses v1.6.0 · Jun 2022 · source · release history
NAT Relay support shipped Configures Nebula clients to act as relays for other clients situated behind stubborn NATs. 1 release · first seen Jun 2022

release

  • nebula clients can now be configured to act as relays for other clients behind stubborn NATs v1.6.0 · Jun 2022 · source · release history
Windows arm64 binary support shipped Provides release binaries for the Windows arm64 CPU architecture. 1 release · first seen Jun 2022

release

Cross-platform service installation shipped Builds and installs the Nebula cyber tool as a system service on macOS and Windows operating systems. 1 other source · first seen Jan 2020

example

  • Build and install the Nebula service on macOS or Windows make service sudo nebula -service install v1.1.0 · Jan 2020 · source

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for Nebula, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail Nebula puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

16 entries

  1. October 20261
  2. July 20261
  3. February 20261
  4. January 20261
  5. December 20251
  6. July 20251
  7. September 20241
  8. May 20241
  9. December 20231
  10. May 20231
  11. June 20221
  12. November 20211
  13. May 20211
  14. September 20201
  15. April 20201
  16. January 20201
    Show

    16 entries

    Project health

    Issue, contributor and maintainer activity in slackhq/nebula, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 18 +3 vs prior 12 months
    2. Maintainers 3 +0 joined · −2 left, last 12 months
    3. Bus factor 2 committers behind half the commits
    4. Community-filed 88% of issues opened, last 12 months
    5. Median time to close 53 days first maintainer reply 6.8 hours
    6. Open backlog 55 of 624 issues ever filed
    1. Issues opened / month 1 · 2 communitymaintainers
    2. Open backlog 55
    3. Contributors / month 5
    4. Commits / month 11
    5. Stars 18,350
    Issue themes, last 12 months
    • bugs 3%
    • other 97%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    None of its release's images build from a lockfile we can read.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →