Description
nebula is a supported sysext. When it starts, it creates a TUN interface and assigns an IP address to it. The rule in /usr/lib/systemd/network/zz-default.network matches this TUN interface, breaking IP assignment and leaving the interface without a proper address.
The rule uses the following matcher:
[Match]
Name=eth*
Type=!loopback bridge tunnel vxlan wireguard
Driver=!veth dummy
The Type of nebula's TUN interface is none according to networkctl list. Adding none to the Type list is confirmed to fix the issue.
Impact
nebula does not work because of this bug.
Additional information
While there is a simple workaround (copy the file to /etc/systemd/network/zz-default.network then add none to Type), I think the blacklist approach used in this config file may cause similar issues in the future. I recommend using a whitelist instead, and only match Type=ether wlan wwan.