summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2022-02-21 11:29:18 +0100
committerLubomir Rintel <lkundrak@v3.sk>2022-02-21 11:30:44 +0100
commit0167f997f2fb0a304e37258cdf21052b68fba392 (patch)
tree6161403236c40d2e8519c2d9af1dd2382f503617
parent47ff99515f0ecbc791851f3c1a1c61fb7efc234c (diff)
downloadNetworkManager-lr/lxd-veth.tar.gz
udev: manage veths named eth*lr/lxd-veth
This is intended to unbreak LXD by default.
-rw-r--r--data/85-nm-unmanaged.rules6
1 files changed, 5 insertions, 1 deletions
diff --git a/data/85-nm-unmanaged.rules b/data/85-nm-unmanaged.rules
index eae8d7ce1c..b4f805cf74 100644
--- a/data/85-nm-unmanaged.rules
+++ b/data/85-nm-unmanaged.rules
@@ -24,7 +24,11 @@ ATTR{address}=="00:1c:42:*", ENV{INTERFACE}=="vnic[0-9]*", ENV{NM_UNMANAGED}="1"
# Virtual Ethernet device pair. Often used to communicate with a peer interface
# in another net namespace and managed by libvirt, Docker or the like.
-ENV{ID_NET_DRIVER}=="veth", ENV{NM_UNMANAGED}="1"
+# Generally we don't want to mess with those. One exception would be the
+# full system containers, like LXC or LXD. LXC containers run via libvirt
+# don't use udev, so this doesn't apply. LXD does, though. To deal with the
+# LXD situation, let's treat the devices called eth* as regular ethernet.
+ENV{ID_NET_DRIVER}=="veth", ENV{INTERFACE}!="eth[0-9]*", ENV{NM_UNMANAGED}="1"
# USB gadget device. Unmanage by default, since whatever created it
# might want to set it up itself (e.g. activate an ipv4.method=shared