tun_linux: use IFF_TUN_EXCL to prevent multiple nebulas

This commit is contained in:
JackDoan
2026-07-31 10:45:34 -05:00
parent 16878eec1c
commit 575b97904d
+2 -1
View File
@@ -157,7 +157,8 @@ func offloadUSOEnabled(offloadFlags uint) bool {
}
func newTun(c *config.C, l *slog.Logger, vpnNetworks []netip.Prefix, multiqueue bool) (*tun, error) {
baseFlags := uint16(unix.IFF_TUN | unix.IFF_NO_PI)
// IFF_TUN_EXCL prevents us from attaching to an already-running tun
baseFlags := uint16(unix.IFF_TUN | unix.IFF_NO_PI | unix.IFF_TUN_EXCL)
if multiqueue {
baseFlags |= unix.IFF_MULTI_QUEUE
}