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-23 09:35:15 +0100
commit1317bdd248c313b3776026c694ed1c5cd1058ba2 (patch)
tree7a6d52fa9c934ec34885dd5c637e1222336ace05
parent897977e960d90f6dbbc465cc99a3963d6b8e25d6 (diff)
downloadNetworkManager-1317bdd248c313b3776026c694ed1c5cd1058ba2.tar.gz
udev: manage veths named eth*
This is intended to unbreak LXD by default. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1112
-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