summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2022-10-18 11:56:48 +0200
committerMichael Biebl <biebl@debian.org>2022-10-18 11:56:48 +0200
commit9f101839d9e64df832e9e43c5181887369c46a7e (patch)
tree3e23589a9d4e9e7c32ce41b634ccf26af3f0d45e
parentab0efddcdb48d800e2f938da54cfe3074640792e (diff)
New upstream version 1.40.2 upstream/1.40.2
-rw-r--r--Makefile.am17
-rw-r--r--Makefile.in21
-rw-r--r--NEWS27
-rwxr-xr-xconfigure26
-rw-r--r--configure.ac2
-rw-r--r--docs/api/dbus-org.freedesktop.NetworkManager.xml2
-rw-r--r--docs/api/html/gdbus-org.freedesktop.NetworkManager.html2
-rw-r--r--docs/api/html/index.html2
-rw-r--r--docs/api/html/nm-dbus-types.html2
-rw-r--r--docs/api/version.xml2
-rw-r--r--docs/libnm/html/index.html2
-rw-r--r--docs/libnm/html/usage.html2
-rw-r--r--docs/libnm/version.xml2
-rw-r--r--introspection/org.freedesktop.NetworkManager.xml2
-rw-r--r--man/NetworkManager-dispatcher.84
-rw-r--r--man/NetworkManager-wait-online.service.84
-rw-r--r--man/NetworkManager.86
-rw-r--r--man/NetworkManager.conf.56
-rw-r--r--man/nm-cloud-setup.86
-rw-r--r--man/nm-initrd-generator.86
-rw-r--r--man/nm-online.16
-rw-r--r--man/nm-openvswitch.76
-rw-r--r--man/nm-settings-dbus.56
-rw-r--r--man/nm-settings-dbus.xml2
-rw-r--r--man/nm-settings-ifcfg-rh.56
-rw-r--r--man/nm-settings-ifcfg-rh.xml2
-rw-r--r--man/nm-settings-keyfile.56
-rw-r--r--man/nm-settings-keyfile.xml2
-rw-r--r--man/nm-settings-nmcli.56
-rw-r--r--man/nm-settings-nmcli.xml2
-rw-r--r--man/nmcli-examples.76
-rw-r--r--man/nmcli.16
-rw-r--r--man/nmtui.16
-rw-r--r--meson.build2
-rw-r--r--po/Makevars2
-rw-r--r--po/NetworkManager.pot62
-rw-r--r--po/as.po86
-rw-r--r--po/be@latin.po86
-rw-r--r--po/bg.po86
-rw-r--r--po/bn_IN.po86
-rw-r--r--po/bs.po86
-rw-r--r--po/ca.po86
-rw-r--r--po/cs.po86
-rw-r--r--po/da.po86
-rw-r--r--po/de.po86
-rw-r--r--po/dz.po86
-rw-r--r--po/el.po86
-rw-r--r--po/en_CA.po86
-rw-r--r--po/en_GB.po86
-rw-r--r--po/eo.po86
-rw-r--r--po/es.po86
-rw-r--r--po/et.po86
-rw-r--r--po/eu.po86
-rw-r--r--po/fi.po86
-rw-r--r--po/fr.po95
-rw-r--r--po/gd.po86
-rw-r--r--po/gl.po86
-rw-r--r--po/gu.po86
-rw-r--r--po/he.po86
-rw-r--r--po/hi.po86
-rw-r--r--po/hr.gmobin364800 -> 364643 bytes
-rw-r--r--po/hr.po95
-rw-r--r--po/hu.po86
-rw-r--r--po/id.po86
-rw-r--r--po/it.po86
-rw-r--r--po/ja.po95
-rw-r--r--po/ka.po86
-rw-r--r--po/kn.po86
-rw-r--r--po/ko.po95
-rw-r--r--po/ku.po86
-rw-r--r--po/lt.po86
-rw-r--r--po/lv.po86
-rw-r--r--po/mk.po86
-rw-r--r--po/ml.po86
-rw-r--r--po/mr.po86
-rw-r--r--po/nb.po86
-rw-r--r--po/ne.po86
-rw-r--r--po/nl.po86
-rw-r--r--po/oc.po86
-rw-r--r--po/or.po86
-rw-r--r--po/pa.po86
-rw-r--r--po/pl.po86
-rw-r--r--po/pt.po86
-rw-r--r--po/pt_BR.po86
-rw-r--r--po/ro.po86
-rw-r--r--po/ru.po95
-rw-r--r--po/rw.po86
-rw-r--r--po/sk.po86
-rw-r--r--po/sl.po86
-rw-r--r--po/sq.po86
-rw-r--r--po/sr.po86
-rw-r--r--po/sr@latin.po86
-rw-r--r--po/sv.po86
-rw-r--r--po/ta.po86
-rw-r--r--po/te.po86
-rw-r--r--po/th.po86
-rw-r--r--po/tr.po86
-rw-r--r--po/uk.gmobin619135 -> 618917 bytes
-rw-r--r--po/uk.po95
-rw-r--r--po/vi.po86
-rw-r--r--po/wa.po86
-rw-r--r--po/zh_CN.po95
-rw-r--r--po/zh_HK.po86
-rw-r--r--po/zh_TW.po86
-rw-r--r--src/core/devices/nm-device-bond.c95
-rw-r--r--src/core/devices/nm-device-private.h5
-rw-r--r--src/core/devices/nm-device-veth.c4
-rw-r--r--src/core/devices/nm-device.c96
-rw-r--r--src/core/devices/nm-device.h5
-rw-r--r--src/core/devices/ovs/nm-ovsdb.c155
-rw-r--r--src/core/dhcp/nm-dhcp-client.c175
-rw-r--r--src/core/dhcp/nm-dhcp-helper.c19
-rw-r--r--src/core/dns/nm-dns-manager.c9
-rw-r--r--src/core/nm-config-data.c57
-rw-r--r--src/core/nm-firewall-utils.c125
-rw-r--r--src/core/nm-firewall-utils.h13
-rw-r--r--src/core/nm-policy.c143
-rw-r--r--src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c58
-rw-r--r--src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib9
-rw-r--r--src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c74
-rw-r--r--src/libnm-core-impl/nm-setting-bond-port.c8
-rw-r--r--src/libnm-core-impl/nm-setting-bond.c71
-rw-r--r--src/libnm-core-impl/nm-setting-ip6-config.c3
-rw-r--r--src/libnm-core-impl/tests/test-setting.c61
-rw-r--r--src/libnm-core-intern/nm-core-internal.h5
-rw-r--r--src/libnm-core-public/nm-version-macros.h2
-rw-r--r--src/libnm-glib-aux/nm-keyfile-aux.c2
-rw-r--r--src/libnm-glib-aux/nm-shared-utils.c33
-rw-r--r--src/libnm-glib-aux/nm-shared-utils.h8
-rw-r--r--src/libnm-glib-aux/nm-str-buf.h9
-rw-r--r--src/libnm-glib-aux/tests/test-shared-general.c10
-rw-r--r--src/libnm-platform/nm-linux-platform.c81
-rw-r--r--src/libnm-platform/nm-netlink.c36
-rw-r--r--src/libnm-platform/nm-netlink.h6
-rw-r--r--src/libnm-platform/nm-platform.c14
-rw-r--r--src/libnm-platform/nm-platform.h3
-rw-r--r--src/libnm-platform/nmp-global-tracker.c20
-rw-r--r--src/libnm-platform/tests/test-nm-platform.c5
-rw-r--r--src/libnm-platform/wifi/nm-wifi-utils-nl80211.c2
-rw-r--r--src/libnm-platform/wpan/nm-wpan-utils.c2
-rw-r--r--src/nm-initrd-generator/nm-initrd-generator.h3
-rw-r--r--src/nm-initrd-generator/nmi-cmdline-reader.c6
-rw-r--r--src/nm-initrd-generator/nmi-dt-reader.c2
-rw-r--r--src/nm-initrd-generator/nmi-ibft-reader.c2
144 files changed, 3959 insertions, 3487 deletions
diff --git a/Makefile.am b/Makefile.am
index 109326c3..05b5ffc9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -168,6 +168,22 @@ if !BUILD_DOCS
 dist_configure_check += dist-configure-check
 endif
 
+# Gettext's Makefile has a race with parallel builds during dist.
+# Hack around that.
+# See also:
+#   https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1094#note_1435313
+#   https://lists.gnu.org/archive/html/bug-gettext/2022-06/msg00022.html
+#   https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1405
+po/.Makefile.patched:
+	sed -i \
+	    's#^dist2: \$$(srcdir)/stamp-po \$$(DISTFILES)#dist2: \$$(srcdir)/stamp-po\n\t\$$(MAKE) \$$(DISTFILES)#' \
+	    "$(builddir)/po/Makefile" && \
+	touch "$(builddir)/po/.Makefile.patched"
+
+DISTCLEANFILES += po/.Makefile.patched
+
+dist: po/.Makefile.patched
+
 dist: $(dist_configure_check) $(dist_dependencies)
 
 ###############################################################################
@@ -3433,6 +3449,7 @@ EXTRA_DIST += \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ibft \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-infiniband \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ip6-disabled.cexpected \
+	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-link_local \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-minimal \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-misc-variables \
diff --git a/Makefile.in b/Makefile.in
index d85cdccb..0813d5ba 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -4262,9 +4262,9 @@ CLEANFILES = $(introspection_sources) $(DBUS_INTERFACE_DOCS) \
 	cscope.po.out $(NULL) $(am__append_93)
 
 ###############################################################################
-DISTCLEANFILES = config-extra.h $(polkit_policy_DATA) \
-	src/libnm-client-impl/libnm.pc $(am__append_16) \
-	$(am__append_17) $(am__append_53)
+DISTCLEANFILES = config-extra.h po/.Makefile.patched \
+	$(polkit_policy_DATA) src/libnm-client-impl/libnm.pc \
+	$(am__append_16) $(am__append_17) $(am__append_53)
 
 ###############################################################################
 
@@ -4667,6 +4667,7 @@ EXTRA_DIST = src/c-stdaux/src/c-stdaux.h $(NULL) \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ibft \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-infiniband \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ip6-disabled.cexpected \
+	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-link_local \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-minimal \
 	src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-misc-variables \
@@ -21043,6 +21044,20 @@ dist-configure-check:
 	@echo "*** 'make dist' requires '--enable-gtk-doc --enable-introspection'. ***"
 	@false
 
+# Gettext's Makefile has a race with parallel builds during dist.
+# Hack around that.
+# See also:
+#   https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1094#note_1435313
+#   https://lists.gnu.org/archive/html/bug-gettext/2022-06/msg00022.html
+#   https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1405
+po/.Makefile.patched:
+	sed -i \
+	    's#^dist2: \$$(srcdir)/stamp-po \$$(DISTFILES)#dist2: \$$(srcdir)/stamp-po\n\t\$$(MAKE) \$$(DISTFILES)#' \
+	    "$(builddir)/po/Makefile" && \
+	touch "$(builddir)/po/.Makefile.patched"
+
+dist: po/.Makefile.patched
+
 dist: $(dist_configure_check) $(dist_dependencies)
 
 ###############################################################################
diff --git a/NEWS b/NEWS
index 8282b0fe..20e88c83 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,30 @@
+===============================================
+NetworkManager-1.40.2
+Overview of changes since NetworkManager-1.40.0
+===============================================
+
+* Ensure that resolv.conf gets updated when the configuration changes.
+* Fix setting as bond primary an interface that doesn't exist yet when the
+  bond is activated.
+* The number of autoconnect retries is now accounted independently for each
+  device when there are profiles with multi-connect=multiple.
+* Don't print duplicate entries in the output of "NetworkManager
+  --print-config"
+* Fix the ifcfg-rh plugin to properly read infiniband P-Key connection
+  profiles without an explicit interface name.
+* Allow the removal of a bond port connection profile from the bond via
+  nmcli.
+* Fix race condition during the activation of veth profiles when the peer
+  already exists.
+* Decline the DHCPv6 lease if all addresses fail IPv6 duplicate address
+  detection (DAD).
+* Wait that devices get carrier before trying to resolve the system hostname
+  on them via DNS.
+* Fix race condition during the initial activation of OVS interfaces.
+* Profiles generated by nm-initrd-generator now have lower than default
+  priority.
+* Fix error when adding many SR-IOV virtual functions (VFs).
+
 =============================================
 NetworkManager-1.40
 Overview of changes since NetworkManager-1.38
diff --git a/configure b/configure
index fe690381..3cccdb46 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for NetworkManager 1.40.0.
+# Generated by GNU Autoconf 2.71 for NetworkManager 1.40.2.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=NetworkManager>.
 #
@@ -622,8 +622,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='NetworkManager'
 PACKAGE_TARNAME='NetworkManager'
-PACKAGE_VERSION='1.40.0'
-PACKAGE_STRING='NetworkManager 1.40.0'
+PACKAGE_VERSION='1.40.2'
+PACKAGE_STRING='NetworkManager 1.40.2'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=NetworkManager'
 PACKAGE_URL=''
 
@@ -1744,7 +1744,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures NetworkManager 1.40.0 to adapt to many kinds of systems.
+\`configure' configures NetworkManager 1.40.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1816,7 +1816,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of NetworkManager 1.40.0:";;
+     short | recursive ) echo "Configuration of NetworkManager 1.40.2:";;
    esac
   cat <<\_ACEOF
 
@@ -2171,7 +2171,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-NetworkManager configure 1.40.0
+NetworkManager configure 1.40.2
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2892,7 +2892,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by NetworkManager $as_me 1.40.0, which was
+It was created by NetworkManager $as_me 1.40.2, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4388,7 +4388,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='NetworkManager'
- VERSION='1.40.0'
+ VERSION='1.40.2'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -19328,8 +19328,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 NM_MAJOR_VERSION=1
 NM_MINOR_VERSION=40
-NM_MICRO_VERSION=0
-NM_VERSION=1.40.0
+NM_MICRO_VERSION=2
+NM_VERSION=1.40.2
 
 
 
@@ -19337,7 +19337,7 @@ NM_VERSION=1.40.0
 
 
 
-NM_GIT_SHA=5d4802f7d869e2a91192dc75bf33cff892a3facf
+NM_GIT_SHA=4704b924ad584b467926dabddb8e726c1166ab5b
 
 if test """" != "no-config-h" ; then
 
@@ -32768,7 +32768,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by NetworkManager $as_me 1.40.0, which was
+This file was extended by NetworkManager $as_me 1.40.2, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -32836,7 +32836,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-NetworkManager config.status 1.40.0
+NetworkManager config.status 1.40.2
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 91548ed1..8a4803f9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -8,7 +8,7 @@ dnl    "shared/nm-version-macros.h.in"
 dnl  - update number in meson.build
 m4_define([nm_major_version], [1])
 m4_define([nm_minor_version], [40])
-m4_define([nm_micro_version], [0])
+m4_define([nm_micro_version], [2])
 m4_define([nm_version],
           [nm_major_version.nm_minor_version.nm_micro_version])
 
diff --git a/docs/api/dbus-org.freedesktop.NetworkManager.xml b/docs/api/dbus-org.freedesktop.NetworkManager.xml
index 31d0ad28..68c1cdbb 100644
--- a/docs/api/dbus-org.freedesktop.NetworkManager.xml
+++ b/docs/api/dbus-org.freedesktop.NetworkManager.xml
@@ -309,7 +309,7 @@ This method extends AddAndActivateConnection to allow passing further
 parameters. At this time the following options are supported:
 </para><para>
 * persist: A string value of either "disk" (default), "memory" or "volatile". If "memory" is passed, the connection will not be saved to disk. If "volatile" is passed, the connection will not be saved to disk and will be destroyed when disconnected.
-* bind-activation: Bind the activation lifetime. Set to "dbus-name" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
+* bind-activation: Bind the activation lifetime. Set to "dbus-client" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
 </para>
 <variablelist role="params">
 <varlistentry>
diff --git a/docs/api/html/gdbus-org.freedesktop.NetworkManager.html b/docs/api/html/gdbus-org.freedesktop.NetworkManager.html
index 628636fd..96ae6b68 100644
--- a/docs/api/html/gdbus-org.freedesktop.NetworkManager.html
+++ b/docs/api/html/gdbus-org.freedesktop.NetworkManager.html
@@ -371,7 +371,7 @@ parameters. At this time the following options are supported:
 </p>
 <p>
 * persist: A string value of either "disk" (default), "memory" or "volatile". If "memory" is passed, the connection will not be saved to disk. If "volatile" is passed, the connection will not be saved to disk and will be destroyed when disconnected.
-* bind-activation: Bind the activation lifetime. Set to "dbus-name" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
+* bind-activation: Bind the activation lifetime. Set to "dbus-client" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
 </p>
 <div class="variablelist"><table border="0" class="variablelist">
 <colgroup>
diff --git a/docs/api/html/index.html b/docs/api/html/index.html
index e753eef1..231490ab 100644
--- a/docs/api/html/index.html
+++ b/docs/api/html/index.html
@@ -16,7 +16,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">NetworkManager Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for NetworkManager 1.40.0
+      for NetworkManager 1.40.2
 
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="https://networkmanager.dev/docs/api/latest/" target="_top">https://networkmanager.dev/docs/api/latest/</a>.
diff --git a/docs/api/html/nm-dbus-types.html b/docs/api/html/nm-dbus-types.html
index 46152667..350f587f 100644
--- a/docs/api/html/nm-dbus-types.html
+++ b/docs/api/html/nm-dbus-types.html
@@ -3070,7 +3070,7 @@
 <hr>
 <div class="refsect2">
 <a name="NMMetered"></a><h3>enum NMMetered</h3>
-<p>The NMMetered enum has two different purposes: one is to configure "connection.metered" setting of a connection profile in NMSettingConnection, and the other is to express the actual metered state of the NMDevice at a given moment.</p>
+<p>The NMMetered enum has two different purposes: one is to configure "connection.metered" setting of a connection profile in NMSettingConnection, and the other is to express the actual metered state of the <a href="/usr/share/gtk-doc/html/libnm/NMDevice.html#NMDevice-struct">NMDevice</a> at a given moment.</p>
 <p>For the connection profile only NM_METERED_UNKNOWN, NM_METERED_NO and NM_METERED_YES are allowed.</p>
 <p>The device's metered state at runtime is determined by the profile which is currently active. If the profile explicitly specifies NM_METERED_NO or NM_METERED_YES, then the device's metered state is as such. If the connection profile leaves it undecided at NM_METERED_UNKNOWN (the default), then NetworkManager tries to guess the metered state, for example based on the device type or on DHCP options (like Android devices exposing a "ANDROID_METERED" DHCP vendor option). This then leads to either NM_METERED_GUESS_NO or NM_METERED_GUESS_YES.</p>
 <p>Most applications probably should treat the runtime state NM_METERED_GUESS_YES like NM_METERED_YES, and all other states as not metered.</p>
diff --git a/docs/api/version.xml b/docs/api/version.xml
index 32b7211c..148dabb4 100644
--- a/docs/api/version.xml
+++ b/docs/api/version.xml
@@ -1 +1 @@
-1.40.0
+1.40.2
diff --git a/docs/libnm/html/index.html b/docs/libnm/html/index.html
index f9ea840b..390c043d 100644
--- a/docs/libnm/html/index.html
+++ b/docs/libnm/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libnm Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for libnm 1.40.0
+      for libnm 1.40.2
 
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="https://networkmanager.dev/docs/libnm/latest/" target="_top">https://networkmanager.dev/docs/libnm/latest/</a>.
diff --git a/docs/libnm/html/usage.html b/docs/libnm/html/usage.html
index 5b5fb9ab..a4eedba2 100644
--- a/docs/libnm/html/usage.html
+++ b/docs/libnm/html/usage.html
@@ -96,7 +96,7 @@
         </p>
 <pre class="screen"><code class="prompt">$ </code><strong class="userinput"><code>cc $(pkg-config --libs --cflags libnm) -o hello-nm hello-nm.c</code></strong>
   <code class="prompt">$ </code><strong class="userinput"><code>./hello-nm</code></strong>
-  NetworkManager version: 1.40.0
+  NetworkManager version: 1.40.2
 
   <code class="prompt">$ </code></pre>
 <p>
diff --git a/docs/libnm/version.xml b/docs/libnm/version.xml
index 32b7211c..148dabb4 100644
--- a/docs/libnm/version.xml
+++ b/docs/libnm/version.xml
@@ -1 +1 @@
-1.40.0
+1.40.2
diff --git a/introspection/org.freedesktop.NetworkManager.xml b/introspection/org.freedesktop.NetworkManager.xml
index 65859881..16185706 100644
--- a/introspection/org.freedesktop.NetworkManager.xml
+++ b/introspection/org.freedesktop.NetworkManager.xml
@@ -130,7 +130,7 @@
         parameters. At this time the following options are supported:
 
          * persist: A string value of either "disk" (default), "memory" or "volatile". If "memory" is passed, the connection will not be saved to disk. If "volatile" is passed, the connection will not be saved to disk and will be destroyed when disconnected.
-         * bind-activation: Bind the activation lifetime. Set to "dbus-name" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
+         * bind-activation: Bind the activation lifetime. Set to "dbus-client" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
     -->
     <method name="AddAndActivateConnection2">
       <arg name="connection" type="a{sa{sv}}" direction="in"/>
diff --git a/man/NetworkManager-dispatcher.8 b/man/NetworkManager-dispatcher.8
index f196603c..cf0edb16 100644
--- a/man/NetworkManager-dispatcher.8
+++ b/man/NetworkManager-dispatcher.8
@@ -2,9 +2,9 @@
 .\"     Title: NetworkManager-dispatcher
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Network management daemons
-.\"    Source: NetworkManager-dispatcher 1.40.0
+.\"    Source: NetworkManager-dispatcher 1.40.2
 .\"  Language: English
 .\"
 .TH "NETWORKMANAGER\-DISPATCHER" "8" "" "NetworkManager\-dispatcher 1\&" "Network management daemons"
diff --git a/man/NetworkManager-wait-online.service.8 b/man/NetworkManager-wait-online.service.8
index 6d448854..a22ebb97 100644
--- a/man/NetworkManager-wait-online.service.8
+++ b/man/NetworkManager-wait-online.service.8
@@ -2,9 +2,9 @@
 .\"     Title: NetworkManager-wait-online.service
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Network management daemons
-.\"    Source: NetworkManager-wait-online.service 1.40.0
+.\"    Source: NetworkManager-wait-online.service 1.40.2
 .\"  Language: English
 .\"
 .TH "NETWORKMANAGER\-WAIT\-ONLINE\&" "8" "" "NetworkManager\-wait\-online\&" "Network management daemons"
diff --git a/man/NetworkManager.8 b/man/NetworkManager.8
index 8570a569..0681d6c7 100644
--- a/man/NetworkManager.8
+++ b/man/NetworkManager.8
@@ -2,12 +2,12 @@
 .\"     Title: NetworkManager
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Network management daemons
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NETWORKMANAGER" "8" "" "NetworkManager 1\&.40\&.0" "Network management daemons"
+.TH "NETWORKMANAGER" "8" "" "NetworkManager 1\&.40\&.2" "Network management daemons"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/NetworkManager.conf.5 b/man/NetworkManager.conf.5
index 2adc374a..4760e293 100644
--- a/man/NetworkManager.conf.5
+++ b/man/NetworkManager.conf.5
@@ -2,12 +2,12 @@
 .\"     Title: NetworkManager.conf
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Configuration
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NETWORKMANAGER\&.CONF" "5" "" "NetworkManager 1\&.40\&.0" "Configuration"
+.TH "NETWORKMANAGER\&.CONF" "5" "" "NetworkManager 1\&.40\&.2" "Configuration"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-cloud-setup.8 b/man/nm-cloud-setup.8
index 0d5a6c3e..7ffdc4c1 100644
--- a/man/nm-cloud-setup.8
+++ b/man/nm-cloud-setup.8
@@ -2,12 +2,12 @@
 .\"     Title: nm-cloud-setup
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Automatic Network Configuration in Cloud with NetworkManager
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-CLOUD\-SETUP" "8" "" "NetworkManager 1\&.40\&.0" "Automatic Network Configuratio"
+.TH "NM\-CLOUD\-SETUP" "8" "" "NetworkManager 1\&.40\&.2" "Automatic Network Configuratio"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-initrd-generator.8 b/man/nm-initrd-generator.8
index 7ec3ecf7..bcd9ec8b 100644
--- a/man/nm-initrd-generator.8
+++ b/man/nm-initrd-generator.8
@@ -2,12 +2,12 @@
 .\"     Title: nm-initrd-generator
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: System Administration
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-INITRD\-GENERATOR" "8" "" "NetworkManager 1\&.40\&.0" "System Administration"
+.TH "NM\-INITRD\-GENERATOR" "8" "" "NetworkManager 1\&.40\&.2" "System Administration"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-online.1 b/man/nm-online.1
index cf0dc253..9b19d6fd 100644
--- a/man/nm-online.1
+++ b/man/nm-online.1
@@ -2,12 +2,12 @@
 .\"     Title: nm-online
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: General Commands Manual
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-ONLINE" "1" "" "NetworkManager 1\&.40\&.0" "General Commands Manual"
+.TH "NM\-ONLINE" "1" "" "NetworkManager 1\&.40\&.2" "General Commands Manual"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-openvswitch.7 b/man/nm-openvswitch.7
index 4d43136e..e7aa3b16 100644
--- a/man/nm-openvswitch.7
+++ b/man/nm-openvswitch.7
@@ -2,12 +2,12 @@
 .\"     Title: nm-openvswitch
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Open vSwitch support overview
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-OPENVSWITCH" "7" "" "NetworkManager 1\&.40\&.0" "Open vSwitch support overview"
+.TH "NM\-OPENVSWITCH" "7" "" "NetworkManager 1\&.40\&.2" "Open vSwitch support overview"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-settings-dbus.5 b/man/nm-settings-dbus.5
index 38b29ab1..03ebbe7f 100644
--- a/man/nm-settings-dbus.5
+++ b/man/nm-settings-dbus.5
@@ -2,12 +2,12 @@
 .\"     Title: nm-settings-dbus
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Configuration
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-SETTINGS\-DBUS" "5" "" "NetworkManager 1\&.40\&.0" "Configuration"
+.TH "NM\-SETTINGS\-DBUS" "5" "" "NetworkManager 1\&.40\&.2" "Configuration"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-settings-dbus.xml b/man/nm-settings-dbus.xml
index 801989ab..d95c22ff 100644
--- a/man/nm-settings-dbus.xml
+++ b/man/nm-settings-dbus.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
-<refentry id="nm-settings-dbus"><refentryinfo><title>nm-settings-dbus</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-dbus</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.0</refmiscinfo></refmeta><refnamediv><refname>nm-settings-dbus</refname><refpurpose>Description of settings and properties of NetworkManager connection profiles on the D-Bus API</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
+<refentry id="nm-settings-dbus"><refentryinfo><title>nm-settings-dbus</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-dbus</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.2</refmiscinfo></refmeta><refnamediv><refname>nm-settings-dbus</refname><refpurpose>Description of settings and properties of NetworkManager connection profiles on the D-Bus API</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
           NetworkManager is based on a concept of connection profiles, sometimes referred to as
           connections only. These connection profiles contain a network configuration. When
           NetworkManager activates a connection profile on a network device the configuration will
diff --git a/man/nm-settings-ifcfg-rh.5 b/man/nm-settings-ifcfg-rh.5
index 0d18d751..2167417a 100644
--- a/man/nm-settings-ifcfg-rh.5
+++ b/man/nm-settings-ifcfg-rh.5
@@ -2,12 +2,12 @@
 .\"     Title: nm-settings-ifcfg-rh
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Configuration
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-SETTINGS\-IFCFG\-RH" "5" "" "NetworkManager 1\&.40\&.0" "Configuration"
+.TH "NM\-SETTINGS\-IFCFG\-RH" "5" "" "NetworkManager 1\&.40\&.2" "Configuration"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-settings-ifcfg-rh.xml b/man/nm-settings-ifcfg-rh.xml
index e90f042b..51b035dd 100644
--- a/man/nm-settings-ifcfg-rh.xml
+++ b/man/nm-settings-ifcfg-rh.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
-<refentry id="nm-settings-ifcfg-rh"><refentryinfo><title>nm-settings-ifcfg-rh</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-ifcfg-rh</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.0</refmiscinfo></refmeta><refnamediv><refname>nm-settings-ifcfg-rh</refname><refpurpose>Description of <emphasis>ifcfg-rh</emphasis> settings plugin</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
+<refentry id="nm-settings-ifcfg-rh"><refentryinfo><title>nm-settings-ifcfg-rh</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-ifcfg-rh</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.2</refmiscinfo></refmeta><refnamediv><refname>nm-settings-ifcfg-rh</refname><refpurpose>Description of <emphasis>ifcfg-rh</emphasis> settings plugin</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
           NetworkManager is based on the concept of connection profiles that contain
           network configuration (see <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details). The profiles can be
           stored in various formats. NetworkManager uses plugins for reading and writing
diff --git a/man/nm-settings-keyfile.5 b/man/nm-settings-keyfile.5
index d606f22b..d150e877 100644
--- a/man/nm-settings-keyfile.5
+++ b/man/nm-settings-keyfile.5
@@ -2,12 +2,12 @@
 .\"     Title: nm-settings-keyfile
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Configuration
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-SETTINGS\-KEYFILE" "5" "" "NetworkManager 1\&.40\&.0" "Configuration"
+.TH "NM\-SETTINGS\-KEYFILE" "5" "" "NetworkManager 1\&.40\&.2" "Configuration"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-settings-keyfile.xml b/man/nm-settings-keyfile.xml
index 9805649e..9aed9dd8 100644
--- a/man/nm-settings-keyfile.xml
+++ b/man/nm-settings-keyfile.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
-<refentry id="nm-settings-keyfile"><refentryinfo><title>nm-settings-keyfile</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-keyfile</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.0</refmiscinfo></refmeta><refnamediv><refname>nm-settings-keyfile</refname><refpurpose>Description of <emphasis>keyfile</emphasis> settings plugin</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
+<refentry id="nm-settings-keyfile"><refentryinfo><title>nm-settings-keyfile</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-keyfile</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.2</refmiscinfo></refmeta><refnamediv><refname>nm-settings-keyfile</refname><refpurpose>Description of <emphasis>keyfile</emphasis> settings plugin</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
           NetworkManager is based on the concept of connection profiles that contain
           network configuration (see <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details). The profiles can be
           stored in various formats. NetworkManager uses plugins for reading and writing
diff --git a/man/nm-settings-nmcli.5 b/man/nm-settings-nmcli.5
index be46876f..6638379f 100644
--- a/man/nm-settings-nmcli.5
+++ b/man/nm-settings-nmcli.5
@@ -2,12 +2,12 @@
 .\"     Title: nm-settings-nmcli
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Configuration
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NM\-SETTINGS\-NMCLI" "5" "" "NetworkManager 1\&.40\&.0" "Configuration"
+.TH "NM\-SETTINGS\-NMCLI" "5" "" "NetworkManager 1\&.40\&.2" "Configuration"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nm-settings-nmcli.xml b/man/nm-settings-nmcli.xml
index 4af75f0b..e2d6c5e7 100644
--- a/man/nm-settings-nmcli.xml
+++ b/man/nm-settings-nmcli.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
-<refentry id="nm-settings-nmcli"><refentryinfo><title>nm-settings-nmcli</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-nmcli</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.0</refmiscinfo></refmeta><refnamediv><refname>nm-settings-nmcli</refname><refpurpose>Description of settings and properties of NetworkManager connection profiles for nmcli</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
+<refentry id="nm-settings-nmcli"><refentryinfo><title>nm-settings-nmcli</title><author>NetworkManager developers</author></refentryinfo><refmeta><refentrytitle>nm-settings-nmcli</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.40.2</refmiscinfo></refmeta><refnamediv><refname>nm-settings-nmcli</refname><refpurpose>Description of settings and properties of NetworkManager connection profiles for nmcli</refpurpose></refnamediv><refsect1 id="description"><title>Description</title><para>
           NetworkManager is based on a concept of connection profiles, sometimes referred to as
           connections only. These connection profiles contain a network configuration. When
           NetworkManager activates a connection profile on a network device the configuration will
diff --git a/man/nmcli-examples.7 b/man/nmcli-examples.7
index 85808e98..dc701849 100644
--- a/man/nmcli-examples.7
+++ b/man/nmcli-examples.7
@@ -2,12 +2,12 @@
 .\"     Title: nmcli-examples
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: Examples
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NMCLI\-EXAMPLES" "7" "" "NetworkManager 1\&.40\&.0" "Examples"
+.TH "NMCLI\-EXAMPLES" "7" "" "NetworkManager 1\&.40\&.2" "Examples"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nmcli.1 b/man/nmcli.1
index 4a4661c8..289f66a8 100644
--- a/man/nmcli.1
+++ b/man/nmcli.1
@@ -2,12 +2,12 @@
 .\"     Title: nmcli
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: General Commands Manual
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NMCLI" "1" "" "NetworkManager 1\&.40\&.0" "General Commands Manual"
+.TH "NMCLI" "1" "" "NetworkManager 1\&.40\&.2" "General Commands Manual"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/man/nmtui.1 b/man/nmtui.1
index 96bb5ec4..546f4d21 100644
--- a/man/nmtui.1
+++ b/man/nmtui.1
@@ -2,12 +2,12 @@
 .\"     Title: nmtui
 .\"    Author: 
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 08/26/2022
+.\"      Date: 10/18/2022
 .\"    Manual: General Commands Manual
-.\"    Source: NetworkManager 1.40.0
+.\"    Source: NetworkManager 1.40.2
 .\"  Language: English
 .\"
-.TH "NMTUI" "1" "" "NetworkManager 1\&.40\&.0" "General Commands Manual"
+.TH "NMTUI" "1" "" "NetworkManager 1\&.40\&.2" "General Commands Manual"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff --git a/meson.build b/meson.build
index 996617f4..3b90e8e0 100644
--- a/meson.build
+++ b/meson.build
@@ -6,7 +6,7 @@ project(
 #  - add corresponding NM_VERSION_x_y_z macros in
 #    "src/libnm-core-public/nm-version-macros.h.in"
 #  - update number in configure.ac
-  version: '1.40.0',
+  version: '1.40.2',
   license: 'GPL2+',
   default_options: [
     'buildtype=debugoptimized',
diff --git a/po/Makevars b/po/Makevars
index ebd690f6..b858b6db 100644
--- a/po/Makevars
+++ b/po/Makevars
@@ -75,4 +75,4 @@ PO_DEPENDS_ON_POT = no
 # regenerate PO files on "make dist".  Possible values are "yes" and
 # "no".  Set this to no if the POT file and PO files are maintained
 # externally.
-DIST_DEPENDS_ON_UPDATE_PO = yes
+DIST_DEPENDS_ON_UPDATE_PO = no
diff --git a/po/NetworkManager.pot b/po/NetworkManager.pot
index bb133641..263569a1 100644
--- a/po/NetworkManager.pot
+++ b/po/NetworkManager.pot
@@ -6,10 +6,10 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: NetworkManager 1.40.0\n"
+"Project-Id-Version: NetworkManager 1.40.2\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-10-18 10:10+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -608,25 +608,25 @@ msgstr ""
 msgid "VPN connection"
 msgstr ""
 
-#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5612
+#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5594
 #: src/libnm-client-impl/nm-device.c:1779
 #: src/libnm-core-impl/nm-connection.c:3172 src/nmtui/nm-editor-utils.c:196
 msgid "Bond"
 msgstr ""
 
-#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5683
+#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5665
 #: src/libnm-client-impl/nm-device.c:1781
 #: src/libnm-core-impl/nm-connection.c:3174 src/nmtui/nm-editor-utils.c:214
 msgid "Team"
 msgstr ""
 
-#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:6020
+#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:6002
 #: src/libnm-client-impl/nm-device.c:1783
 #: src/libnm-core-impl/nm-connection.c:3176 src/nmtui/nm-editor-utils.c:205
 msgid "Bridge"
 msgstr ""
 
-#: src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c:8755
+#: src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c:8801
 #: src/libnm-core-impl/nm-team-utils.c:2391
 msgid "invalid json"
 msgstr ""
@@ -1573,8 +1573,14 @@ msgid "missing setting"
 msgstr ""
 
 #: src/libnm-core-impl/nm-setting-bond-port.c:92
+#: src/libnm-core-impl/nm-setting-bridge-port.c:338
+#: src/libnm-core-impl/nm-setting-ovs-interface.c:312
+#: src/libnm-core-impl/nm-setting-ovs-port.c:193
+#: src/libnm-core-impl/nm-setting-team-port.c:333
 #, c-format
-msgid "A connection with a '%s' setting must have the slave-type set to '%s'"
+msgid ""
+"A connection with a '%s' setting must have the slave-type set to '%s'. "
+"Instead it is '%s'"
 msgstr ""
 
 #: src/libnm-core-impl/nm-setting-bond.c:504
@@ -1601,84 +1607,74 @@ msgstr ""
 msgid "invalid value '%s' for option '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:861
+#: src/libnm-core-impl/nm-setting-bond.c:888
 #, c-format
 msgid "mandatory option '%s' is missing"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:871
+#: src/libnm-core-impl/nm-setting-bond.c:898
 #, c-format
 msgid "'%s' is not a valid value for '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:884
+#: src/libnm-core-impl/nm-setting-bond.c:911
 #, c-format
 msgid "'%s=%s' is incompatible with '%s > 0'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:901
+#: src/libnm-core-impl/nm-setting-bond.c:928
 #, c-format
 msgid "'%s' is not valid for the '%s' option: %s"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:913
+#: src/libnm-core-impl/nm-setting-bond.c:940
 #, c-format
 msgid "'%s' option is only valid for '%s=%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:926
+#: src/libnm-core-impl/nm-setting-bond.c:953
 #, c-format
 msgid "'%s=%s' is not a valid configuration for '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:941
-#: src/libnm-core-impl/nm-setting-bond.c:952
-#: src/libnm-core-impl/nm-setting-bond.c:965
+#: src/libnm-core-impl/nm-setting-bond.c:968
+#: src/libnm-core-impl/nm-setting-bond.c:979
+#: src/libnm-core-impl/nm-setting-bond.c:992
 #, c-format
 msgid "'%s' option requires '%s' option to be enabled"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:982
+#: src/libnm-core-impl/nm-setting-bond.c:1009
 #, c-format
 msgid "'%s' option needs to be a value multiple of '%s' value"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:999
-#: src/libnm-core-impl/nm-setting-bond.c:1010
+#: src/libnm-core-impl/nm-setting-bond.c:1026
+#: src/libnm-core-impl/nm-setting-bond.c:1037
 #, c-format
 msgid "'%s' option requires '%s' option to be set"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:1023
+#: src/libnm-core-impl/nm-setting-bond.c:1050
 #, c-format
 msgid "'%s' option is only valid with mode '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:1036
+#: src/libnm-core-impl/nm-setting-bond.c:1063
 #, c-format
 msgid "'%s' and '%s' cannot have different values"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:1059
+#: src/libnm-core-impl/nm-setting-bond.c:1086
 #, c-format
 msgid "'%s' option should be string"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bond.c:1072
+#: src/libnm-core-impl/nm-setting-bond.c:1099
 #, c-format
 msgid "'%s' option is not valid with mode '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-bridge-port.c:338
-#: src/libnm-core-impl/nm-setting-ovs-interface.c:312
-#: src/libnm-core-impl/nm-setting-ovs-port.c:193
-#: src/libnm-core-impl/nm-setting-team-port.c:333
-#, c-format
-msgid ""
-"A connection with a '%s' setting must have the slave-type set to '%s'. "
-"Instead it is '%s'"
-msgstr ""
-
 #: src/libnm-core-impl/nm-setting-bridge.c:1175
 #, c-format
 msgid "value '%d' is out of range <%d-%d>"
diff --git a/po/as.po b/po/as.po
index 5ed0f2c3..ad3c9179 100644
--- a/po/as.po
+++ b/po/as.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:06-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Assamese <kde-i18n-doc@kde.org>\n"
@@ -1237,7 +1237,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1587,7 +1587,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1875,7 +1875,7 @@ msgstr "মান '%s' à¦à¦Ÿà¦¾ বৈধ UUID নহয়"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "মান '%s' à¦à¦Ÿà¦¾ বৈধ UUID নহয়"
@@ -1884,52 +1884,56 @@ msgstr "মান '%s' à¦à¦Ÿà¦¾ বৈধ UUID নহয়"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' বৈধ নহয়; [%s] অথবা [%s] বà§à¦¯à§±à¦¹à¦¾à§° কৰক"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "সূচী '%s' বৈধ নহয়"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "অবৈধ IPv4 পথ '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "বৈশিষà§à¦Ÿà§à¦¯ ধৰণ '%s' লৈ সংহতি কৰিব লাগিব"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type '%s' à§° সংযোগত à¦à¦Ÿà¦¾ '%s' সংহতিৰ পà§à§°à§Ÿà§‹à¦œà¦¨"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' অথবা '%s' সংহতিৰ পà§à§°à§Ÿà§‹à¦œà¦¨"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6094,29 +6098,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7350,13 +7350,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/be@latin.po b/po/be@latin.po
index 15151904..35afe9f8 100644
--- a/po/be@latin.po
+++ b/po/be@latin.po
@@ -3,7 +3,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2008-03-29 21:43+0200\n"
 "Last-Translator: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>\n"
 "Language-Team: Belarusian Latin <i18n@mova.org>\n"
@@ -1134,7 +1134,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1475,7 +1475,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1756,7 +1756,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1765,50 +1765,54 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5670,29 +5674,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6926,13 +6926,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/bg.po b/po/bg.po
index 71accb23..94fd8cff 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -11,7 +11,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:07-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
@@ -1228,7 +1228,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1574,7 +1574,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1860,7 +1860,7 @@ msgstr "Ограничението на времето „%s“ не е прав
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Ограничението на времето „%s“ не е правилно."
@@ -1869,52 +1869,56 @@ msgstr "Ограничението на времето „%s“ не е прав
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Ограничението на времето „%s“ не е правилно."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Грешка: „%s“ не е правилна команда за „nm“."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "грешно поле „%s“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5938,29 +5942,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7194,13 +7194,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/bn_IN.po b/po/bn_IN.po
index f0571150..a30d967f 100644
--- a/po/bn_IN.po
+++ b/po/bn_IN.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:09-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Bengali (India) <kde-i18n-doc@kde.org>\n"
@@ -1256,7 +1256,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1606,7 +1606,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1898,7 +1898,7 @@ msgstr "মান '%s' à¦à¦•টি বৈধ UUID নয়"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "মান '%s' à¦à¦•টি বৈধ UUID নয়"
@@ -1907,52 +1907,56 @@ msgstr "মান '%s' à¦à¦•টি বৈধ UUID নয়"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' বৈধ নয়; বà§à¦¯à¦¬à¦¹à¦¾à¦° করà§à¦¨ [%s] বা [%s]"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "সূচি '%s' বৈধ নয়"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "অবৈধ IPv4 রাউট '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "বিশিষà§à¦Ÿà¦¤à¦¾ ধরন '%s' ঠসেট করা উচিত"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "সà§à¦²à§‡à¦­-ধরন '%s' -à¦à¦° সংযোগে à¦à¦•টি '%s' সেটিং -à¦à¦° পà§à¦°à¦¯à¦¼à§‹à¦œà¦¨"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' বা '%s' সেটিং à¦à¦° পà§à¦°à¦¯à¦¼à§‹à¦œà¦¨"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6124,29 +6128,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7380,13 +7380,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/bs.po b/po/bs.po
index 306fd6da..52e6a128 100644
--- a/po/bs.po
+++ b/po/bs.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:12-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Bosnian <lokal@linux.org.ba>\n"
@@ -1170,7 +1170,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1511,7 +1511,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1792,7 +1792,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1801,50 +1801,54 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5730,29 +5734,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6986,13 +6986,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ca.po b/po/ca.po
index 389cba24..e9c835e1 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -14,7 +14,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:12-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Catalan <tradgnome@softcatala.org>\n"
@@ -1242,7 +1242,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1590,7 +1590,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1881,7 +1881,7 @@ msgstr "el valor %d mesurat no és vàlid"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "el valor %d mesurat no és vàlid"
@@ -1890,41 +1890,45 @@ msgstr "el valor %d mesurat no és vàlid"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Les etiquetes «%u» no són vàlides; useu una combinació de %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "file:// URI no és UTF-8 vàlida"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ruta no vàlida: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "el tipus de propietat s'hauria d'establir a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "el tipus d'esclava «%s» requereix un paràmetre «%s» a la connexió"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1933,14 +1937,14 @@ msgstr ""
 "Detecta una connexió esclava amb «%s» establert i un tipus de port «%s». "
 "«%s» hauria d'establir-se a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Detecta una connexió esclava amb «%s» establert i un tipus de port «%s». "
 "«%s» hauria d'establir-se a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6191,29 +6195,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7447,13 +7447,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/cs.po b/po/cs.po
index 6542fb29..2c5834d4 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -17,7 +17,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2018-09-30 14:02+0200\n"
 "Last-Translator: Daniel Rusek <mail@asciiwolf.com>\n"
 "Language-Team: Czech <gnome-cs-list@gnome.org>\n"
@@ -1200,7 +1200,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1545,7 +1545,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1832,7 +1832,7 @@ msgstr "Chyba: hodnota Äasového limitu „%s“ není platná."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Chyba: hodnota Äasového limitu „%s“ není platná."
@@ -1841,52 +1841,56 @@ msgstr "Chyba: hodnota Äasového limitu „%s“ není platná."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Chyba: hodnota Äasového limitu „%s“ není platná."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Chyba: příkaz „%s“ není pro „nm“ platný."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "neplatné pole „%s“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5893,29 +5897,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7149,13 +7149,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/da.po b/po/da.po
index 5053e486..9cb8c4a0 100644
--- a/po/da.po
+++ b/po/da.po
@@ -13,7 +13,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2020-12-30 00:00+0200\n"
 "Last-Translator: scootergrisen\n"
 "Language-Team: Danish\n"
@@ -1212,7 +1212,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1558,7 +1558,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1845,7 +1845,7 @@ msgstr "Fejl: Værdi for tidsudløb “%s†er ikke korrekt."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Fejl: Værdi for tidsudløb “%s†er ikke korrekt."
@@ -1854,52 +1854,56 @@ msgstr "Fejl: Værdi for tidsudløb “%s†er ikke korrekt."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Fejl: Værdi for tidsudløb “%s†er ikke korrekt."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Fejl: “nmâ€-kommando “%s†er ikke gyldig."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ugyldigt felt “%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5878,29 +5882,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7134,13 +7134,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/de.po b/po/de.po
index 202144c2..f4270905 100644
--- a/po/de.po
+++ b/po/de.po
@@ -24,7 +24,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2018-07-15 17:31+0200\n"
 "Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
 "Language-Team: Deutsch <gnome-de@gnome.org>\n"
@@ -1257,7 +1257,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1603,7 +1603,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1895,7 +1895,7 @@ msgstr "Der gemessene Wert %d ist ungültig"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Der mdns-Wert %d ist ungültig"
@@ -1904,44 +1904,48 @@ msgstr "Der mdns-Wert %d ist ungültig"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Flags »%u« sind ungültig. Verwenden Sie eine Kombination von %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "Schnittstellenname ist länger als 15 Zeichen"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Die Adresse ist kein gültiges UTF-8"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ungültiger Runner »%s«"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "Der Eigenschaftentyp sollte auf »%s« eingestellt sein"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 "Der Slave-Typ »%s« erfordert das Vorhandensein der Einstellung »%s« in der "
 "Verbindung"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1950,14 +1954,14 @@ msgstr ""
 "Eine Slave-Verbindung mit gesetztem »%s« und dem Port-Typ »%s« erkennen. "
 "»%s« sollte auf »%s« gesetzt werden."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Eine Slave-Verbindung mit gesetztem »%s« für »%s« darf nicht die Einstellung "
 "»%s« haben"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6254,29 +6258,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -8084,13 +8084,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/dz.po b/po/dz.po
index eb12a219..6cc550b5 100644
--- a/po/dz.po
+++ b/po/dz.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2007-03-20 10:17+0530\n"
 "Last-Translator: sonam pelden <sonaa_peldn@yahoo.com>\n"
 "Language-Team: Dzongkha <pgeyleg@dit.gov.bt>\n"
@@ -1172,7 +1172,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1515,7 +1515,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1798,7 +1798,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1807,52 +1807,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "à½à½²à¼‹à½”ི་ཨེན་མà½à½´à½‘་ལམ་འདི་à½à¼‹à½¦à¾à½¼à½„་བརà¾à¾±à½–་མ་ཚུགས་"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "à½à½²à¼‹à½”ི་ཨེན་མà½à½´à½‘་ལམ་'%s'སླར་འདྲེན་འབདà½à¼‹à½‘་འཛོལ་བ་"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5793,29 +5797,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7051,13 +7051,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/el.po b/po/el.po
index f43e7bca..4702122f 100644
--- a/po/el.po
+++ b/po/el.po
@@ -15,7 +15,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-05-29 11:19-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: team@lists.gnome.gr\n"
@@ -1279,7 +1279,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1629,7 +1629,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1917,7 +1917,7 @@ msgstr "η τιμή '%s' δεν είναι έγκυÏο UUID"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "η τιμή '%s' δεν είναι έγκυÏο UUID"
@@ -1926,52 +1926,56 @@ msgstr "η τιμή '%s' δεν είναι έγκυÏο UUID"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "το '%s' δεν είναι έγκυÏο· χÏησιμοποιήστε [%s] ή [%s]"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "ο δείκτης '%s' δεν είναι έγκυÏος"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "άκυÏη επιλογή '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, fuzzy, c-format
 msgid "property type should be set to '%s'"
 msgstr "αυτή η ιδιότητα δεν μποÏεί να είναι κενή για '%s=%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "απαιτεί την παÏουσία της ÏÏθμισης '%s' στη σÏνδεση"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "απαιτεί '%s' ή ÏÏθμιση '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6152,29 +6156,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7408,13 +7408,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/en_CA.po b/po/en_CA.po
index f693e3b5..dba24013 100644
--- a/po/en_CA.po
+++ b/po/en_CA.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2005-09-06 14:52-0400\n"
 "Last-Translator: Adam Weinberger <adamw@gnome.org>\n"
 "Language-Team: Canadian English <adamw@gnome.org>\n"
@@ -1198,7 +1198,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1541,7 +1541,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1825,7 +1825,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "VPN connection '%s' said:"
@@ -1834,52 +1834,56 @@ msgstr "VPN connection '%s' said:"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Error displaying connection information:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "IP Address:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "IP Address:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5887,29 +5891,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7146,13 +7146,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/en_GB.po b/po/en_GB.po
index a12c6545..6a17cba6 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:17-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Sugar Labs\n"
@@ -1230,7 +1230,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1577,7 +1577,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1864,7 +1864,7 @@ msgstr "Error: timeout value '%s' is not valid."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Error: timeout value '%s' is not valid."
@@ -1873,52 +1873,56 @@ msgstr "Error: timeout value '%s' is not valid."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Error: timeout value '%s' is not valid."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Error: 'nm' command '%s' is not valid."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "invalid field '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5928,29 +5932,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7184,13 +7184,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/eo.po b/po/eo.po
index 0db41ea4..6fd82e19 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -14,7 +14,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2020-01-12 14:16+0100\n"
 "Last-Translator: Carmen Bianca BAKKER <carmen@carmenbianca.eu>\n"
 "Language-Team: Esperanto <gnome-eo-list@gnome.org>\n"
@@ -1187,7 +1187,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1531,7 +1531,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1818,7 +1818,7 @@ msgstr "Eraro: eltempiÄa valoro '%s' ne validas"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "valoro %d ne validas"
@@ -1827,52 +1827,56 @@ msgstr "valoro %d ne validas"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Eraro: eltempiÄa valoro '%s' ne validas"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Eraro: 'nm'-komando '%s' ne validas"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "nevalida kampo \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5818,29 +5822,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7074,13 +7074,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/es.po b/po/es.po
index 60b5b7bf..5875c044 100644
--- a/po/es.po
+++ b/po/es.po
@@ -24,7 +24,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-05-03 09:09+0200\n"
 "Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
 "Language-Team: es <gnome-es-list@gnome.org>\n"
@@ -1238,7 +1238,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1583,7 +1583,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1875,7 +1875,7 @@ msgstr "El valor medido %d no es válido"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "el valor %d no es válido"
@@ -1884,42 +1884,46 @@ msgstr "el valor %d no es válido"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Los indicadores «%u» no son válidos; use una combinación de %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "el nombre de interfaz es mayor que 15 caracteres"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "El URI no es un UTF-8 válido"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "permiso no válido «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "El tipo de propiedad debe establecerse a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "El tipo de esclavo «%s» requiere un parámetro «%s» en la conexión"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1928,14 +1932,14 @@ msgstr ""
 "Detecta una conexión esclava con «%s» establecido y un tipo de puerto «%s». "
 "«%s» se debe establecer a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Una conexión esclava con «%s» establecido a «%s» no puede tener un parámetro "
 "«%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6223,29 +6227,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -8012,13 +8012,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/et.po b/po/et.po
index c17ce568..d583336a 100644
--- a/po/et.po
+++ b/po/et.po
@@ -15,7 +15,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:05-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Estonian <gnome-et@linux.ee>\n"
@@ -1155,7 +1155,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1497,7 +1497,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1779,7 +1779,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1788,52 +1788,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Privaatvõtit ei saa dešifreerida."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "Sertifikaadi andmete lähtestamine nurjus: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5728,29 +5732,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6984,13 +6984,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/eu.po b/po/eu.po
index ddf61216..7045bd6b 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:06-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Basque <itzulpena@euskalgnu.org>\n"
@@ -1208,7 +1208,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1552,7 +1552,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1837,7 +1837,7 @@ msgstr "Errorea: denbora-mugaren '%s' balioa ez da baliozkoa."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Errorea: denbora-mugaren '%s' balioa ez da baliozkoa."
@@ -1846,52 +1846,56 @@ msgstr "Errorea: denbora-mugaren '%s' balioa ez da baliozkoa."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Errorea: denbora-mugaren '%s' balioa ez da baliozkoa."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Errorea: 'nm' komandoko '%s' ez da baliozkoa."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "VPNren ezkutukoak baliogabeak"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5890,29 +5894,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7146,13 +7146,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/fi.po b/po/fi.po
index 8a7315ac..dd9c49fb 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -14,7 +14,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:18-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n"
@@ -1208,7 +1208,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1554,7 +1554,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1838,7 +1838,7 @@ msgstr "Virhe: Kytkentäajan asetus '%s' virheellinen"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Virhe: Kytkentäajan asetus '%s' virheellinen"
@@ -1847,52 +1847,56 @@ msgstr "Virhe: Kytkentäajan asetus '%s' virheellinen"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Virhe: Kytkentäajan asetus '%s' virheellinen"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Virhe: Kytkentäajan asetus '%s' virheellinen"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "Virhe: annettu parametri on virheellinen."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5871,29 +5875,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7127,13 +7127,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/fr.po b/po/fr.po
index 02568e99..db704f57 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -16,7 +16,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-08-15 10:06+0000\n"
 "Last-Translator: ljanda <ljanda@redhat.com>\n"
 "Language-Team: French <trans-fr@lists.fedoraproject.org>\n"
@@ -1241,7 +1241,7 @@ msgstr "uuid inattendu %s au lieu de %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1590,7 +1590,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1878,7 +1878,7 @@ msgstr "valeur contrôlée %d non valide"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "la valeur %d n’est pas valide"
@@ -1887,43 +1887,47 @@ msgstr "la valeur %d n’est pas valide"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 "les marqueurs « %u » ne sont pas valides ; utilisez une combinaison de %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "L'option DHCP ne peut pas comporter plus de 255 caractères"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "L'URL MUD n'est pas une URL valide"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "permission non valide \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "le type de propriété doit être défini sur « %s »"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 "le type d'esclave « %s » requiert la présence du paramètre « %s » dans la "
 "connexion"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1932,14 +1936,14 @@ msgstr ""
 "Détecte une connexion esclave avec « %s » défini et un type de port « %s ». "
 "« %s » doit être défini sur « %s »"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Une connexion esclave avec « %s » définie à « %s » ne peut pas avoir un "
 "paramètre « %s »"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6245,29 +6249,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -8167,24 +8167,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "La passerelle associée à cette configuration. Cela n'a de sens que si des "
 "\"adresses\" sont également définies. Le but principal de la passerelle est "
diff --git a/po/gd.po b/po/gd.po
index e8f83997..c4bc3cb2 100644
--- a/po/gd.po
+++ b/po/gd.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2016-01-29 11:29+0100\n"
 "Last-Translator: GunChleoc <fios@foramnagaidhlig.net>\n"
 "Language-Team: Fòram na Gàidhlig\n"
@@ -1193,7 +1193,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1541,7 +1541,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1828,7 +1828,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "chan eil \"%s\" 'na luach dligheach airson na buaidh"
@@ -1837,52 +1837,56 @@ msgstr "chan eil \"%s\" 'na luach dligheach airson na buaidh"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "chan eil \"%s\" na rèiteachadh sgioba no ainm faidhle dligheach."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "chan eil \"%s\" 'na luach dligheach airson na buaidh"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "geata \"%s\" mì-dhligheach"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, fuzzy, c-format
 msgid "property type should be set to '%s'"
 msgstr "chan fhaod a' bhuadh seo a bhith falamh airson \"%s=%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5893,29 +5897,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7152,13 +7152,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/gl.po b/po/gl.po
index c16841fa..aebf7f95 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:08-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: gnome-l10n-gl@gnome.org\n"
@@ -1246,7 +1246,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1590,7 +1590,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1877,7 +1877,7 @@ msgstr "Erro: O valor do tempo de espera máximo «%s» non é válido."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Erro: O valor do tempo de espera máximo «%s» non é válido."
@@ -1886,52 +1886,56 @@ msgstr "Erro: O valor do tempo de espera máximo «%s» non é válido."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Erro: O valor do tempo de espera máximo «%s» non é válido."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Erro: «nm» a orde «%s» non é válida."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ruta non válida: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5955,29 +5959,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7211,13 +7211,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/gu.po b/po/gu.po
index a497efe1..911c35e1 100644
--- a/po/gu.po
+++ b/po/gu.po
@@ -14,7 +14,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:23-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: American English <kde-i18n-doc@kde.org>\n"
@@ -1246,7 +1246,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1596,7 +1596,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1884,7 +1884,7 @@ msgstr "અનà«àª•à«àª°àª®àª£àª¿àª•ા '%s' યોગà«àª¯ નથી"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "અનà«àª•à«àª°àª®àª£àª¿àª•ા '%s' યોગà«àª¯ નથી"
@@ -1893,52 +1893,56 @@ msgstr "અનà«àª•à«àª°àª®àª£àª¿àª•ા '%s' યોગà«àª¯ નથી"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' યોગà«àª¯ નથી;  [%s] અથવા [%s] વાપરો"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "અનà«àª•à«àª°àª®àª£àª¿àª•ા '%s' યોગà«àª¯ નથી"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "અયોગà«àª¯ IPv4 મારà«àª— '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "જોડાણમાં '%s' સà«àª¯à«‹àªœàª¨àª¨à«€ હાજરીની જરૂરિયાત છે"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' અથવા '%s' સà«àª¯à«‹àªœàª¨àª¨à«€ જરૂરિયાત છે"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6071,29 +6075,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7327,13 +7327,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/he.po b/po/he.po
index bc5e5351..e9c6ed78 100644
--- a/po/he.po
+++ b/po/he.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2016-04-16 05:26-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: he\n"
@@ -1134,7 +1134,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1475,7 +1475,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1756,7 +1756,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1765,50 +1765,54 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5668,29 +5672,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6924,13 +6924,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/hi.po b/po/hi.po
index 7fc01380..18233e4d 100644
--- a/po/hi.po
+++ b/po/hi.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:25-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Hindi <kde-i18n-doc@kde.org>\n"
@@ -1227,7 +1227,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1577,7 +1577,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1865,7 +1865,7 @@ msgstr "मान '%s' à¤à¤• वैध UUID नहीं है"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "मान '%s' à¤à¤• वैध UUID नहीं है"
@@ -1874,52 +1874,56 @@ msgstr "मान '%s' à¤à¤• वैध UUID नहीं है"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' वैध नहीं है; [%s] या [%s] उपयोग करें"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "सूची '%s' वैध नहीं है"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "अवैध IPv4 रूट '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "विशेषता किसà¥à¤® को '%s' पर सेट होना चाहिà¤"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type '%s' के लिठà¤à¤• '%s' सेटिंग कनेकà¥à¤¶à¤¨ में चाहिà¤"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' या '%s' सेटिंग की जरूरत है"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6076,29 +6080,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7332,13 +7332,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/hr.gmo b/po/hr.gmo
index d787df4a..b731de6e 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differdiff --git a/po/hr.po b/po/hr.po
index 5ff85504..52d41a92 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -11,7 +11,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2022-03-31 20:12+0200\n"
 "Last-Translator: gogo <trebelnik2@gmail.com>\n"
 "Language-Team: Croatian <hr@li.org>\n"
@@ -1178,7 +1178,7 @@ msgstr "neoÄekivani uuid %s umjesto %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1519,7 +1519,7 @@ msgstr "lozinka nije podržana kada vjerodajnica nije PKCS#11 token"
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1804,7 +1804,7 @@ msgstr "vrijednost ograniÄenja podataka %d nije valjana"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "vrijednost %d nije valjana"
@@ -1813,39 +1813,43 @@ msgstr "vrijednost %d nije valjana"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%u' oznaka nije valjana; koristite kombinaciju %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "DHCP mogućnost ne može sadržavati više od 255 znakova"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "MUD (Opis upotrebe proizvoÄ‘aÄa) URL nije valjani URL"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "nevaljane dozvole nisu u obliku \"user:$UNAME[:]\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "vrsta svojstva treba postaviti na '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type '%s' zahtijeva '%s' postavku u povezivanju"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1854,14 +1858,14 @@ msgstr ""
 "Otkriveno priÄuvno povezivanje s '%s' postavkom i ulazom vrste '%s'. '%s' "
 "treba postaviti na '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "PriÄuvno povezivanje sa '%s' postavljeno na '%s' ne može sadržavati '%s' "
 "postavku"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr "UUID treba normalizaciju"
 
@@ -6040,29 +6044,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7916,24 +7916,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "Pristupnik pridružen ovom podešavanju. Ovo ima smisla ako je \"addresses\" "
 "postavljena. Glavna svrha pristupnika je upravljanje sljedećim skokom "
diff --git a/po/hu.po b/po/hu.po
index 61c53ba9..17859471 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:27-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
@@ -1259,7 +1259,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1608,7 +1608,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1896,7 +1896,7 @@ msgstr "Hiba: a(z) „%s†időkorlát érvénytelen."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Hiba: a(z) „%s†időkorlát érvénytelen."
@@ -1905,52 +1905,56 @@ msgstr "Hiba: a(z) „%s†időkorlát érvénytelen."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "„%s=%s†nem érvényes beállítás ehhez: „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "„%s†nem érvényes UUID"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "érvénytelen mezÅ‘: „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "megköveteli a(z) „%s†beállítás jelenlétét a kapcsolatban"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "a(z) „%s†vagy „%s†beállítás szükséges"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5968,29 +5972,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7224,13 +7224,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/id.po b/po/id.po
index 8b84d420..996e1d6b 100644
--- a/po/id.po
+++ b/po/id.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-12-31 15:54+0700\n"
 "Last-Translator: Andika Triwidada <atriwidada@gnome.org>\n"
 "Language-Team: GNOME Indonesian Translation Team <gnome@i15n.org>\n"
@@ -1180,7 +1180,7 @@ msgstr "uuid yang tidak diduga %s alih-alih %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1527,7 +1527,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1818,7 +1818,7 @@ msgstr "nilai terukur %d tidak valid"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "nilai %d tidak valid"
@@ -1827,42 +1827,46 @@ msgstr "nilai %d tidak valid"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "flag '%u' tidak valid; gunakan kombinasi dari %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "nama antar muka lebih dari 15 karakter"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "URI bukan UTF-8 yang valid"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "izin tak valid \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "tipe properti mesti ditata ke '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type '%s' memerlukan keberadaan pengaturan '%s' dalam koneksi"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1871,14 +1875,14 @@ msgstr ""
 "Mendeteksi sebuah koneksi slave dengan '%s' ditata dan tipe port '%s'. '%s' "
 "mesti ditata menjadi '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Sebuah koneksi slave dengan '%s' ditata ke '%s' tidak boleh memiliki setelan "
 "'%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6072,29 +6076,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7885,13 +7885,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/it.po b/po/it.po
index 0cbc6847..b8ce357e 100644
--- a/po/it.po
+++ b/po/it.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-03-21 14:53+0100\n"
 "Last-Translator: Milo Casagrande <milo@milo.name>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
@@ -1227,7 +1227,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1575,7 +1575,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1867,7 +1867,7 @@ msgstr "il valore di limite %d non è valido"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "il valore %d non è valido"
@@ -1876,42 +1876,46 @@ msgstr "il valore %d non è valido"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "«%u» flag non sono validi, usare una combinazione di %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "il nome dell'interfaccia è più lungo di 15 caratteri"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "l'URI non è UTF-8 valido"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "esecutore «%s» non valido"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "il tipo della proprietà dovrebbe essere impostato a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type «%s» richiede un'impostazione «%s» nella connessione"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1920,14 +1924,14 @@ msgstr ""
 "Rilevata una connessione slave con «%s» impostato e un tipo di porta «%s». "
 "«%s» dovrebbe essere impostato a «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Una connessione slave con «%s» impostato a «%s» non può avere "
 "un'impostazione «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6152,29 +6156,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7920,13 +7920,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ja.po b/po/ja.po
index fde30024..6f08e991 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-08-15 04:44+0000\n"
 "Last-Translator: kemorigu <kemorigu@redhat.com>\n"
 "Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
@@ -1178,7 +1178,7 @@ msgstr "%s ã§ã¯ãªãã€äºˆæœŸã›ã¬ uuid %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1520,7 +1520,7 @@ msgstr "証明書㌠PKCS#11 トークンã«ãªã„å ´åˆã¯ã€ãƒ‘スワードã¯
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1810,7 +1810,7 @@ msgstr "測定値 %d ã¯ç„¡åйã§ã™"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "値 %d ã¯ç„¡åйã§ã™"
@@ -1819,40 +1819,44 @@ msgstr "値 %d ã¯ç„¡åйã§ã™"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%u' ãƒ•ãƒ©ã‚°ã¯æœ‰åйã§ã¯ã‚りã¾ã›ã‚“。%s ã®çµ„ã¿åˆã‚ã›ã‚’使用ã—ã¦ãã ã•ã„"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "DHCP オプション㯠255 文字より長ãã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "MUD ã® URL ã¯æœ‰åŠ¹ãª URL ã§ã¯ã‚りã¾ã›ã‚“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "無効ãªãƒ‘ーミッション \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "プロパティータイプ㯠'%s' ã«è¨­å®šã™ã‚‹å¿…è¦ãŒã‚りã¾ã™"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "スレーブタイプ '%s' ã®æŽ¥ç¶šã«ã¯ '%s' 設定ãŒå¿…è¦ã§ã™"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1861,12 +1865,12 @@ msgstr ""
 "'%s' ãŒè¨­å®šã•れã€ãƒãƒ¼ãƒˆã‚¿ã‚¤ãƒ—㌠'%s' ã®ã‚¹ãƒ¬ãƒ¼ãƒ–接続を検出ã—ã¾ã™ã€‚'%s' 㯠"
 "'%s' ã«è¨­å®šã™ã‚‹å¿…è¦ãŒã‚りã¾ã™"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' ã«è¨­å®šã•れã¦ã„ã‚‹ '%s' ã¨ã®ã‚¹ãƒ¬ãƒ¼ãƒ–接続ã«ã¯ã€'%s' 設定ãŒã§ãã¾ã›ã‚“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6053,29 +6057,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7869,24 +7869,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "ã“ã®è¨­å®šã«é–¢é€£ä»˜ã‘られãŸã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã€‚ã“れ㯠\"address\" も設定ã•れã¦ã„ã‚‹å ´åˆ"
 "ã«ã®ã¿æ„味ãŒã‚りã¾ã™ã€‚ゲートウェイã®ä¸»ãªç›®çš„ã¯ã€ãƒ‡ãƒã‚¤ã‚¹ä¸Šã®æ¨™æº–デフォルト"
diff --git a/po/ka.po b/po/ka.po
index 36f5c891..d75b2036 100644
--- a/po/ka.po
+++ b/po/ka.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2022-07-16 18:47+0200\n"
 "Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
 "Language-Team: Georgian <http://mail.gnome.org/mailman/listinfo/gnome-ge-"
@@ -1139,7 +1139,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1480,7 +1480,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1761,7 +1761,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1770,50 +1770,54 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5706,29 +5710,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6962,13 +6962,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/kn.po b/po/kn.po
index e752035a..467007a8 100644
--- a/po/kn.po
+++ b/po/kn.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:36-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Kannada <kde-i18n-doc@kde.org>\n"
@@ -1234,7 +1234,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1581,7 +1581,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1873,7 +1873,7 @@ msgstr "'%s' ಮೌಲà³à²¯à²µà³ ಒಂದೠಸರಿಯಾದ UUID ಆಗà²
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "'%s' ಮೌಲà³à²¯à²µà³ ಒಂದೠಸರಿಯಾದ UUID ಆಗಿಲà³à²²"
@@ -1882,52 +1882,56 @@ msgstr "'%s' ಮೌಲà³à²¯à²µà³ ಒಂದೠಸರಿಯಾದ UUID ಆಗà²
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' ಮಾನà³à²¯à²µà²¾à²¦à³à²¦à²²à³à²²; [%s] ಅಥವ [%s] ಅನà³à²¨à³ ಬಳಸಿ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s\" ಯೠಒಂದೠಮಾನà³à²¯à²µà²¾à²¦ UUID ಆಗಿಲà³à²²"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ಅಮಾನà³à²¯à²µà²¾à²¦ IPv4 ರೌಟೠ'%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "ಗà³à²£à²¦ ಬಗೆಯನà³à²¨à³ '%s' ಗೆ ಹೊಂದಿಸಬೇಕà³"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "ಸà³à²²à³‡à²µà³â€Œ-ಬಗೆ '%s' ಗಾಗಿ ಸಂಪರà³à²•ದಲà³à²²à²¿ '%s' ಸಿದà³à²§à²¤à³†à²¯ ಅಗತà³à²¯à²µà²¿à²°à³à²¤à³à²¤à²¦à³†"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' ಅಥವ '%s' ಸಿದà³à²§à²¤à³†à²¯ ಅಗತà³à²¯à²µà²¿à²¦à³†"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6095,29 +6099,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7351,13 +7351,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ko.po b/po/ko.po
index a97ae2d0..7465656d 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -33,7 +33,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2020-08-23 16:31+0900\n"
 "Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
 "Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
@@ -1181,7 +1181,7 @@ msgstr "예기치 ì•Šì€ UUID %s, 기대한 ê°’ì€ %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1524,7 +1524,7 @@ msgstr "ì¸ì¦ì„œê°€ PKCS#11 토í°ì— 없는 경우 암호가 ì§€ì›ë˜ì§€ 않ì
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1811,7 +1811,7 @@ msgstr "사용량 ê°’ %dì´(ê°€) 유효하지 않습니다"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "%d ê°’ì€ ìœ íš¨í•˜ì§€ 않습니다"
@@ -1820,40 +1820,44 @@ msgstr "%d ê°’ì€ ìœ íš¨í•˜ì§€ 않습니다"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%u' 플래그가 유효하지 않습니다. %sì˜ ì¡°í•©ì„ ì‚¬ìš©í•˜ì‹­ì‹œì˜¤"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "DHCP ì˜µì…˜ì€ 255ìžë¥¼ 초과할 수 없습니다"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "MUD URLì´ ìœ íš¨í•œ URLì´ ì•„ë‹™ë‹ˆë‹¤"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ìž˜ëª»ëœ ê¶Œí•œ \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "ì†ì„± ìœ í˜•ì„ '%s'(으)로 설정해야 합니다"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "ì—°ê²°ì—서 slave-type '%s'ì—는 '%s' ì„¤ì •ì´ í•„ìš”í•©ë‹ˆë‹¤."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1862,13 +1866,13 @@ msgstr ""
 "'%s'(으)로 설정ë˜ê³  í¬íЏ ìœ í˜•ì´ '%s'ì¸ ìŠ¬ë ˆì´ë¸Œ ì—°ê²°ì„ ê°ì§€í•©ë‹ˆë‹¤. '%s'ì€"
 "(는) '%s'(으)로 설정해야 합니다"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "'%s'ì´(ê°€) '%s'(으)로 ì„¤ì •ëœ ìŠ¬ë ˆì´ë¸Œ ì—°ê²°ì—는 '%s' ì„¤ì •ì´ ìžˆìœ¼ë©´ 안 ë©ë‹ˆë‹¤."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6016,29 +6020,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7759,24 +7759,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "ì´ êµ¬ì„±ê³¼ ì—°ê´€ëœ ê²Œì´íŠ¸ì›¨ì´. \"addresses\"ë„ ì„¤ì •í•œ 경우ì—ë§Œ ì˜ë¯¸ê°€ 있습니"
 "다. 게ì´íŠ¸ì›¨ì´ì˜ 주요 목ì ì€ 장치ì—서 표준 기본 ê²½ë¡œì˜ ë‹¤ìŒ í™‰ì„ ì œì–´í•˜ëŠ” 것"
diff --git a/po/ku.po b/po/ku.po
index c66a0827..d7de1314 100644
--- a/po/ku.po
+++ b/po/ku.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2007-01-02 21:47+0000\n"
 "Last-Translator: Erdal Ronahi <erdal.ronahi@gmail.com>\n"
 "Language-Team: Kurdish <ku@li.org>\n"
@@ -1178,7 +1178,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1521,7 +1521,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1805,7 +1805,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Navnîşana IP:"
@@ -1814,52 +1814,56 @@ msgstr "Navnîşana IP:"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Girêdanên çalak tune!"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Navnîşana IP:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "Navnîşana IP:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5817,29 +5821,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7075,13 +7075,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/lt.po b/po/lt.po
index 92bb6516..bacbd2d0 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -13,7 +13,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:10-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
@@ -1237,7 +1237,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1583,7 +1583,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1871,7 +1871,7 @@ msgstr "indeksas „%s“ yra netinkamas"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "indeksas „%s“ yra netinkamas"
@@ -1880,52 +1880,56 @@ msgstr "indeksas „%s“ yra netinkamas"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "„%s“ yra netinkamas; naudokite [%s] arba [%s]"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "„%s“ nėra tinkamas UUID"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "netinkamas IPv4 kelias „%s“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "reikalauja „%s“ nustatymo ryšyje"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "reikalauja nustatymo „%s“ arba „%s“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6037,29 +6041,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7293,13 +7293,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/lv.po b/po/lv.po
index a9f8fafa..f07cc15e 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:39-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Latvian <locale@laka.lv>\n"
@@ -1200,7 +1200,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1542,7 +1542,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1826,7 +1826,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1835,52 +1835,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "IP adrese:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "IP adrese:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5823,29 +5827,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7079,13 +7079,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/mk.po b/po/mk.po
index 74817c92..a7e19b4d 100644
--- a/po/mk.po
+++ b/po/mk.po
@@ -13,7 +13,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2016-04-16 12:56-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Macedonian <ossm-members@hedona.on.net.mk>\n"
@@ -1140,7 +1140,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1481,7 +1481,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1762,7 +1762,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1771,50 +1771,54 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5674,29 +5678,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6930,13 +6930,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ml.po b/po/ml.po
index b233cdd0..359dd84f 100644
--- a/po/ml.po
+++ b/po/ml.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:41-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Malayalam <discuss@lists.smc.org.in>\n"
@@ -1248,7 +1248,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1595,7 +1595,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1883,7 +1883,7 @@ msgstr "'%s' സൂചിക ശരിയലàµà´²"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "'%s' സൂചിക ശരിയലàµà´²"
@@ -1892,52 +1892,56 @@ msgstr "'%s' സൂചിക ശരിയലàµà´²"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' ശരിയലàµà´²; [%s] à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ [%s] ഉപയോഗിയàµà´•àµà´•àµà´•"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' ശരിയായ à´¯àµà´¯àµà´à´¡à´¿à´¯à´²àµà´²"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "തെറàµà´±à´¾à´¯ IPv4 റൂടàµà´Ÿàµ '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "കണകàµà´·à´¨à´¿à´²àµâ€ '%s' സജàµà´œàµ€à´•രണം ആവശàµà´¯à´®àµà´£àµà´Ÿàµàµ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ '%s' സജàµà´œàµ€à´•രണം ആവശàµà´¯à´®àµà´£àµà´Ÿàµàµ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6060,29 +6064,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7316,13 +7316,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/mr.po b/po/mr.po
index 8cd05e70..1499f757 100644
--- a/po/mr.po
+++ b/po/mr.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:43-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Marathi <kde-i18n-doc@kde.org>\n"
@@ -1223,7 +1223,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1570,7 +1570,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1858,7 +1858,7 @@ msgstr "मूलà¥à¤¯ '%s' वैध UUID नाही"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "मूलà¥à¤¯ '%s' वैध UUID नाही"
@@ -1867,52 +1867,56 @@ msgstr "मूलà¥à¤¯ '%s' वैध UUID नाही"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' वैध नाही; [%s] किंवा [%s] याचा वापर करा"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' वैध UUID नाही"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "अवैध IPv4 राउट '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "गà¥à¤£à¤§à¤°à¥à¤® पà¥à¤°à¤•ार '%s' करिता सेट केले पाहिजे"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type '%s' ला जोडणी अंतरà¥à¤—त '%s' सेटिंग आवशà¥à¤¯à¤•"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' किंवा '%s' सेटिंग आवशà¥à¤¯à¤•"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6058,29 +6062,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7314,13 +7314,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/nb.po b/po/nb.po
index c990c33a..fe42dd07 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:43-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Norwegian Bokmål <i18n-nb@lister.ping.uio.no>\n"
@@ -1141,7 +1141,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1482,7 +1482,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1764,7 +1764,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1773,51 +1773,55 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Kunne ikke dekode privat nøkkel."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5694,29 +5698,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6950,13 +6950,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ne.po b/po/ne.po
index 6e92ab67..acd4f1b9 100644
--- a/po/ne.po
+++ b/po/ne.po
@@ -13,7 +13,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:26-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Nepali <info@mpp.org.np>\n"
@@ -1175,7 +1175,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1516,7 +1516,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1799,7 +1799,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1808,52 +1808,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "भीपीà¤à¤¨ जडान थप गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "भीपीà¤à¤¨ जडान पà¥à¤¨: पà¥à¤°à¤¾à¤ªà¥à¤¤à¤¿ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5754,29 +5758,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7010,13 +7010,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/nl.po b/po/nl.po
index c5d82a35..49cfc4e2 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -19,7 +19,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2022-03-27 21:08+0200\n"
 "Last-Translator: Nathan Follens <nfollens@gnome.org>\n"
 "Language-Team: Dutch <gnome-nl-list@gnome.org>\n"
@@ -1222,7 +1222,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1564,7 +1564,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1851,7 +1851,7 @@ msgstr "Fout: time-out-waarde '%s' is niet geldig."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "waarde %d is ongeldig"
@@ -1860,50 +1860,54 @@ msgstr "waarde %d is ongeldig"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Fout: time-out-waarde '%s' is niet geldig."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "DHCP-optie kan niet langer zijn dan 255 tekens"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "MUD-URL is geen geldige URL"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5910,29 +5914,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7167,13 +7167,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/oc.po b/po/oc.po
index bd00fcab..7e548c1b 100644
--- a/po/oc.po
+++ b/po/oc.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2021-05-18 21:37+0200\n"
 "Last-Translator: Quentin PAGÈS\n"
 "Language-Team: Tot en òc (totenoc.eu)\n"
@@ -1217,7 +1217,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1559,7 +1559,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1844,7 +1844,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "camp '%s' invalid"
@@ -1853,52 +1853,56 @@ msgstr "camp '%s' invalid"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Error&nbsp;: %s - connexion introbabla."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "camp '%s' invalid"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "camp '%s' invalid"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5901,29 +5905,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7160,13 +7160,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/or.po b/po/or.po
index c18b9647..bff59077 100644
--- a/po/or.po
+++ b/po/or.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:45-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Oriya <oriya-it@googlegroups.com>\n"
@@ -1236,7 +1236,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1583,7 +1583,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1871,7 +1871,7 @@ msgstr "ଅନà­à¬•à­à¬°à¬®à¬£à¬¿à¬•ା '%s' ଟି ବୈଧ ନà­à¬¹à¬"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "ଅନà­à¬•à­à¬°à¬®à¬£à¬¿à¬•ା '%s' ଟି ବୈଧ ନà­à¬¹à¬"
@@ -1880,52 +1880,56 @@ msgstr "ଅନà­à¬•à­à¬°à¬®à¬£à¬¿à¬•ା '%s' ଟି ବୈଧ ନà­à¬¹à¬"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' ଟି ବୈଧ ନà­à¬¹à¬; [%s] କିମà­à¬¬à¬¾ [%s] କୠବà­à­Ÿà¬¬à¬¹à¬¾à¬° କରନà­à¬¤à­"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' ଟି ଗୋଟିଠବୈଧ UUID ନà­à¬¹à¬"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ଅବୈଧ IPv4 ପଥ '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "ସଂଯୋଗରେ '%s' ବà­à­Ÿà¬¬à¬¸à­à¬¥à¬¾à¬° ଉପସà­à¬¥à¬¿à¬¤à¬¿ ଆବଶà­à­Ÿà¬•"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' କିମà­à¬¬à¬¾ '%s' ସଂରଚନା ଆବଶà­à­Ÿà¬•"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6046,29 +6050,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7302,13 +7302,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/pa.po b/po/pa.po
index da8b7e67..d7955b43 100644
--- a/po/pa.po
+++ b/po/pa.po
@@ -13,7 +13,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-04-19 10:17-0500\n"
 "Last-Translator: A S Alam <alam.yellow@gmail.com>\n"
 "Language-Team: Punjabi <punjabi-users@lists.sf.net>\n"
@@ -1184,7 +1184,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1528,7 +1528,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1815,7 +1815,7 @@ msgstr "ਇੰਡੈਕਸ '%s' ਢà©à¨•ਵਾਂ ਨਹੀਂ ਹੈ"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "ਇੰਡੈਕਸ '%s' ਢà©à¨•ਵਾਂ ਨਹੀਂ ਹੈ"
@@ -1824,52 +1824,56 @@ msgstr "ਇੰਡੈਕਸ '%s' ਢà©à¨•ਵਾਂ ਨਹੀਂ ਹੈ"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' ਢà©à¨•ਵਾਂ ਨਹੀਂ; [%s] ਜਾਂ [%s] ਵਰਤੋ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' ਢà©à¨•ਵਾਂ UUID ਨਹੀਂ ਹੈ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ਅਢà©à¨•ਵਾਂ IPv4 ਰੂਟ '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, fuzzy, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "ਨੂੰ ਸੰਪਰਕ ਵਿੱਚ '%s' ਸੈਟਿੰਗ ਦੀ ਮੌਜੂਦਗੀ ਲੋੜੀਂਦੀ ਹੈ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "ਸੈਟਿੰਗ '%s' ਜਾਂ '%s' ਲੋੜੀਂਦੀ ਹੈ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5927,29 +5931,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7183,13 +7183,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/pl.po b/po/pl.po
index f029a455..e6aa2bc5 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2020-04-12 11:20+0200\n"
 "Last-Translator: Piotr DrÄ…g <piotrdrag@gmail.com>\n"
 "Language-Team: Polish <community-poland@mozilla.org>\n"
@@ -1196,7 +1196,7 @@ msgstr "nieoczekiwany UUID %s zamiast %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1543,7 +1543,7 @@ msgstr "hasło nie jest obsługiwane, kiedy certyfikat nie jest tokenem PKCS#11"
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1831,7 +1831,7 @@ msgstr "mierzona wartość %d jest nieprawidłowa"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "wartość %d jest nieprawidłowa"
@@ -1840,42 +1840,46 @@ msgstr "wartość %d jest nieprawidłowa"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "flagi „%u†są nieprawidłowe; należy użyć połączenia %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "nazwa interfejsu jest dłuższa niż 15 znaków"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "adres URI nie jest prawidłowym tekstem UTF-8"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "nieprawidÅ‚owe uprawnienie „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "typ wÅ‚aÅ›ciwoÅ›ci musi zostać ustawiony na „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type „%s†wymaga ustawienia „%s†w połączeniu"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1884,13 +1888,13 @@ msgstr ""
 "Wykryto połączenie podrzÄ™dne z ustawionym „%s†i typem portu „%sâ€. „%s†musi "
 "zostać ustawione na „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Połączenie podrzÄ™dne z „%s†ustawionym na „%s†nie może mieć ustawienia „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6042,29 +6046,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7306,13 +7306,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/pt.po b/po/pt.po
index 4bfa5cdf..cd02527b 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2020-10-11 21:09+0100\n"
 "Last-Translator: Juliano de Souza Camargo <julianosc@protonmail.com>\n"
 "Language-Team: Portuguese < >\n"
@@ -1171,7 +1171,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1514,7 +1514,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1797,7 +1797,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1806,52 +1806,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Incapaz de adicionar uma ligação VPN"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "Erro ao obter a ligação VPN '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5789,29 +5793,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7047,13 +7047,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 255a5f78..effec72c 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -21,7 +21,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2020-03-10 04:12-0300\n"
 "Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
 "Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
@@ -1210,7 +1210,7 @@ msgstr "uuid %s inesperado em vez de %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1556,7 +1556,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1847,7 +1847,7 @@ msgstr "valor metrado %d não é válido"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "valor %d não é válido"
@@ -1856,42 +1856,46 @@ msgstr "valor %d não é válido"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "“%u†não são sinalizadores válidos; use a combinação de %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "o nome da interface é maior que 15 caracteres"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "URI não é um UTF-8 válido"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "permissão inválida “%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "tipo de propriedade deveria ser definida para “%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "tipo escravo “%s†requer uma definição “%s†na conexão"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1900,14 +1904,14 @@ msgstr ""
 "Detecta uma conexão escrava com “%s†definido e um tipo de porta “%sâ€. “%s†"
 "deveria ser definida para “%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Uma conexão escrava com “%s†definido com “%s†não pode ter uma definição "
 "“%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6133,29 +6137,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7968,13 +7968,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ro.po b/po/ro.po
index 245e8866..02a9ca2e 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2022-03-14 13:23+0000\n"
 "Last-Translator: Sergiu Bivol <sergiu@cip.md>\n"
 "Language-Team: Romanian <kde-i18n-ro@kde.org>\n"
@@ -1176,7 +1176,7 @@ msgstr "UUID neașteptat %s în loc de %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1517,7 +1517,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1798,7 +1798,7 @@ msgstr "valoarea contorizată %d nu e validă"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "valoarea %d nu e validă"
@@ -1807,51 +1807,55 @@ msgstr "valoarea %d nu e validă"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "value is not a valid token"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "valoarea nu e un jeton valid"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "Opțiunea DHCP nu poate depăși 255 de caractere"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "tipul proprietății trebuie iniÈ›ializat cu „%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr "UUID-ul necesită normalizare"
 
@@ -5748,29 +5752,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7004,13 +7004,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ru.po b/po/ru.po
index d5cbb94b..733b899a 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -21,7 +21,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2021-03-31 20:27+0300\n"
 "Last-Translator: Дронова Ю <juliette.tux@gmail.com>\n"
 "Language-Team: Russian <kde-i18n-doc@kde.org>\n"
@@ -1209,7 +1209,7 @@ msgstr "непредвиденный uuid %s вмеÑто %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1558,7 +1558,7 @@ msgstr "пароль не поддерживаетÑÑ, еÑли ÑертифиÐ
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1845,7 +1845,7 @@ msgstr "недейÑтвительное лимитное значение %d"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "значение %d не ÑвлÑетÑÑ Ð´ÐµÐ¹Ñтвительным"
@@ -1854,40 +1854,44 @@ msgstr "значение %d не ÑвлÑетÑÑ Ð´ÐµÐ¹Ñтвительным"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Флаги «%u» не ÑвлÑÑŽÑ‚ÑÑ Ð´Ð¾Ð¿ÑƒÑтимыми; иÑпользуйте Ñочетание %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "параметр DHCP не может превышать 255 Ñимволов"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "MUD URL не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым URL"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "недопуÑтимые Ð¿Ð¾Ð»Ð½Ð¾Ð¼Ð¾Ñ‡Ð¸Ñ Ð½Ðµ в формате \"user:$UNAME[:]\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "ÑвойÑтво должно иметь тип «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 "Ð´Ð»Ñ Ð¿Ð¾Ð´Ñ‡Ð¸Ð½Ñ‘Ð½Ð½Ð¾Ð³Ð¾ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ‚Ð¸Ð¿Ð°  «%s» необходимо определить параметр «%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1896,14 +1900,14 @@ msgstr ""
 "Определить подчинённое Ñоединение Ñ ÑƒÑтановленным «%s» и типом порта  «%s».  "
 "«%s» должно иметь значение  «%s»."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Подчинённое подключение Ñо значением '%s' Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° '%s'не может иметь "
 "параметр '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6122,29 +6126,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -8091,24 +8091,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "Шлюз, ÑвÑзанный Ñ Ñтой конфигурацией. Имеет значение только при указанном "
 "параметре \"addresses\". Главное назначение шлюза — контроль Ñледующего "
diff --git a/po/rw.po b/po/rw.po
index f2751a55..60c456e8 100644
--- a/po/rw.po
+++ b/po/rw.po
@@ -16,7 +16,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2005-03-31 20:55-0700\n"
 "Last-Translator: Steve Murphy <murf@e-tools.com>\n"
 "Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
@@ -1193,7 +1193,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1536,7 +1536,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1819,7 +1819,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "(Sibyo"
@@ -1828,52 +1828,56 @@ msgstr "(Sibyo"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "(Sibyo"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "(Sibyo"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5833,29 +5837,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7092,13 +7092,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/sk.po b/po/sk.po
index 8ce1fc90..d3ef9331 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-05-15 16:46+0200\n"
 "Last-Translator: Jose Riha <jose1711@gmail.com>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
@@ -1197,7 +1197,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1539,7 +1539,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1825,7 +1825,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1834,52 +1834,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "nesprávna adresa IP: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "nesprávna smerová adresa '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5826,29 +5830,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7082,13 +7082,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/sl.po b/po/sl.po
index 4941ccea..233333a5 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:11-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
@@ -1243,7 +1243,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1587,7 +1587,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1874,7 +1874,7 @@ msgstr "Napaka: vrednost Äasovne omejitve '%s' ni veljavna."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Napaka: vrednost Äasovne omejitve '%s' ni veljavna."
@@ -1883,52 +1883,56 @@ msgstr "Napaka: vrednost Äasovne omejitve '%s' ni veljavna."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Napaka: vrednost Äasovne omejitve '%s' ni veljavna."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Napaka: ukaz 'nm' '%s' ni veljaven"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "neveljavno polje '%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5920,29 +5924,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7176,13 +7176,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/sq.po b/po/sq.po
index b2c81e78..253f1c79 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:11-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Albanian <gnome-albanian-perkthyesit@lists.sourceforge.net>\n"
@@ -1168,7 +1168,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1509,7 +1509,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1790,7 +1790,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1799,50 +1799,54 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5726,29 +5730,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6982,13 +6982,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/sr.po b/po/sr.po
index d32e0585..18d7c714 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2010-10-18 16:48+0200\n"
 "Last-Translator: Милош Поповић <gpopac@gmail.com>\n"
 "Language-Team: Serbian <gnom@prevod.org>\n"
@@ -1211,7 +1211,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1557,7 +1557,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1843,7 +1843,7 @@ msgstr "Грешка: није иÑправна вредноÑÑ‚ „%s“ за Ð
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Грешка: није иÑправна вредноÑÑ‚ „%s“ за иÑтек времена."
@@ -1852,52 +1852,56 @@ msgstr "Грешка: није иÑправна вредноÑÑ‚ „%s“ за Ð
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Грешка: „%s“ није иÑправан аргумент уз опцију „%s“."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Грешка: „nm“ наредба „'%s“ није иÑправна."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "неиÑправно поље „%s“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5948,29 +5952,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7207,13 +7207,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/sr@latin.po b/po/sr@latin.po
index 061ffe11..9d582837 100644
--- a/po/sr@latin.po
+++ b/po/sr@latin.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2010-10-18 16:48+0200\n"
 "Last-Translator: Miloš Popović <gpopac@gmail.com>\n"
 "Language-Team: Serbian <gnom@prevod.org>\n"
@@ -1214,7 +1214,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1560,7 +1560,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1846,7 +1846,7 @@ msgstr "Greška: nije ispravna vrednost „%s“ za istek vremena."
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "Greška: nije ispravna vrednost „%s“ za istek vremena."
@@ -1855,52 +1855,56 @@ msgstr "Greška: nije ispravna vrednost „%s“ za istek vremena."
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "Greška: „%s“ nije ispravan argument uz opciju „%s“."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Greška: „nm“ naredba „'%s“ nije ispravna."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "neispravno polje „%s“"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5952,29 +5956,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7211,13 +7211,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/sv.po b/po/sv.po
index ebc81d8f..eae59716 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-12-04 20:16+0100\n"
 "Last-Translator: Josef Andersson <josef.andersson@fripost.org>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -1212,7 +1212,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1556,7 +1556,7 @@ msgstr "lösenordet stöds ej när certifikat inte på ett PKCS#11-token"
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1848,7 +1848,7 @@ msgstr "mätvärdet %d är inte giltigt"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "mätvärdet %d är inte giltigt"
@@ -1857,42 +1857,46 @@ msgstr "mätvärdet %d är inte giltigt"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "â€%uâ€-flaggor är inte giltiga; använd en kombination av %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "gränssnittsnamnet är längre än 15 tecken"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "URI är inte giltig UTF-8"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ogiltig körare â€%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "egenskapstypen borde vara satt till â€%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slavtypen â€%s†kräver en â€%sâ€-inställning i anslutningen"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1901,13 +1905,13 @@ msgstr ""
 "Upptäck en slavanslutning med â€%s†satt och en porttyp â€%sâ€. â€%s†bör sättas "
 "till â€%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "En slavanslutning med â€%s†satt till â€%s†kan inte ha en inställning â€%sâ€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6112,29 +6116,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7800,13 +7800,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/ta.po b/po/ta.po
index f2478d69..ecbbbce9 100644
--- a/po/ta.po
+++ b/po/ta.po
@@ -14,7 +14,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:21-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Tamil <kde-i18n-doc@kde.org>\n"
@@ -1220,7 +1220,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1567,7 +1567,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1858,7 +1858,7 @@ msgstr "'%s' எனà¯à®± மதிபà¯à®ªà¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "'%s' எனà¯à®± மதிபà¯à®ªà¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®¾à®•à¯à®®à¯ UUID அலà¯à®²"
@@ -1867,40 +1867,44 @@ msgstr "'%s' எனà¯à®± மதிபà¯à®ªà¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®¾à®©à®¤à®²à¯à®²;  [%s] அலà¯à®²à®¤à¯  [%s] à®à®ªà¯ பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' எனà¯à®ªà®¤à¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®¾à®•à¯à®®à¯ UUID அலà¯à®²"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "தவறான தடமà¯: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "பணà¯à®ªà¯ வகை '%s' என அமைகà¯à®•பà¯à®ªà®Ÿà¯à®Ÿà®¿à®°à¯à®•à¯à®• வேணà¯à®Ÿà¯à®®à¯"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "ஸà¯à®²à¯‡à®µà¯ வகை '%s' கà¯à®•௠இணைபà¯à®ªà®¿à®²à¯ '%s' அமைபà¯à®ªà¯ அவசியமà¯"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1909,14 +1913,14 @@ msgstr ""
 "'%s' அமைகà¯à®•பà¯à®ªà®Ÿà¯à®Ÿà¯à®³à¯à®³ மறà¯à®±à¯à®®à¯ '%s' வகை தà¯à®±à¯ˆ வகையைக௠கொணà¯à®Ÿà¯à®³à¯à®³ அடிமை இணைபà¯à®ªà¯ˆà®•௠"
 "கணà¯à®Ÿà®±à®¿à®¯à®µà¯à®®à¯. '%s' ஆனத௠'%s' கà¯à®•௠அமைகà¯à®•பà¯à®ªà®Ÿ வேணà¯à®Ÿà¯à®®à¯."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "'%s' அமைகà¯à®•பà¯à®ªà®Ÿà¯à®Ÿà¯à®³à¯à®³ மறà¯à®±à¯à®®à¯ '%s' வகை தà¯à®±à¯ˆ வகையைக௠கொணà¯à®Ÿà¯à®³à¯à®³ அடிமை இணைபà¯à®ªà¯ˆà®•௠"
 "கணà¯à®Ÿà®±à®¿à®¯à®µà¯à®®à¯. '%s' ஆனத௠'%s' கà¯à®•௠அமைகà¯à®•பà¯à®ªà®Ÿ வேணà¯à®Ÿà¯à®®à¯."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6082,29 +6086,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7338,13 +7338,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/te.po b/po/te.po
index b87318f7..b5cd7a0c 100644
--- a/po/te.po
+++ b/po/te.po
@@ -11,7 +11,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:58-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Telugu <kde-i18n-doc@kde.org>\n"
@@ -1223,7 +1223,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1570,7 +1570,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1860,7 +1860,7 @@ msgstr "విలà±à°µ '%s' చెలà±à°²à±à°¨à°Ÿà±à°µà°‚à°Ÿà°¿ UUID à°•à°¾
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "విలà±à°µ '%s' చెలà±à°²à±à°¨à°Ÿà±à°µà°‚à°Ÿà°¿ UUID కాదà±"
@@ -1869,52 +1869,56 @@ msgstr "విలà±à°µ '%s' చెలà±à°²à±à°¨à°Ÿà±à°µà°‚à°Ÿà°¿ UUID à°•à°¾
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' చెలà±à°²à±à°¨à°¦à°¿ కాదà±; [%s] లేదా [%s] à°µà±à°ªà°¯à±‹à°—à°¿à°‚à°šà±"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' చెలà±à°²à±à°¨à°Ÿà±à°µà°‚à°Ÿà°¿ UUID కాదà±"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "చెలà±à°²à°¨à°¿ IPv4 రౌటౠ'%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "లకà±à°·à°£à°‚ à°°à°•à°‚ '%s' కౠఅమరà±à°šà°¾à°²à°¿"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "à°¸à±à°²à±‡à°µà±-à°°à°•à°‚ '%s' à°•à± '%s' అమరిక à°…à°¨à±à°¸à°‚ధానం నందౠకావాలి"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "'%s' లేదా '%s' అమరిక కావాలి"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6060,29 +6064,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7316,13 +7316,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/th.po b/po/th.po
index 9e5b3fc8..40ddd573 100644
--- a/po/th.po
+++ b/po/th.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 05:59-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Thai <l10n@opentle.org>\n"
@@ -1199,7 +1199,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1541,7 +1541,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1825,7 +1825,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1834,52 +1834,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "ที่อยู่ไอพี:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "ที่อยู่ไอพี:"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5828,29 +5832,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7084,13 +7084,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/tr.po b/po/tr.po
index 16f232d3..71b768a7 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:01-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Türkçe <gnome-turk@gnome.org>\n"
@@ -1238,7 +1238,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1582,7 +1582,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1873,7 +1873,7 @@ msgstr "'%s' değeri geçerli bir UUID değil"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, fuzzy, c-format
 msgid "value %d is not valid"
 msgstr "'%s' değeri geçerli bir UUID değil"
@@ -1882,40 +1882,44 @@ msgstr "'%s' değeri geçerli bir UUID değil"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "'%s' geçerli değil; [%s] ya da [%s] kullanın"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "'%s' geçerli bir UUID değil"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "geçersiz yönlendirme: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "özellik türü '%s' olarak ayarlanmalı"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "ikincil tür '%s' bağlantı ayarı olarak bir '%s' gereksinimi duyuyor"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1924,14 +1928,14 @@ msgstr ""
 "'%s' atanmış ve bağlantı noktası türü '%s' olan bir ikincil bağlantı "
 "algılandı. '%s' '%s' olarak atanmalıdır."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, fuzzy, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "'%s' atanmış ve bağlantı noktası türü '%s' olan bir ikincil bağlantı "
 "algılandı. '%s' '%s' olarak atanmalıdır."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -6118,29 +6122,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7374,13 +7374,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/uk.gmo b/po/uk.gmo
index 1b95d9a4..35596fe4 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differdiff --git a/po/uk.po b/po/uk.po
index 9c75f0a1..ad03dd5e 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -10,7 +10,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2022-07-03 08:50+0300\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <kde-i18n-uk@kde.org>\n"
@@ -1212,7 +1212,7 @@ msgstr "неочікуваний UUID %s заміÑть %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1560,7 +1560,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1844,7 +1844,7 @@ msgstr "лічильне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %d Ñ” некоректним"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %d Ñ” некоректним"
@@ -1853,39 +1853,43 @@ msgstr "Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %d Ñ” некоректним"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "прапорці «%u» не Ñ” коректними; ÑкориÑтайтеÑÑ ÐºÐ¾Ð¼Ð±Ñ–Ð½Ð°Ñ†Ñ–Ñ”ÑŽ з %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "Довжина параметра DHCP не може перевищувати 255 Ñимволів"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "ÐдреÑа MUD не Ñ” коректною адреÑою"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "некоректний Ð·Ð°Ð¿Ð¸Ñ Ð¿Ñ€Ð°Ð² доÑтупу, не у форматі «кориÑтувач:$UNAME[:]»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "тип влаÑтивоÑті має бути вÑтановлено у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "тип підлеглого з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Â«%s» потребує параметра «%s» у з'єднанні"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1894,14 +1898,14 @@ msgstr ""
 "Визначити підлегле з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ñ– вÑтановленим «%s» Ñ– типом порту «%s». «%s» "
 "Ñлід вÑтановити у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 "Підлегле з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· «%s», переведене у режим «%s», не може мати параметра "
 "«%s»"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr "UUID потребує нормалізації"
 
@@ -6108,29 +6112,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -8098,24 +8098,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "Шлюз, Ñкий пов'Ñзано із цими налаштуваннÑми. Має значеннÑ, лише Ñкщо вказано "
 "«addresses». ОÑновним призначеннÑм шлюзу Ñ” ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð°Ñтупним переходом у "
diff --git a/po/vi.po b/po/vi.po
index 7463a767..56a8bd70 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:11-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
@@ -1145,7 +1145,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1487,7 +1487,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1769,7 +1769,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1778,52 +1778,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "Không thể giải mã khoá riêng."
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "Gặp lỗi khi sơ khởi dữ liệu chứng nhận: %s"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5719,29 +5723,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -6975,13 +6975,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/wa.po b/po/wa.po
index 2d693ca0..23963fb7 100644
--- a/po/wa.po
+++ b/po/wa.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2004-09-09 10:41+0200\n"
 "Last-Translator: Pablo Saratxaga <pablo@walon.org>\n"
 "Language-Team: Walloon <linux-wa@walon.org>\n"
@@ -1168,7 +1168,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1510,7 +1510,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1793,7 +1793,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1802,51 +1802,55 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "Raloyaedjes rantoele"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5801,29 +5805,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7059,13 +7059,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 7b6d585a..536abd0a 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -20,7 +20,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2021-11-09 20:06+0800\n"
 "Last-Translator: Dingzhong Chen <wsxy162@gmail.com>\n"
 "Language-Team: Chinese - China <i18n-zh@googlegroups.com>\n"
@@ -1157,7 +1157,7 @@ msgstr "éžé¢„期的 uuid %sï¼Œè€Œä¸æ˜¯ %s"
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1498,7 +1498,7 @@ msgstr "当è¯ä¹¦ä¸åœ¨ PKCS#11 ä»¤ç‰Œä¸Šæ—¶ä¸æ”¯æŒå¯†ç "
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1781,7 +1781,7 @@ msgstr "计é‡å€¼ %d 无效"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "值 %d 无效"
@@ -1790,39 +1790,43 @@ msgstr "值 %d 无效"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "\"%u\" 标记无效;请使用 %s 的组åˆ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "DHCP 选项ä¸èƒ½å¤šäºŽ 255 个字符"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 msgid "MUD URL is not a valid URL"
 msgstr "MUD URL䏿˜¯ä¸€ä¸ªæœ‰æ•ˆçš„URL"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "无效的æƒé™ï¼Œæ²¡æœ‰ä»¥ \"user:$UNAME[:]\" 为格å¼"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "属性类型应该设置为 \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type \"%s\" è¦æ±‚连接中有 \"%s\" 设置"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
@@ -1830,12 +1834,12 @@ msgid ""
 msgstr ""
 "检测到设置了 \"%s\" 和端å£ç±»åž‹ä¸º \"%s\" 的从连接。\"%s\" 应该设置为 \"%s\""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "\"%s\" 设为 \"%s\" 的从连接ä¸èƒ½æœ‰ä¸ª \"%s\" 设置"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5939,29 +5943,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7602,24 +7602,13 @@ msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:174
 #: src/libnmc-setting/settings-docs.h.in:200
-#, fuzzy
-#| msgid ""
-#| "The gateway associated with this configuration. This is only meaningful "
-#| "if \"addresses\" is also set. The gateway's main purpose is to control "
-#| "the next hop of the standard default route on the device. Hence, the "
-#| "gateway property conflicts with \"never-default\" and will be "
-#| "automatically dropped if the IP configuration is set to never-default. As "
-#| "an alternative to set the gateway, configure a static default route "
-#| "with /0 as prefix length."
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 "与此é…置相关è”çš„ç½‘å…³ã€‚åªæœ‰å½“ \"addresses\" ä¹Ÿè¢«è®¾ç½®æ—¶ï¼Œè¿™æ‰æœ‰æ„义。网关的主è¦"
 "目的是控制设备上标准默认路由的下一跳。因此,网关属性与 \"never-default\" 冲"
diff --git a/po/zh_HK.po b/po/zh_HK.po
index 499d6ea2..b01f7d65 100644
--- a/po/zh_HK.po
+++ b/po/zh_HK.po
@@ -9,7 +9,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2017-04-21 06:26-0400\n"
 "Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
 "Language-Team: Chinese (Hong Kong) <community@linuxhall.org>\n"
@@ -1201,7 +1201,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1544,7 +1544,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1828,7 +1828,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr ""
@@ -1837,52 +1837,56 @@ msgstr ""
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, c-format
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "IP ä½å€ï¼š"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "IP ä½å€ï¼š"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5850,29 +5854,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7106,13 +7106,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 307a5597..2b56f90d 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -20,7 +20,7 @@ msgstr ""
 "Project-Id-Version: NetworkManager\n"
 "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/"
 "NetworkManager/issues\n"
-"POT-Creation-Date: 2022-08-26 16:42+0200\n"
+"POT-Creation-Date: 2022-08-11 16:06-0300\n"
 "PO-Revision-Date: 2019-06-28 19:18+0800\n"
 "Last-Translator: Hsiu-Ming Chang <cges30901@gmail.com>\n"
 "Language-Team: Traditional Chinese <zh@li.org>\n"
@@ -1172,7 +1172,7 @@ msgstr ""
 #: src/libnm-core-impl/nm-setting-cdma.c:144
 #: src/libnm-core-impl/nm-setting-connection.c:1149
 #: src/libnm-core-impl/nm-setting-connection.c:1187
-#: src/libnm-core-impl/nm-setting-connection.c:1516
+#: src/libnm-core-impl/nm-setting-connection.c:1530
 #: src/libnm-core-impl/nm-setting-ip-config.c:5423
 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:387
 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:99
@@ -1514,7 +1514,7 @@ msgstr "證書ä¸åœ¨PKCS#11ä»¤ç‰Œä¸Šæ™‚ï¼Œä¸æ”¯æŒå¯†ç¢¼"
 #: src/libnm-core-impl/nm-setting-cdma.c:159
 #: src/libnm-core-impl/nm-setting-connection.c:1159
 #: src/libnm-core-impl/nm-setting-connection.c:1202
-#: src/libnm-core-impl/nm-setting-connection.c:1454
+#: src/libnm-core-impl/nm-setting-connection.c:1468
 #: src/libnm-core-impl/nm-setting-gsm.c:298
 #: src/libnm-core-impl/nm-setting-gsm.c:353
 #: src/libnm-core-impl/nm-setting-gsm.c:396
@@ -1802,7 +1802,7 @@ msgstr "索引「%sã€ç„¡æ•ˆ"
 #: src/libnm-core-impl/nm-setting-connection.c:1351
 #: src/libnm-core-impl/nm-setting-connection.c:1365
 #: src/libnm-core-impl/nm-setting-connection.c:1379
-#: src/libnm-core-impl/nm-setting-connection.c:1440
+#: src/libnm-core-impl/nm-setting-connection.c:1454
 #, c-format
 msgid "value %d is not valid"
 msgstr "值 %d 無效"
@@ -1811,54 +1811,58 @@ msgstr "值 %d 無效"
 msgid "\"disabled\" flag cannot be combined with other MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1409
+#: src/libnm-core-impl/nm-setting-connection.c:1411
+msgid "\"enabled\" and \"enabled-on-global-iface\" flag cannot be set together"
+msgstr ""
+
+#: src/libnm-core-impl/nm-setting-connection.c:1422
 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags"
 msgstr ""
 
-#: src/libnm-core-impl/nm-setting-connection.c:1421
+#: src/libnm-core-impl/nm-setting-connection.c:1435
 #, fuzzy, c-format
 #| msgid "'%u' flags are not valid; use combination of %s"
 msgid "value %u is not a valid combination of MPTCP flags"
 msgstr "「%uã€æ——標無效;請使用「%sã€çš„組åˆ"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1468
+#: src/libnm-core-impl/nm-setting-connection.c:1482
 #, fuzzy
 msgid "DHCP option cannot be longer than 255 characters"
 msgstr "接å£å稱超éŽ15個字符"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1479
+#: src/libnm-core-impl/nm-setting-connection.c:1493
 #, fuzzy
 msgid "MUD URL is not a valid URL"
 msgstr "URI無效UTF-8"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1499
+#: src/libnm-core-impl/nm-setting-connection.c:1513
 #, fuzzy
 msgid "invalid permissions not in format \"user:$UNAME[:]\""
 msgstr "無效的權é™ã€Œ%sã€"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1528
+#: src/libnm-core-impl/nm-setting-connection.c:1542
 #, c-format
 msgid "property type should be set to '%s'"
 msgstr "屬性類型應設置為'%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1546
+#: src/libnm-core-impl/nm-setting-connection.c:1560
 #, c-format
 msgid "slave-type '%s' requires a '%s' setting in the connection"
 msgstr "slave-type「%sã€éœ€è¦é€£ç·šä¸­ã€Œ%sã€è¨­å®šå­˜åœ¨"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1557
+#: src/libnm-core-impl/nm-setting-connection.c:1571
 #, c-format
 msgid ""
 "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be "
 "set to '%s'"
 msgstr "用'檢測從屬連接%s' 設置和端å£é¡žåž‹'%s'. “%s' 應該設置為'%s'"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1583
+#: src/libnm-core-impl/nm-setting-connection.c:1597
 #, c-format
 msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting"
 msgstr "「%sã€è¨­ç‚ºã€Œ%sã€çš„從屬連線ä¸èƒ½æœ‰ã€Œ%sã€è¨­å®š"
 
-#: src/libnm-core-impl/nm-setting-connection.c:1600
+#: src/libnm-core-impl/nm-setting-connection.c:1614
 msgid "UUID needs normalization"
 msgstr ""
 
@@ -5954,29 +5958,25 @@ msgid ""
 "fc00::/7) and IPv6 privacy extension addresses (rfc3041, ipv6.ip6-privacy) "
 "will be excluded from being configured as endpoints. If \"disabled\" (0x1), "
 "MPTCP handling for the interface is disabled and no endpoints are "
-"registered. The \"enabled\" (0x2) flag means that MPTCP handling is enabled. "
-"This flag can also be implied from the presence of other flags. Even when "
-"enabled, MPTCP handling will by default still be disabled unless \"/proc/sys/"
-"net/mptcp/enabled\" sysctl is on. NetworkManager does not change the sysctl "
-"and this is up to the administrator or distribution. To configure endpoints "
-"even if the sysctl is disabled, \"also-without-sysctl\" (0x4) flag can be "
-"used. In that case, NetworkManager doesn't look at the sysctl and configures "
-"endpoints regardless. Even when enabled, NetworkManager will only configure "
-"MPTCP endpoints for a certain address family, if there is a unicast default "
-"route (0.0.0.0/0 or ::/0) in the main routing table. The flag \"also-without-"
-"default-route\" (0x8) can override that. When MPTCP handling is enabled then "
-"endpoints are configured with the specified address flags \"signal\" (0x10), "
-"\"subflow\" (0x20), \"backup\" (0x40), \"fullmesh\" (0x80). See ip-mptcp(8) "
-"manual for additional information about the flags. If the flags are zero "
-"(0x0), the global connection default from NetworkManager.conf is honored. If "
-"still unspecified, the fallback is \"enabled,subflow\". Note that this means "
-"that MPTCP is by default done depending on the \"/proc/sys/net/mptcp/"
-"enabled\" sysctl. NetworkManager does not change the MPTCP limits nor enable "
-"MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host configuration "
-"which the admin can change via sysctl and ip-mptcp. Strict reverse path "
-"filtering (rp_filter) breaks many MPTCP use cases, so when MPTCP handling "
-"for IPv4 addresses on the interface is enabled, NetworkManager would loosen "
-"the strict reverse path filtering (1) to the loose setting (2)."
+"registered. The flag \"enabled-on-global-iface\" (0x2) means that MPTCP "
+"handling is enabled if the interface configures a default route in the main "
+"routing table. This choice is per-address family, for example if there is an "
+"IPv4 default route 0.0.0.0/0, IPv4 endpoints are configured. The "
+"\"enabled\" (0x4) flag means that MPTCP handling is explicitly enabled. This "
+"flag can also be implied from the presence of other flags. If MPTCP handling "
+"is enabled, then endpoints will be configured with the specified address "
+"flags \"signal\" (0x10), \"subflow\" (0x20), \"backup\" (0x40), "
+"\"fullmesh\" (0x80). See ip-mptcp(8) manual for additional information about "
+"the flags. If the flags are zero, the global connection default from "
+"NetworkManager.conf is honored. If still unspecified, the fallback is either "
+"\"disabled\" or \"enabled-on-global-iface,subflow\" depending on \"/proc/sys/"
+"net/mptcp/enabled\". NetworkManager does not change the MPTCP limits nor "
+"enable MPTCP via \"/proc/sys/net/mptcp/enabled\". That is a host "
+"configuration which the admin can change via sysctl and ip-mptcp. Strict "
+"reverse path filtering (rp_filter) breaks many MPTCP use cases, so when "
+"MPTCP handling for IPv4 addresses on the interface is enabled, "
+"NetworkManager would loosen the strict reverse path filtering (1) to the "
+"loose setting (2)."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:18
@@ -7501,13 +7501,11 @@ msgstr ""
 #: src/libnmc-setting/settings-docs.h.in:200
 msgid ""
 "The gateway associated with this configuration. This is only meaningful if "
-"\"addresses\" is also set. Setting the gateway causes NetworkManager to "
-"configure a standard default route with the gateway as next hop. This is "
-"ignored if \"never-default\" is set. An alternative is to configure the "
-"default route explicitly with a manual route and /0 as prefix length. Note "
-"that the gateway usually conflicts with routing that NetworkManager "
-"configures for WireGuard interfaces, so usually it should not be set in that "
-"case. See \"ip4-auto-default-route\"."
+"\"addresses\" is also set. The gateway's main purpose is to control the next "
+"hop of the standard default route on the device. Hence, the gateway property "
+"conflicts with \"never-default\" and will be automatically dropped if the IP "
+"configuration is set to never-default. As an alternative to set the gateway, "
+"configure a static default route with /0 as prefix length."
 msgstr ""
 
 #: src/libnmc-setting/settings-docs.h.in:175
diff --git a/src/core/devices/nm-device-bond.c b/src/core/devices/nm-device-bond.c
index 44bb316d..3e083de4 100644
--- a/src/core/devices/nm-device-bond.c
+++ b/src/core/devices/nm-device-bond.c
@@ -395,61 +395,57 @@ _platform_lnk_bond_init_from_setting(NMSettingBond *s_bond, NMPlatformLnkBond *p
 {
     const char *opt_value;
 
+#define _v_fcn(fcn, s_bond, opt) (fcn(nm_setting_bond_get_option_normalized((s_bond), (opt))))
+#define _v_u8(s_bond, opt)       _nm_setting_bond_opt_value_as_u8((s_bond), (opt))
+#define _v_u16(s_bond, opt)      _nm_setting_bond_opt_value_as_u16((s_bond), (opt))
+#define _v_u32(s_bond, opt)      _nm_setting_bond_opt_value_as_u32((s_bond), (opt))
+#define _v_intbool(s_bond, opt)  _nm_setting_bond_opt_value_as_intbool((s_bond), (opt))
+
     *props = (NMPlatformLnkBond){
-        .mode = _nm_setting_bond_mode_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_MODE)),
+        .mode      = _v_fcn(_nm_setting_bond_mode_from_string, s_bond, NM_SETTING_BOND_OPTION_MODE),
         .primary   = _setting_bond_primary_opt_as_ifindex(s_bond),
-        .miimon    = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_MIIMON),
-        .updelay   = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_UPDELAY),
-        .downdelay = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_DOWNDELAY),
-        .arp_interval =
-            _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_ARP_INTERVAL),
-        .resend_igmp =
-            _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_RESEND_IGMP),
-        .min_links = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_MIN_LINKS),
-        .lp_interval =
-            _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_LP_INTERVAL),
-        .packets_per_port =
-            _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_PACKETS_PER_SLAVE),
-        .peer_notif_delay =
-            _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_PEER_NOTIF_DELAY),
-        .arp_all_targets = _nm_setting_bond_arp_all_targets_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_ARP_ALL_TARGETS)),
-        .arp_validate = _nm_setting_bond_arp_validate_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_ARP_VALIDATE)),
-        .ad_actor_sys_prio =
-            _nm_setting_bond_opt_value_as_u16(s_bond, NM_SETTING_BOND_OPTION_AD_ACTOR_SYS_PRIO),
-        .ad_user_port_key =
-            _nm_setting_bond_opt_value_as_u16(s_bond, NM_SETTING_BOND_OPTION_AD_USER_PORT_KEY),
-        .primary_reselect = _nm_setting_bond_primary_reselect_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_PRIMARY_RESELECT)),
-        .fail_over_mac = _nm_setting_bond_fail_over_mac_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_FAIL_OVER_MAC)),
-        .xmit_hash_policy = _nm_setting_bond_xmit_hash_policy_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_XMIT_HASH_POLICY)),
-        .num_grat_arp =
-            _nm_setting_bond_opt_value_as_u8(s_bond, NM_SETTING_BOND_OPTION_NUM_GRAT_ARP),
-        .all_ports_active =
-            _nm_setting_bond_opt_value_as_u8(s_bond, NM_SETTING_BOND_OPTION_ALL_SLAVES_ACTIVE),
-        .lacp_rate = _nm_setting_bond_lacp_rate_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_LACP_RATE)),
-        .ad_select = _nm_setting_bond_ad_select_from_string(
-            nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_AD_SELECT)),
+        .miimon    = _v_u32(s_bond, NM_SETTING_BOND_OPTION_MIIMON),
+        .updelay   = _v_u32(s_bond, NM_SETTING_BOND_OPTION_UPDELAY),
+        .downdelay = _v_u32(s_bond, NM_SETTING_BOND_OPTION_DOWNDELAY),
+        .arp_interval      = _v_u32(s_bond, NM_SETTING_BOND_OPTION_ARP_INTERVAL),
+        .resend_igmp       = _v_u32(s_bond, NM_SETTING_BOND_OPTION_RESEND_IGMP),
+        .min_links         = _v_u32(s_bond, NM_SETTING_BOND_OPTION_MIN_LINKS),
+        .lp_interval       = _v_u32(s_bond, NM_SETTING_BOND_OPTION_LP_INTERVAL),
+        .packets_per_port  = _v_u32(s_bond, NM_SETTING_BOND_OPTION_PACKETS_PER_SLAVE),
+        .peer_notif_delay  = _v_u32(s_bond, NM_SETTING_BOND_OPTION_PEER_NOTIF_DELAY),
+        .arp_all_targets   = _v_fcn(_nm_setting_bond_arp_all_targets_from_string,
+                                  s_bond,
+                                  NM_SETTING_BOND_OPTION_ARP_ALL_TARGETS),
+        .arp_validate      = _v_fcn(_nm_setting_bond_arp_validate_from_string,
+                               s_bond,
+                               NM_SETTING_BOND_OPTION_ARP_VALIDATE),
+        .ad_actor_sys_prio = _v_u16(s_bond, NM_SETTING_BOND_OPTION_AD_ACTOR_SYS_PRIO),
+        .ad_user_port_key  = _v_u16(s_bond, NM_SETTING_BOND_OPTION_AD_USER_PORT_KEY),
+        .primary_reselect  = _v_fcn(_nm_setting_bond_primary_reselect_from_string,
+                                   s_bond,
+                                   NM_SETTING_BOND_OPTION_PRIMARY_RESELECT),
+        .fail_over_mac     = _v_fcn(_nm_setting_bond_fail_over_mac_from_string,
+                                s_bond,
+                                NM_SETTING_BOND_OPTION_FAIL_OVER_MAC),
+        .xmit_hash_policy  = _v_fcn(_nm_setting_bond_xmit_hash_policy_from_string,
+                                   s_bond,
+                                   NM_SETTING_BOND_OPTION_XMIT_HASH_POLICY),
+        .num_grat_arp      = _v_u8(s_bond, NM_SETTING_BOND_OPTION_NUM_GRAT_ARP),
+        .all_ports_active  = _v_u8(s_bond, NM_SETTING_BOND_OPTION_ALL_SLAVES_ACTIVE),
+        .lacp_rate         = _v_fcn(_nm_setting_bond_lacp_rate_from_string,
+                            s_bond,
+                            NM_SETTING_BOND_OPTION_LACP_RATE),
+        .ad_select         = _v_fcn(_nm_setting_bond_ad_select_from_string,
+                            s_bond,
+                            NM_SETTING_BOND_OPTION_AD_SELECT),
+        .use_carrier       = _v_intbool(s_bond, NM_SETTING_BOND_OPTION_USE_CARRIER),
+        .tlb_dynamic_lb    = _v_intbool(s_bond, NM_SETTING_BOND_OPTION_TLB_DYNAMIC_LB),
     };
 
     nm_ether_addr_from_string(
         &props->ad_actor_system,
         nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_AD_ACTOR_SYSTEM));
 
-    opt_value = nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_USE_CARRIER);
-    if (opt_value != NULL)
-        props->use_carrier = _nm_utils_ascii_str_to_bool(opt_value, FALSE);
-
-    opt_value =
-        nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_TLB_DYNAMIC_LB);
-    if (opt_value != NULL)
-        props->tlb_dynamic_lb = _nm_utils_ascii_str_to_bool(opt_value, FALSE);
-
     opt_value = nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_ARP_IP_TARGET);
     if (opt_value != NULL)
         props->arp_ip_targets_num =
@@ -459,7 +455,6 @@ _platform_lnk_bond_init_from_setting(NMSettingBond *s_bond, NMPlatformLnkBond *p
     props->updelay_has          = props->miimon_has && props->miimon;
     props->downdelay_has        = props->miimon_has && props->miimon;
     props->peer_notif_delay_has = (props->miimon || props->arp_interval) && props->peer_notif_delay;
-    props->arp_all_targets_has  = props->arp_interval && props->arp_all_targets;
     props->resend_igmp_has      = props->resend_igmp != 1;
     props->lp_interval_has      = props->lp_interval != 1;
     props->tlb_dynamic_lb_has   = NM_IN_SET(props->mode, NM_BOND_MODE_TLB, NM_BOND_MODE_ALB);
@@ -493,6 +488,10 @@ act_stage1_prepare(NMDevice *device, NMDeviceStateReason *out_failure_reason)
         if (!nm_device_hw_addr_set_cloned(device, nm_device_get_applied_connection(device), FALSE))
             ret = NM_ACT_STAGE_RETURN_FAILURE;
     }
+
+    /* This is a workaround because netlink do not support ifname as primary */
+    set_bond_attr_or_default(device, s_bond, NM_SETTING_BOND_OPTION_PRIMARY);
+
     nm_device_bring_up(device, TRUE, NULL);
 
     return ret;
diff --git a/src/core/devices/nm-device-private.h b/src/core/devices/nm-device-private.h
index b54aed6a..31424d5c 100644
--- a/src/core/devices/nm-device-private.h
+++ b/src/core/devices/nm-device-private.h
@@ -89,7 +89,10 @@ nm_device_devip_set_state(NMDevice             *self,
     nm_assert(NM_IS_DEVICE(self));
     nm_assert_addr_family_or_unspec(addr_family);
     nm_assert(!l3cd || NM_IS_L3_CONFIG_DATA(l3cd));
-    nm_assert(NM_IN_SET(ip_state, NM_DEVICE_IP_STATE_PENDING, NM_DEVICE_IP_STATE_READY));
+    nm_assert(NM_IN_SET(ip_state,
+                        NM_DEVICE_IP_STATE_NONE,
+                        NM_DEVICE_IP_STATE_PENDING,
+                        NM_DEVICE_IP_STATE_READY));
 
     nm_device_devip_set_state_full(self, addr_family, ip_state, l3cd, NM_DEVICE_STATE_REASON_NONE);
 }
diff --git a/src/core/devices/nm-device-veth.c b/src/core/devices/nm-device-veth.c
index 63dfd8bb..c3482e78 100644
--- a/src/core/devices/nm-device-veth.c
+++ b/src/core/devices/nm-device-veth.c
@@ -101,8 +101,8 @@ create_and_realize(NMDevice              *device,
     peer        = nm_setting_veth_get_peer(s_veth);
     peer_device = nm_manager_get_device(NM_MANAGER_GET, peer, NM_DEVICE_TYPE_VETH);
     if (peer_device) {
-        /* The veth device and its peer already exist. No need to create it again. */
-        if (nm_streq0(nm_device_get_iface(nm_device_parent_get_device(peer_device)), iface))
+        if (nm_device_parent_get_device(peer_device))
+            /* The veth device and its peer already exist. No need to create it again. */
             return TRUE;
     }
 
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c
index d63b902b..6be9bc7c 100644
--- a/src/core/devices/nm-device.c
+++ b/src/core/devices/nm-device.c
@@ -96,6 +96,8 @@
 #define NM_DEVICE_AUTH_RETRIES_INFINITY -2
 #define NM_DEVICE_AUTH_RETRIES_DEFAULT  3
 
+#define AUTOCONNECT_RESET_RETRIES_TIMER 300
+
 /*****************************************************************************/
 
 typedef void (*ActivationHandleFunc)(NMDevice *self);
@@ -761,6 +763,9 @@ typedef struct _NMDevicePrivate {
 
     GVariant *ports_variant; /* Array of port devices D-Bus path */
     char     *prop_ip_iface; /* IP interface D-Bus property */
+
+    int    autoconnect_retries;
+    gint32 autoconnect_retries_blocked_until;
 } NMDevicePrivate;
 
 G_DEFINE_ABSTRACT_TYPE(NMDevice, nm_device, NM_TYPE_DBUS_OBJECT)
@@ -778,7 +783,9 @@ static void _dev_l3_cfg_commit_type_reset(NMDevice *self);
 
 static gboolean nm_device_master_add_slave(NMDevice *self, NMDevice *slave, gboolean configure);
 static void     nm_device_slave_notify_enslave(NMDevice *self, gboolean success);
-static void     nm_device_slave_notify_release(NMDevice *self, NMDeviceStateReason reason);
+static void     nm_device_slave_notify_release(NMDevice           *self,
+                                               NMDeviceStateReason reason,
+                                               ReleaseSlaveType    release_type);
 
 static void _dev_ipll6_start(NMDevice *self);
 
@@ -6236,7 +6243,7 @@ nm_device_master_release_slave(NMDevice           *self,
                                                release_type >= RELEASE_SLAVE_TYPE_CONFIG);
 
     /* raise notifications about the release, including clearing is_enslaved. */
-    nm_device_slave_notify_release(slave, reason);
+    nm_device_slave_notify_release(slave, reason, release_type);
 
     /* keep both alive until the end of the function.
      * Transfers ownership from slave_priv->master.  */
@@ -6536,12 +6543,16 @@ device_recheck_slave_status(NMDevice *self, const NMPlatformLink *plink)
 
     g_return_if_fail(plink);
 
-    if (plink->master <= 0)
-        goto out;
-
-    master                  = nm_manager_get_device_by_ifindex(NM_MANAGER_GET, plink->master);
-    plink_master            = nm_platform_link_get(nm_device_get_platform(self), plink->master);
-    plink_master_keep_alive = nmp_object_ref(NMP_OBJECT_UP_CAST(plink_master));
+    if (plink->master > 0) {
+        master                  = nm_manager_get_device_by_ifindex(NM_MANAGER_GET, plink->master);
+        plink_master            = nm_platform_link_get(nm_device_get_platform(self), plink->master);
+        plink_master_keep_alive = nmp_object_ref(NMP_OBJECT_UP_CAST(plink_master));
+    } else {
+        if (priv->master_ifindex == 0)
+            goto out;
+        master       = NULL;
+        plink_master = NULL;
+    }
 
     if (master == NULL && plink_master
         && NM_IN_STRSET(plink_master->name, "ovs-system", "ovs-netdev")
@@ -8024,7 +8035,9 @@ nm_device_slave_notify_enslave(NMDevice *self, gboolean success)
  * Notifies a slave that it has been released, and why.
  */
 static void
-nm_device_slave_notify_release(NMDevice *self, NMDeviceStateReason reason)
+nm_device_slave_notify_release(NMDevice           *self,
+                               NMDeviceStateReason reason,
+                               ReleaseSlaveType    release_type)
 {
     NMDevicePrivate *priv       = NM_DEVICE_GET_PRIVATE(self);
     NMConnection    *connection = nm_device_get_applied_connection(self);
@@ -8032,7 +8045,7 @@ nm_device_slave_notify_release(NMDevice *self, NMDeviceStateReason reason)
 
     g_return_if_fail(priv->master);
 
-    if (!priv->is_enslaved)
+    if (!priv->is_enslaved && release_type == RELEASE_SLAVE_TYPE_NO_CONFIG)
         return;
 
     if (priv->state > NM_DEVICE_STATE_DISCONNECTED && priv->state <= NM_DEVICE_STATE_ACTIVATED) {
@@ -8956,7 +8969,7 @@ nm_device_emit_recheck_assume(gpointer user_data)
     priv = NM_DEVICE_GET_PRIVATE(self);
 
     priv->recheck_assume_id = 0;
-    if (!nm_device_get_act_request(self))
+    if (!priv->queued_act_request && !nm_device_get_act_request(self))
         g_signal_emit(self, signals[RECHECK_ASSUME], 0);
 
     return G_SOURCE_REMOVE;
@@ -9954,6 +9967,7 @@ nm_device_devip_set_state_full(NMDevice             *self,
 
     nm_assert_addr_family_or_unspec(addr_family);
     nm_assert(NM_IN_SET(ip_state,
+                        NM_DEVICE_IP_STATE_NONE,
                         NM_DEVICE_IP_STATE_PENDING,
                         NM_DEVICE_IP_STATE_READY,
                         NM_DEVICE_IP_STATE_FAILED));
@@ -9961,7 +9975,7 @@ nm_device_devip_set_state_full(NMDevice             *self,
 
     nm_assert((ip_state != NM_DEVICE_IP_STATE_FAILED)
               == (failed_reason == NM_DEVICE_STATE_REASON_NONE));
-    nm_assert((ip_state != NM_DEVICE_IP_STATE_FAILED) || !l3cd);
+    nm_assert(NM_IN_SET(ip_state, NM_DEVICE_IP_STATE_PENDING, NM_DEVICE_IP_STATE_READY) || !l3cd);
 
     p = _dev_ipdev_data(self, addr_family);
 
@@ -12206,7 +12220,7 @@ _dev_ipsharedx_cleanup(NMDevice *self, int addr_family)
         }
 
         if (priv->ipshared_data_4.v4.firewall_config) {
-            nm_firewall_config_apply(priv->ipshared_data_4.v4.firewall_config, FALSE);
+            nm_firewall_config_apply_sync(priv->ipshared_data_4.v4.firewall_config, FALSE);
             nm_clear_pointer(&priv->ipshared_data_4.v4.firewall_config, nm_firewall_config_free);
         }
 
@@ -12353,8 +12367,8 @@ _dev_ipshared4_start(NMDevice *self)
         goto out_fail;
 
     priv->ipshared_data_4.v4.firewall_config =
-        nm_firewall_config_new(ip_iface, ip4_addr.address, ip4_addr.plen);
-    nm_firewall_config_apply(priv->ipshared_data_4.v4.firewall_config, TRUE);
+        nm_firewall_config_new_shared(ip_iface, ip4_addr.address, ip4_addr.plen);
+    nm_firewall_config_apply_sync(priv->ipshared_data_4.v4.firewall_config, TRUE);
 
     priv->ipshared_data_4.v4.l3cd = nm_l3_config_data_ref(l3cd);
     _dev_l3_register_l3cds_set_one(self, L3_CONFIG_DATA_TYPE_SHARED_4, l3cd, FALSE);
@@ -16857,6 +16871,49 @@ nm_device_get_initial_hw_address(NMDevice *self)
     return NM_DEVICE_GET_PRIVATE(self)->hw_addr_initial;
 }
 
+void
+nm_device_set_autoconnect_retries(NMDevice *self, int tries)
+{
+    NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE(self);
+
+    if (priv->autoconnect_retries != tries) {
+        _LOGT(LOGD_DEVICE, "autoconnect: retries set %d", tries);
+        priv->autoconnect_retries = tries;
+    }
+
+    if (tries)
+        priv->autoconnect_retries_blocked_until = 0; /* we are not blocked anymore */
+    else
+        priv->autoconnect_retries_blocked_until =
+            nm_utils_get_monotonic_timestamp_sec() + AUTOCONNECT_RESET_RETRIES_TIMER;
+}
+
+int
+nm_device_get_autoconnect_retries(NMDevice *self)
+{
+    NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE(self);
+
+    return priv->autoconnect_retries;
+}
+
+gint32
+nm_device_autoconnect_retries_blocked_until(NMDevice *self)
+{
+    NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE(self);
+
+    return priv->autoconnect_retries_blocked_until;
+}
+
+void
+nm_device_autoconnect_retries_reset(NMDevice *self)
+{
+    NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE(self);
+
+    /* default value, we will sync. with connection value when needed */
+    priv->autoconnect_retries               = -2;
+    priv->autoconnect_retries_blocked_until = 0;
+}
+
 /**
  * nm_device_spec_match_list:
  * @self: an #NMDevice
@@ -17161,6 +17218,13 @@ nm_device_get_hostname_from_dns_lookup(NMDevice *self, int addr_family, gboolean
     /* If the device is not supposed to have addresses,
      * return an immediate empty result.*/
     if (!nm_device_get_applied_connection(self)) {
+        nm_clear_pointer(&priv->hostname_resolver_x[IS_IPv4], _hostname_resolver_free);
+        NM_SET_OUT(out_wait, FALSE);
+        return NULL;
+    }
+
+    if (!priv->carrier) {
+        nm_clear_pointer(&priv->hostname_resolver_x[IS_IPv4], _hostname_resolver_free);
         NM_SET_OUT(out_wait, FALSE);
         return NULL;
     }
@@ -17601,6 +17665,8 @@ nm_device_init(NMDevice *self)
     priv->sys_iface_state_      = NM_DEVICE_SYS_IFACE_STATE_EXTERNAL;
 
     priv->promisc_reset = NM_OPTION_BOOL_DEFAULT;
+
+    priv->autoconnect_retries = -2;
 }
 
 static GObject *
diff --git a/src/core/devices/nm-device.h b/src/core/devices/nm-device.h
index de850e68..fea46bb7 100644
--- a/src/core/devices/nm-device.h
+++ b/src/core/devices/nm-device.h
@@ -464,6 +464,11 @@ const char *nm_device_get_permanent_hw_address_full(NMDevice *self,
                                                     gboolean *out_is_fake);
 const char *nm_device_get_initial_hw_address(NMDevice *dev);
 
+void   nm_device_set_autoconnect_retries(NMDevice *self, int tries);
+int    nm_device_get_autoconnect_retries(NMDevice *self);
+gint32 nm_device_autoconnect_retries_blocked_until(NMDevice *self);
+void   nm_device_autoconnect_retries_reset(NMDevice *self);
+
 NMDhcpConfig *nm_device_get_dhcp_config(NMDevice *dev, int addr_family);
 
 NML3Cfg *nm_device_get_l3cfg(NMDevice *self);
diff --git a/src/core/devices/ovs/nm-ovsdb.c b/src/core/devices/ovs/nm-ovsdb.c
index e7c96852..d3e858a1 100644
--- a/src/core/devices/ovs/nm-ovsdb.c
+++ b/src/core/devices/ovs/nm-ovsdb.c
@@ -18,6 +18,7 @@
 #include "nm-manager.h"
 #include "nm-setting-ovs-external-ids.h"
 #include "nm-priv-helper-call.h"
+#include "libnm-platform/nm-platform.h"
 
 /*****************************************************************************/
 
@@ -120,6 +121,7 @@ enum {
 static guint signals[LAST_SIGNAL] = {0};
 
 typedef struct {
+    NMPlatform        *platform;
     GSocketConnection *conn;
     GCancellable      *conn_cancellable;
     char               buf[4096]; /* Input buffer */
@@ -135,8 +137,14 @@ typedef struct {
     GHashTable *bridges;    /* bridge uuid => OpenvswitchBridge */
     char       *db_uuid;
     guint       num_failures;
-    guint       num_pending_deletions;
     bool        ready : 1;
+    struct {
+        GPtrArray *interfaces;      /* Interface names we are waiting to go away */
+        GSource   *timeout_source;  /* After all deletions complete, wait this
+                                    * timeout for interfaces to disappear */
+        gulong     link_changed_id; /* Platform link-changed signal handle */
+        guint      num_pending_del; /* Number of ovsdb deletions pending */
+    } cleanup;
 } NMOvsdbPrivate;
 
 struct _NMOvsdb {
@@ -161,6 +169,7 @@ static void ovsdb_disconnect(NMOvsdb *self, gboolean retry, gboolean is_disposin
 static void ovsdb_read(NMOvsdb *self);
 static void ovsdb_write(NMOvsdb *self);
 static void ovsdb_next_command(NMOvsdb *self);
+static void cleanup_check_ready(NMOvsdb *self);
 
 /*****************************************************************************/
 
@@ -2283,21 +2292,114 @@ ovsdb_disconnect(NMOvsdb *self, gboolean retry, gboolean is_disposing)
 }
 
 static void
-_check_ready(NMOvsdb *self)
+cleanup_emit_ready(NMOvsdb *self, const char *reason)
+{
+    NMOvsdbPrivate *priv = NM_OVSDB_GET_PRIVATE(self);
+
+    _LOGT("cleanup: ready (%s)", reason);
+
+    nm_clear_pointer(&priv->cleanup.interfaces, g_ptr_array_unref);
+    nm_clear_g_source_inst(&priv->cleanup.timeout_source);
+    nm_clear_g_signal_handler(priv->platform, &priv->cleanup.link_changed_id);
+
+    priv->ready = TRUE;
+    g_signal_emit(self, signals[READY], 0);
+    nm_manager_unblock_failed_ovs_interfaces(nm_manager_get());
+}
+
+static gboolean
+cleanup_timeout(NMOvsdb *self)
+{
+    cleanup_emit_ready(self, "timeout");
+    return G_SOURCE_CONTINUE;
+}
+
+static void
+cleanup_link_cb(NMPlatform     *platform,
+                int             obj_type_i,
+                int             ifindex,
+                NMPlatformLink *plink,
+                int             change_type_i,
+                gpointer        user_data)
+{
+    const NMPlatformSignalChangeType change_type = change_type_i;
+
+    if (change_type != NM_PLATFORM_SIGNAL_REMOVED)
+        return;
+
+    cleanup_check_ready(user_data);
+}
+
+static void
+cleanup_check_ready(NMOvsdb *self)
 {
     NMOvsdbPrivate *priv = NM_OVSDB_GET_PRIVATE(self);
+    guint           i    = 0;
 
     nm_assert(!priv->ready);
 
-    if (priv->num_pending_deletions == 0) {
-        priv->ready = TRUE;
-        g_signal_emit(self, signals[READY], 0);
-        nm_manager_unblock_failed_ovs_interfaces(nm_manager_get());
+    if (priv->cleanup.num_pending_del > 0)
+        return;
+
+    /* After we have deleted an interface from ovsdb, the link will stay
+     * in platform until ovs-vswitch removes it. To avoid race conditions,
+     * we need to wait until the link goes away; otherwise, after adding the
+     * interface again, these race conditions can happen:
+     * 1) we see the link in platform, and proceed with activation. But after
+     *    that, ovs-vswitchd reads the updates from ovsdb-server and deletes/recreates
+     *    the link.
+     * 2) ovs-vswitch combines the delete/insert of the interface to a no-op. NM sees
+     *    the link staying in platform, but doesn't know whether the link is ready
+     *    or we are again in case 1)
+     * In other words, it's necessary to wait that the link goes away before inserting
+     * the interface again.
+     */
+    while (i < nm_g_ptr_array_len(priv->cleanup.interfaces)) {
+        const char                  *ifname;
+        const NMDedupMultiHeadEntry *pl_links_head_entry;
+        NMDedupMultiIter             pliter;
+        const NMPlatformLink        *link;
+        gboolean                     found = FALSE;
+
+        ifname              = priv->cleanup.interfaces->pdata[i];
+        pl_links_head_entry = nm_platform_lookup_link_by_ifname(priv->platform, ifname);
+        nmp_cache_iter_for_each_link (&pliter, pl_links_head_entry, &link) {
+            if (link->type == NM_LINK_TYPE_OPENVSWITCH
+                && nmp_object_is_visible(NMP_OBJECT_UP_CAST(link))) {
+                found = TRUE;
+                break;
+            }
+        }
+
+        if (!found) {
+            g_ptr_array_remove_index_fast(priv->cleanup.interfaces, i);
+            continue;
+        }
+        i++;
     }
+
+    if (nm_g_ptr_array_len(priv->cleanup.interfaces) == 0) {
+        cleanup_emit_ready(self, "all interfaces deleted");
+        return;
+    }
+
+    _LOGT("cleanup: still waiting for %d interfaces", priv->cleanup.interfaces->len);
+
+    if (priv->cleanup.timeout_source) {
+        /* We already registered the timeout/change-callback */
+        return;
+    }
+
+    priv->cleanup.timeout_source =
+        nm_g_timeout_add_seconds_source(6, G_SOURCE_FUNC(cleanup_timeout), self);
+    priv->cleanup.link_changed_id = g_signal_connect(priv->platform,
+                                                     NM_PLATFORM_SIGNAL_LINK_CHANGED,
+                                                     G_CALLBACK(cleanup_link_cb),
+                                                     self);
 }
 
 static void
-_del_initial_iface_cb(GError *error, gpointer user_data)
+cleanup_del_iface_cb(GError *error, gpointer user_data)
 {
     NMOvsdb        *self;
     gs_free char   *ifname = NULL;
@@ -2309,18 +2411,18 @@ _del_initial_iface_cb(GError *error, gpointer user_data)
         return;
 
     priv = NM_OVSDB_GET_PRIVATE(self);
-    nm_assert(priv->num_pending_deletions > 0);
-    priv->num_pending_deletions--;
+    nm_assert(priv->cleanup.num_pending_del > 0);
+    priv->cleanup.num_pending_del--;
 
-    _LOGD("delete initial interface '%s': %s %s%s%s, pending %u",
+    _LOGD("cleanup: deleted interface '%s': %s %s%s%s, pending %u",
           ifname,
           error ? "error" : "success",
           error ? "(" : "",
           error ? error->message : "",
           error ? ")" : "",
-          priv->num_pending_deletions);
+          priv->cleanup.num_pending_del);
 
-    _check_ready(self);
+    cleanup_check_ready(self);
 }
 
 static void
@@ -2331,7 +2433,7 @@ ovsdb_cleanup_initial_interfaces(NMOvsdb *self)
     NMUtilsUserData            *data;
     GHashTableIter              iter;
 
-    if (priv->ready || priv->num_pending_deletions != 0)
+    if (priv->ready || priv->cleanup.num_pending_del > 0 || priv->cleanup.interfaces)
         return;
 
     /* Delete OVS interfaces added by NM. Bridges and ports and
@@ -2339,17 +2441,22 @@ ovsdb_cleanup_initial_interfaces(NMOvsdb *self)
      * when no interface is present. */
     g_hash_table_iter_init(&iter, self->_priv.interfaces);
     while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &interface)) {
-        if (interface->connection_uuid) {
-            priv->num_pending_deletions++;
-            _LOGD("deleting initial interface '%s' (pending: %u)",
-                  interface->name,
-                  priv->num_pending_deletions);
-            data = nm_utils_user_data_pack(self, g_strdup(interface->name));
-            nm_ovsdb_del_interface(self, interface->name, _del_initial_iface_cb, data);
+        if (!interface->connection_uuid) {
+            /* not created by NM, ignore */
+            continue;
         }
+
+        if (!priv->cleanup.interfaces)
+            priv->cleanup.interfaces = g_ptr_array_new_with_free_func(g_free);
+        g_ptr_array_add(priv->cleanup.interfaces, g_strdup(interface->name));
+
+        _LOGD("cleanup: deleting interface '%s'", interface->name);
+        priv->cleanup.num_pending_del++;
+        data = nm_utils_user_data_pack(self, g_strdup(interface->name));
+        nm_ovsdb_del_interface(self, interface->name, cleanup_del_iface_cb, data);
     }
 
-    _check_ready(self);
+    cleanup_check_ready(self);
 }
 
 static void
@@ -2622,8 +2729,9 @@ nm_ovsdb_init(NMOvsdb *self)
 
     c_list_init(&priv->calls_lst_head);
 
-    priv->input  = g_string_new(NULL);
-    priv->output = g_string_new(NULL);
+    priv->platform = g_object_ref(NM_PLATFORM_GET);
+    priv->input    = g_string_new(NULL);
+    priv->output   = g_string_new(NULL);
     priv->bridges =
         g_hash_table_new_full(nm_pstr_hash, nm_pstr_equal, (GDestroyNotify) _free_bridge, NULL);
     priv->ports =
@@ -2653,6 +2761,7 @@ dispose(GObject *object)
         priv->output = NULL;
     }
 
+    g_clear_object(&priv->platform);
     nm_clear_pointer(&priv->bridges, g_hash_table_destroy);
     nm_clear_pointer(&priv->ports, g_hash_table_destroy);
     nm_clear_pointer(&priv->interfaces, g_hash_table_destroy);
diff --git a/src/core/dhcp/nm-dhcp-client.c b/src/core/dhcp/nm-dhcp-client.c
index 77cfeecf..1329b953 100644
--- a/src/core/dhcp/nm-dhcp-client.c
+++ b/src/core/dhcp/nm-dhcp-client.c
@@ -115,9 +115,6 @@ typedef struct _NMDhcpClientPrivate {
                 in_addr_t    addr;
                 NMOptionBool state;
             } acd;
-            struct {
-                GDBusMethodInvocation *invocation;
-            } bound;
         } v4;
         struct {
             GSource *lladdr_timeout_source;
@@ -125,6 +122,8 @@ typedef struct _NMDhcpClientPrivate {
         } v6;
     };
 
+    GDBusMethodInvocation *invocation;
+
     struct {
         gulong id;
         bool   wait_dhcp_commit : 1;
@@ -909,13 +908,10 @@ _accept(NMDhcpClient *self, const NML3ConfigData *l3cd, GError **error)
 {
     NMDhcpClientPrivate *priv = NM_DHCP_CLIENT_GET_PRIVATE(self);
 
-    if (!NM_IS_IPv4(priv->config.addr_family))
+    if (!priv->invocation)
         return TRUE;
 
-    if (!priv->v4.bound.invocation)
-        return TRUE;
-
-    g_dbus_method_invocation_return_value(g_steal_pointer(&priv->v4.bound.invocation), NULL);
+    g_dbus_method_invocation_return_value(g_steal_pointer(&priv->invocation), NULL);
     return TRUE;
 }
 
@@ -939,20 +935,17 @@ decline(NMDhcpClient *self, const NML3ConfigData *l3cd, const char *error_messag
 {
     NMDhcpClientPrivate *priv = NM_DHCP_CLIENT_GET_PRIVATE(self);
 
-    if (!NM_IS_IPv4(priv->config.addr_family))
-        return TRUE;
-
-    if (!priv->v4.bound.invocation) {
+    if (!priv->invocation) {
         nm_utils_error_set(error,
                            NM_UTILS_ERROR_UNKNOWN,
                            "calling decline in unexpected script state");
         return FALSE;
     }
-
-    g_dbus_method_invocation_return_error(g_steal_pointer(&priv->v4.bound.invocation),
+    g_dbus_method_invocation_return_error(g_steal_pointer(&priv->invocation),
                                           NM_DEVICE_ERROR,
                                           NM_DEVICE_ERROR_FAILED,
-                                          "acd failed");
+                                          NM_IS_IPv4(priv->config.addr_family) ? "ACD failed"
+                                                                               : "DAD failed");
     return TRUE;
 }
 
@@ -1043,8 +1036,11 @@ ipv6_lladdr_find(NMDhcpClient *self)
     return NULL;
 }
 
-static const NMPlatformIP6Address *
-ipv6_tentative_addr_find(NMDhcpClient *self)
+static void
+ipv6_tentative_addr_check(NMDhcpClient                *self,
+                          GPtrArray                  **tentative,
+                          GPtrArray                  **missing,
+                          const NMPlatformIP6Address **valid)
 {
     NMDhcpClientPrivate        *priv = NM_DHCP_CLIENT_GET_PRIVATE(self);
     NMDedupMultiIter            iter;
@@ -1062,16 +1058,26 @@ ipv6_tentative_addr_find(NMDhcpClient *self)
                                                                     NMP_CACHE_ID_TYPE_OBJECT_TYPE,
                                                                     &needle));
         if (!pladdr) {
-            /* Address was removed from platform */
+            /* address removed: we assume that's because DAD failed */
+            if (missing) {
+                if (!*missing)
+                    *missing = g_ptr_array_new();
+                g_ptr_array_add(*missing, (gpointer) addr);
+            }
             continue;
         }
 
         if (NM_FLAGS_HAS(pladdr->n_ifa_flags, IFA_F_TENTATIVE)
-            && !NM_FLAGS_HAS(pladdr->n_ifa_flags, IFA_F_OPTIMISTIC))
-            return pladdr;
-    }
+            && !NM_FLAGS_HAS(pladdr->n_ifa_flags, IFA_F_OPTIMISTIC)) {
+            if (tentative) {
+                if (!*tentative)
+                    *tentative = g_ptr_array_new();
+                g_ptr_array_add(*tentative, (gpointer) addr);
+            }
+        }
 
-    return NULL;
+        NM_SET_OUT(valid, addr);
+    }
 }
 
 static void
@@ -1108,21 +1114,61 @@ l3_cfg_notify_cb(NML3Cfg *l3cfg, const NML3ConfigNotifyData *notify_data, NMDhcp
 
     if (notify_data->notify_type == NM_L3_CONFIG_NOTIFY_TYPE_PLATFORM_CHANGE_ON_IDLE
         && priv->l3cfg_notify.wait_ipv6_dad) {
-        const NMPlatformIP6Address *tentative;
+        gs_unref_ptrarray GPtrArray *tentative = NULL;
+        gs_unref_ptrarray GPtrArray *missing   = NULL;
+        const NMPlatformIP6Address  *valid     = NULL;
+        char                         str[NM_UTILS_TO_STRING_BUFFER_SIZE];
+        guint                        i;
+        gs_free_error GError        *error = NULL;
+
+        ipv6_tentative_addr_check(self, &tentative, &missing, &valid);
+        if (tentative) {
+            for (i = 0; i < tentative->len; i++) {
+                _LOGD("still waiting DAD for address: %s",
+                      nm_platform_ip6_address_to_string(tentative->pdata[i], str, sizeof(str)));
+            }
+        } else {
+            /* done */
 
-        tentative = ipv6_tentative_addr_find(self);
-        if (!tentative) {
-            _LOGD("addresses in the lease completed DAD");
             priv->l3cfg_notify.wait_ipv6_dad = FALSE;
             nm_clear_g_source_inst(&priv->v6.dad_timeout_source);
             l3_cfg_notify_check_connected(self);
-            _emit_notify(
-                self,
-                &((NMDhcpClientNotifyData){.notify_type  = NM_DHCP_CLIENT_NOTIFY_TYPE_LEASE_UPDATE,
-                                           .lease_update = {
-                                               .l3cd     = priv->l3cd_curr,
-                                               .accepted = TRUE,
-                                           }}));
+
+            if (missing) {
+                for (i = 0; i < missing->len; i++) {
+                    _LOGE("DAD failed for address: %s",
+                          nm_platform_ip6_address_to_string(missing->pdata[i], str, sizeof(str)));
+                }
+            }
+
+            if (valid) {
+                /* at least one non-duplicate address */
+                _LOGD("addresses in the lease completed DAD: accept the lease");
+
+                if (_dhcp_client_accept(self, priv->l3cd_curr, &error)) {
+                    _emit_notify(self,
+                                 &((NMDhcpClientNotifyData){
+                                     .notify_type  = NM_DHCP_CLIENT_NOTIFY_TYPE_LEASE_UPDATE,
+                                     .lease_update = {
+                                         .l3cd     = priv->l3cd_curr,
+                                         .accepted = TRUE,
+                                     }}));
+                } else {
+                    gs_free char *reason =
+                        g_strdup_printf("error accepting lease: %s", error->message);
+
+                    _LOGD("accept failed: %s", error->message);
+                    _emit_notify(self,
+                                 &((NMDhcpClientNotifyData){
+                                     .notify_type         = NM_DHCP_CLIENT_NOTIFY_TYPE_IT_LOOKS_BAD,
+                                     .it_looks_bad.reason = reason,
+                                 }));
+                }
+            } else {
+                _LOGD("decline the lease");
+                if (!_dhcp_client_decline(self, priv->l3cd_curr, "DAD failed", &error))
+                    _LOGD("decline failed: %s", error->message);
+            }
         }
     }
 
@@ -1155,20 +1201,23 @@ l3_cfg_notify_cb(NML3Cfg *l3cfg, const NML3ConfigNotifyData *notify_data, NMDhcp
                                                     address4->peer_address))
                 goto wait_dhcp_commit_done;
         } else {
-            const NMPlatformIP6Address *address6 = (const NMPlatformIP6Address *) lease_address;
-            const NMPlatformIP6Address *tentative;
-            char                        str[NM_UTILS_TO_STRING_BUFFER_SIZE];
+            const NMPlatformIP6Address  *address6  = (const NMPlatformIP6Address *) lease_address;
+            gs_unref_ptrarray GPtrArray *tentative = NULL;
+            char                         str[NM_UTILS_TO_STRING_BUFFER_SIZE];
+            guint                        i;
 
             if (!nm_l3_config_data_lookup_address_6(committed_l3cd, &address6->address))
                 goto wait_dhcp_commit_done;
 
-            tentative = ipv6_tentative_addr_find(self);
+            ipv6_tentative_addr_check(self, &tentative, NULL, NULL);
             if (tentative) {
                 priv->l3cfg_notify.wait_ipv6_dad = TRUE;
                 priv->v6.dad_timeout_source =
                     nm_g_timeout_add_seconds_source(30, ipv6_dad_timeout, self);
-                _LOGD("wait DAD for address %s",
-                      nm_platform_ip6_address_to_string(tentative, str, sizeof(str)));
+                for (i = 0; i < tentative->len; i++) {
+                    _LOGD("wait DAD for address %s",
+                          nm_platform_ip6_address_to_string(tentative->pdata[i], str, sizeof(str)));
+                }
             } else {
                 priv->l3cfg_notify.wait_ipv6_dad = FALSE;
                 nm_clear_g_source_inst(&priv->v6.dad_timeout_source);
@@ -1179,22 +1228,22 @@ l3_cfg_notify_cb(NML3Cfg *l3cfg, const NML3ConfigNotifyData *notify_data, NMDhcp
 
         l3_cfg_notify_check_connected(self);
 
-        _LOGD("accept lease");
+        if (priv->config.addr_family == AF_INET || !priv->l3cfg_notify.wait_ipv6_dad) {
+            _LOGD("accept lease");
 
-        if (!_dhcp_client_accept(self, priv->l3cd_curr, &error)) {
-            gs_free char *reason = g_strdup_printf("error accepting lease: %s", error->message);
+            if (!_dhcp_client_accept(self, priv->l3cd_curr, &error)) {
+                gs_free char *reason = g_strdup_printf("error accepting lease: %s", error->message);
 
-            _LOGD("accept failed: %s", error->message);
+                _LOGD("accept failed: %s", error->message);
 
-            _emit_notify(self,
-                         &((NMDhcpClientNotifyData){
-                             .notify_type         = NM_DHCP_CLIENT_NOTIFY_TYPE_IT_LOOKS_BAD,
-                             .it_looks_bad.reason = reason,
-                         }));
-            goto wait_dhcp_commit_done;
-        }
+                _emit_notify(self,
+                             &((NMDhcpClientNotifyData){
+                                 .notify_type         = NM_DHCP_CLIENT_NOTIFY_TYPE_IT_LOOKS_BAD,
+                                 .it_looks_bad.reason = reason,
+                             }));
+                goto wait_dhcp_commit_done;
+            }
 
-        if (priv->config.addr_family == AF_INET || !priv->l3cfg_notify.wait_ipv6_dad) {
             _emit_notify(
                 self,
                 &((NMDhcpClientNotifyData){.notify_type  = NM_DHCP_CLIENT_NOTIFY_TYPE_LEASE_UPDATE,
@@ -1368,8 +1417,8 @@ nm_dhcp_client_stop(NMDhcpClient *self, gboolean release)
 
     priv->is_stopped = TRUE;
 
-    if (NM_IS_IPv4(priv->config.addr_family) && priv->v4.bound.invocation) {
-        g_dbus_method_invocation_return_error(g_steal_pointer(&priv->v4.bound.invocation),
+    if (priv->invocation) {
+        g_dbus_method_invocation_return_error(g_steal_pointer(&priv->invocation),
                                               NM_DEVICE_ERROR,
                                               NM_DEVICE_ERROR_FAILED,
                                               "dhcp stopping");
@@ -1528,7 +1577,6 @@ nm_dhcp_client_handle_event(gpointer               unused,
     NMPlatformIP6Address                    prefix = {
                            0,
     };
-    int IS_IPv4;
 
     g_return_val_if_fail(NM_IS_DHCP_CLIENT(self), FALSE);
     g_return_val_if_fail(iface != NULL, FALSE);
@@ -1625,16 +1673,13 @@ nm_dhcp_client_handle_event(gpointer               unused,
         client_event_type = NM_DHCP_CLIENT_EVENT_TYPE_FAIL;
     }
 
-    IS_IPv4 = NM_IS_IPv4(priv->config.addr_family);
-
-    if (IS_IPv4 && priv->v4.bound.invocation)
-        g_dbus_method_invocation_return_value(g_steal_pointer(&priv->v4.bound.invocation), NULL);
+    if (priv->invocation)
+        g_dbus_method_invocation_return_value(g_steal_pointer(&priv->invocation), NULL);
 
-    if (IS_IPv4
-        && NM_IN_SET(client_event_type,
-                     NM_DHCP_CLIENT_EVENT_TYPE_BOUND,
-                     NM_DHCP_CLIENT_EVENT_TYPE_EXTENDED))
-        priv->v4.bound.invocation = g_steal_pointer(&invocation);
+    if (NM_IN_SET(client_event_type,
+                  NM_DHCP_CLIENT_EVENT_TYPE_BOUND,
+                  NM_DHCP_CLIENT_EVENT_TYPE_EXTENDED))
+        priv->invocation = g_steal_pointer(&invocation);
 
     _nm_dhcp_client_notify(self, client_event_type, l3cd);
 
@@ -1785,10 +1830,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps
          * explicitly initialize the respective union member. */
         if (NM_IS_IPv4(priv->config.addr_family)) {
             priv->v4 = (typeof(priv->v4)){
-                .bound =
-                    {
-                        .invocation = NULL,
-                    },
                 .acd =
                     {
                         .addr                = INADDR_ANY,
diff --git a/src/core/dhcp/nm-dhcp-helper.c b/src/core/dhcp/nm-dhcp-helper.c
index 5a17f4e8..78db617c 100644
--- a/src/core/dhcp/nm-dhcp-helper.c
+++ b/src/core/dhcp/nm-dhcp-helper.c
@@ -114,6 +114,8 @@ main(int argc, char *argv[])
     gint64                           time_start;
     gint64                           time_end;
     gint64                           remaining_time;
+    gboolean                         IS_IPv4;
+    const char                      *reason;
 
     /* Connecting to the unix socket can fail with EAGAIN if there are too
      * many pending connections and the server can't accept them in time
@@ -124,7 +126,19 @@ main(int argc, char *argv[])
     time_end   = time_start + (5000 * 1000L);
     try_count  = 0;
 
-    _LOGi("nm-dhcp-helper: event called");
+    reason = getenv("reason");
+
+    _LOGi("nm-dhcp-helper: event called: %s", reason);
+
+    IS_IPv4 = !NM_IN_STRSET(reason,
+                            "PREINIT6",
+                            "BOUND6",
+                            "RENEW6",
+                            "REBIND6",
+                            "DEPREF6",
+                            "EXPIRE6",
+                            "RELEASE6",
+                            "STOP6");
 
 do_connect:
     try_count++;
@@ -244,5 +258,6 @@ out:
     }
 
     _LOGi("success: %s", success ? "YES" : "NO");
-    return success ? EXIT_SUCCESS : EXIT_FAILURE;
+    /* The error code to send a decline depends on the address family */
+    return success ? EXIT_SUCCESS : (IS_IPv4 ? 1 : 3);
 }
diff --git a/src/core/dns/nm-dns-manager.c b/src/core/dns/nm-dns-manager.c
index 1e54452a..a2fead3f 100644
--- a/src/core/dns/nm-dns-manager.c
+++ b/src/core/dns/nm-dns-manager.c
@@ -2039,8 +2039,15 @@ nm_dns_manager_set_ip_config(NMDnsManager         *self,
 
     if (!ip_data) {
         ip_data = _dns_config_ip_data_new(data, addr_family, source_tag, l3cd, ip_config_type);
-        if (!any_removed)
+        priv->ip_data_lst_need_sort = TRUE;
+        if (!any_removed) {
+            /* `any_removed` tracks whether we deleted any ip_data. If that happened,
+             * we already compared the old and new l3cds and set `changed` accordingly.
+             * Here we only need to set `changed` if we are adding a new ip_data without
+             * removing the old one.
+             */
             changed = TRUE;
+        }
     } else {
         ip_data->ip_config_type = ip_config_type;
         changed                 = TRUE;
diff --git a/src/core/nm-config-data.c b/src/core/nm-config-data.c
index 0f512e38..753e3fb5 100644
--- a/src/core/nm-config-data.c
+++ b/src/core/nm-config-data.c
@@ -585,7 +585,7 @@ _merge_keyfiles(GKeyFile *keyfile_user, GKeyFile *keyfile_intern)
         if (!keys)
             continue;
 
-        is_intern = g_str_has_prefix(group, NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN);
+        is_intern = NM_STR_HAS_PREFIX(group, NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN);
         if (!is_intern
             && g_key_file_has_key(keyfile_intern,
                                   group,
@@ -634,9 +634,11 @@ _nm_config_data_log_sort(const char **pa, const char **pb, gpointer dummy)
     const char *a = *pa;
     const char *b = *pb;
 
+    nm_assert(a && b && !nm_streq(a, b));
+
     /* we sort intern groups to the end. */
-    a_is_intern = g_str_has_prefix(a, NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN);
-    b_is_intern = g_str_has_prefix(b, NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN);
+    a_is_intern = NM_STR_HAS_PREFIX(a, NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN);
+    b_is_intern = NM_STR_HAS_PREFIX(b, NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN);
 
     if (a_is_intern && b_is_intern)
         return 0;
@@ -646,8 +648,8 @@ _nm_config_data_log_sort(const char **pa, const char **pb, gpointer dummy)
         return -1;
 
     /* we sort connection groups before intern groups (to the end). */
-    a_is_connection = a && g_str_has_prefix(a, NM_CONFIG_KEYFILE_GROUPPREFIX_CONNECTION);
-    b_is_connection = b && g_str_has_prefix(b, NM_CONFIG_KEYFILE_GROUPPREFIX_CONNECTION);
+    a_is_connection = NM_STR_HAS_PREFIX(a, NM_CONFIG_KEYFILE_GROUPPREFIX_CONNECTION);
+    b_is_connection = NM_STR_HAS_PREFIX(b, NM_CONFIG_KEYFILE_GROUPPREFIX_CONNECTION);
 
     if (a_is_connection && b_is_connection) {
         /* if both are connection groups, we want the explicit [connection] group first. */
@@ -668,8 +670,8 @@ _nm_config_data_log_sort(const char **pa, const char **pb, gpointer dummy)
         return -1;
 
     /* we sort device groups before connection groups (to the end). */
-    a_is_device = a && g_str_has_prefix(a, NM_CONFIG_KEYFILE_GROUPPREFIX_DEVICE);
-    b_is_device = b && g_str_has_prefix(b, NM_CONFIG_KEYFILE_GROUPPREFIX_DEVICE);
+    a_is_device = NM_STR_HAS_PREFIX(a, NM_CONFIG_KEYFILE_GROUPPREFIX_DEVICE);
+    b_is_device = NM_STR_HAS_PREFIX(b, NM_CONFIG_KEYFILE_GROUPPREFIX_DEVICE);
 
     if (a_is_device && b_is_device) {
         /* if both are device groups, we want the explicit [device] group first. */
@@ -770,27 +772,48 @@ nm_config_data_log(const NMConfigData  *self,
     groups_full = g_ptr_array_sized_new(ngroups + 5);
 
     if (ngroups) {
+        /* g_key_file_get_groups() can return duplicates ( :( ), but the
+         * keyfile that we constructed should not have any. Assert for that. */
+        nm_assert(!nm_strv_has_duplicate((const char *const *) groups, ngroups, FALSE));
+
         g_ptr_array_set_size(groups_full, ngroups);
         memcpy(groups_full->pdata, groups, sizeof(groups[0]) * ngroups);
-        g_ptr_array_sort_with_data(groups_full, (GCompareDataFunc) _nm_config_data_log_sort, NULL);
     }
 
     if (print_default) {
         for (g = 0; g < G_N_ELEMENTS(default_values); g++) {
             const char *group = default_values[g].group;
-            gssize      idx;
+            guint       g2;
 
-            idx = nm_utils_array_find_binary_search((gconstpointer *) groups_full->pdata,
-                                                    sizeof(char *),
-                                                    groups_full->len,
-                                                    &group,
-                                                    (GCompareDataFunc) _nm_config_data_log_sort,
-                                                    NULL);
-            if (idx < 0)
-                g_ptr_array_insert(groups_full, (~idx), (gpointer) group);
+            if (g > 0) {
+                if (nm_streq(group, default_values[g - 1].group)) {
+                    /* Repeated values. We already added this one. Skip */
+                    continue;
+                }
+                if (NM_MORE_ASSERT_ONCE(20)) {
+                    /* We require that the default values are grouped by their "group".
+                     * That is, all default values for a certain "group" are close to
+                     * each other in the list. Assert for that. */
+                    for (g2 = g + 1; g2 < groups_full->len; g2++) {
+                        nm_assert(!nm_streq(default_values[g - 1].group, default_values[g2].group));
+                    }
+                }
+            }
+
+            for (g2 = 0; g2 < groups_full->len; g2++) {
+                if (nm_streq(group, groups_full->pdata[g2]))
+                    goto next;
+            }
+
+            g_ptr_array_add(groups_full, (gpointer) group);
+
+next:
+            (void) 0;
         }
     }
 
+    g_ptr_array_sort_with_data(groups_full, (GCompareDataFunc) _nm_config_data_log_sort, NULL);
+
     if (!stream)
         _LOG(stream, prefix, "config-data[%p]: %u groups", self, groups_full->len);
 
diff --git a/src/core/nm-firewall-utils.c b/src/core/nm-firewall-utils.c
index 1311f503..e482ab96 100644
--- a/src/core/nm-firewall-utils.c
+++ b/src/core/nm-firewall-utils.c
@@ -111,6 +111,8 @@ _share_iptables_get_name(gboolean is_iptables_chain, const char *prefix, const c
     return nm_str_buf_finalize(&strbuf, NULL);
 }
 
+/*****************************************************************************/
+
 static gboolean
 _share_iptables_call_v(const char *const *argv)
 {
@@ -171,7 +173,7 @@ _share_iptables_chain_add(const char *table, const char *chain)
 }
 
 static void
-_share_iptables_set_masquerade(gboolean add, const char *ip_iface, in_addr_t addr, guint8 plen)
+_share_iptables_set_masquerade_sync(gboolean up, const char *ip_iface, in_addr_t addr, guint8 plen)
 {
     char          str_subnet[_SHARE_IPTABLES_SUBNET_TO_STR_LEN];
     gs_free char *comment_name = NULL;
@@ -182,7 +184,7 @@ _share_iptables_set_masquerade(gboolean add, const char *ip_iface, in_addr_t add
     _share_iptables_call("" IPTABLES_PATH "",
                          "--table",
                          "nat",
-                         add ? "--insert" : "--delete",
+                         up ? "--insert" : "--delete",
                          "POSTROUTING",
                          "--source",
                          str_subnet,
@@ -309,8 +311,8 @@ _share_iptables_set_shared_chains_delete(const char *chain_input, const char *ch
     _share_iptables_chain_delete("filter", chain_forward);
 }
 
-_nm_unused static void
-_share_iptables_set_shared(gboolean add, const char *ip_iface, in_addr_t addr, guint plen)
+static void
+_share_iptables_set_shared_sync(gboolean up, const char *ip_iface, in_addr_t addr, guint plen)
 {
     gs_free char *comment_name  = NULL;
     gs_free char *chain_input   = NULL;
@@ -320,13 +322,13 @@ _share_iptables_set_shared(gboolean add, const char *ip_iface, in_addr_t addr, g
     chain_input   = _share_iptables_get_name(TRUE, "nm-sh-in", ip_iface);
     chain_forward = _share_iptables_get_name(TRUE, "nm-sh-fw", ip_iface);
 
-    if (add)
+    if (up)
         _share_iptables_set_shared_chains_add(chain_input, chain_forward, ip_iface, addr, plen);
 
     _share_iptables_call("" IPTABLES_PATH "",
                          "--table",
                          "filter",
-                         add ? "--insert" : "--delete",
+                         up ? "--insert" : "--delete",
                          "INPUT",
                          "--in-interface",
                          ip_iface,
@@ -340,7 +342,7 @@ _share_iptables_set_shared(gboolean add, const char *ip_iface, in_addr_t addr, g
     _share_iptables_call("" IPTABLES_PATH "",
                          "--table",
                          "filter",
-                         add ? "--insert" : "--delete",
+                         up ? "--insert" : "--delete",
                          "FORWARD",
                          "--jump",
                          chain_forward,
@@ -349,7 +351,7 @@ _share_iptables_set_shared(gboolean add, const char *ip_iface, in_addr_t addr, g
                          "--comment",
                          comment_name);
 
-    if (!add)
+    if (!up)
         _share_iptables_set_shared_chains_delete(chain_input, chain_forward);
 }
 
@@ -428,14 +430,21 @@ _fw_nft_call_communicate_cb(GObject *source, GAsyncResult *result, gpointer user
     } else if (g_subprocess_get_successful(call_data->subprocess)) {
         nm_log_dbg(LOGD_SHARING, "firewall: nft[%s]: command successful", call_data->identifier);
     } else {
+        char          buf[NM_UTILS_GET_PROCESS_EXIT_STATUS_BUF_LEN];
         gs_free char *ss_stdout    = NULL;
         gs_free char *ss_stderr    = NULL;
         gboolean      print_stdout = (stdout_buf && g_bytes_get_size(stdout_buf) > 0);
         gboolean      print_stderr = (stderr_buf && g_bytes_get_size(stderr_buf) > 0);
+        int           status;
+
+        status = g_subprocess_get_status(call_data->subprocess);
+
+        nm_utils_get_process_exit_status_desc_buf(status, buf, sizeof(buf));
 
         nm_log_warn(LOGD_SHARING,
-                    "firewall: nft[%s]: command failed:%s%s%s%s%s%s%s",
+                    "firewall: nft[%s]: command %s:%s%s%s%s%s%s%s",
                     call_data->identifier,
+                    buf,
                     print_stdout || print_stderr ? "" : " unknown reason",
                     NM_PRINT_FMT_QUOTED(
                         print_stdout,
@@ -453,6 +462,8 @@ _fw_nft_call_communicate_cb(GObject *source, GAsyncResult *result, gpointer user
                                                            &ss_stderr),
                         "\")",
                         ""));
+
+        nm_utils_error_set(&error, NM_UTILS_ERROR_COMMAND_FAILED, "nft command %s", buf);
     }
 
     _fw_nft_call_data_free(call_data, g_steal_pointer(&error));
@@ -486,23 +497,31 @@ _fw_nft_call_timeout_cb(gpointer user_data)
     return G_SOURCE_CONTINUE;
 }
 
-static void
-_fw_nft_call(GBytes             *stdin_buf,
-             GCancellable       *cancellable,
-             GAsyncReadyCallback callback,
-             gpointer            callback_user_data)
+void
+nm_firewall_nft_call(GBytes             *stdin_buf,
+                     GCancellable       *cancellable,
+                     GAsyncReadyCallback callback,
+                     gpointer            callback_user_data)
 {
     gs_unref_object GSubprocessLauncher *subprocess_launcher = NULL;
     gs_free_error GError                *error               = NULL;
     FwNftCallData                       *call_data;
+    gs_free char                        *ss1 = NULL;
 
     call_data  = g_slice_new(FwNftCallData);
     *call_data = (FwNftCallData){
-        .task       = nm_g_task_new(NULL, cancellable, _fw_nft_call, callback, callback_user_data),
-        .subprocess = NULL,
+        .task =
+            nm_g_task_new(NULL, cancellable, nm_firewall_nft_call, callback, callback_user_data),
+        .subprocess     = NULL,
         .timeout_source = NULL,
     };
 
+    nm_log_trace(LOGD_SHARING,
+                 "firewall: nft: call command: [ '%s' ]",
+                 nm_utils_buf_utf8safe_escape_bytes(stdin_buf,
+                                                    NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL,
+                                                    &ss1));
+
     if (cancellable) {
         call_data->cancellable_id = g_cancellable_connect(cancellable,
                                                           G_CALLBACK(_fw_nft_call_cancelled_cb),
@@ -554,10 +573,10 @@ _fw_nft_call(GBytes             *stdin_buf,
                            g_task_get_context(call_data->task));
 }
 
-static gboolean
-_fw_nft_call_finish(GAsyncResult *result, GError **error)
+gboolean
+nm_firewall_nft_call_finish(GAsyncResult *result, GError **error)
 {
-    g_return_val_if_fail(nm_g_task_is_valid(result, NULL, _fw_nft_call), FALSE);
+    g_return_val_if_fail(nm_g_task_is_valid(result, NULL, nm_firewall_nft_call), FALSE);
 
     return g_task_propagate_boolean(G_TASK(result), error);
 }
@@ -575,7 +594,7 @@ _fw_nft_call_sync_done(GObject *source, GAsyncResult *result, gpointer user_data
 {
     FwNftCallSyncData *data = user_data;
 
-    data->success = _fw_nft_call_finish(result, data->error);
+    data->success = nm_firewall_nft_call_finish(result, data->error);
     g_main_loop_quit(data->loop);
 }
 
@@ -590,7 +609,7 @@ _fw_nft_call_sync(GBytes *stdin_buf, GError **error)
                               .error = error,
     };
 
-    _fw_nft_call(stdin_buf, NULL, _fw_nft_call_sync_done, &data);
+    nm_firewall_nft_call(stdin_buf, NULL, _fw_nft_call_sync_done, &data);
 
     g_main_loop_run(main_loop);
     return data.success;
@@ -598,25 +617,30 @@ _fw_nft_call_sync(GBytes *stdin_buf, GError **error)
 
 /*****************************************************************************/
 
+#define _append(p_strbuf, fmt, ...) nm_str_buf_append_printf((p_strbuf), "" fmt "\n", ##__VA_ARGS__)
+
 static void
-_fw_nft_set(gboolean add, const char *ip_iface, in_addr_t addr, guint8 plen)
+_fw_nft_append_cmd_table(NMStrBuf *strbuf, const char *family, const char *table_name, gboolean up)
+{
+    /* Either delete the table, or create/flush it. */
+    _append(strbuf, "add table %s %s", family, table_name);
+    _append(strbuf, "%s table %s %s", up ? "flush" : "delete", family, table_name);
+}
+
+static GBytes *
+_fw_nft_set_shared_construct(gboolean up, const char *ip_iface, in_addr_t addr, guint8 plen)
 {
     nm_auto_str_buf NMStrBuf strbuf = NM_STR_BUF_INIT(NM_UTILS_GET_NEXT_REALLOC_SIZE_1000, FALSE);
-    gs_unref_bytes GBytes   *stdin_buf  = NULL;
     gs_free char            *table_name = NULL;
-    gs_free char            *ss1        = NULL;
     char                     str_subnet[_SHARE_IPTABLES_SUBNET_TO_STR_LEN];
 
     table_name = _share_iptables_get_name(FALSE, "nm-shared", ip_iface);
 
     _share_iptables_subnet_to_str(str_subnet, addr, plen);
 
-#define _append(p_strbuf, fmt, ...) nm_str_buf_append_printf((p_strbuf), "" fmt "\n", ##__VA_ARGS__)
-
-    _append(&strbuf, "add table ip %s", table_name);
-    _append(&strbuf, "%s table ip %s", add ? "flush" : "delete", table_name);
+    _fw_nft_append_cmd_table(&strbuf, "ip", table_name, up);
 
-    if (add) {
+    if (up) {
         _append(&strbuf,
                 "add chain ip %s nat_postrouting {"
                 " type nat hook postrouting priority 100; policy accept; "
@@ -631,16 +655,15 @@ _fw_nft_set(gboolean add, const char *ip_iface, in_addr_t addr, guint8 plen)
         /* This filter_input chain serves no real purpose, because "accept" only stops
          * evaluation of the current rule. It cannot fully accept the packet. Since
          * this chain has no other rules, it is useless in this form.
+         *
+         * _append(&strbuf,
+         *         "add chain ip %s filter_input {"
+         *         " type filter hook input priority 0; policy accept; "
+         *         "};",
+         *         table_name);
+         * _append(&strbuf, "add rule ip %s filter_input tcp dport { 67, 53 } accept;", table_name);
+         * _append(&strbuf, "add rule ip %s filter_input udp dport { 67, 53 } accept;", table_name);
          */
-        /*
-        _append(&strbuf,
-                "add chain ip %s filter_input {"
-                " type filter hook input priority 0; policy accept; "
-                "};",
-                table_name);
-        _append(&strbuf, "add rule ip %s filter_input tcp dport { 67, 53 } accept;", table_name);
-        _append(&strbuf, "add rule ip %s filter_input udp dport { 67, 53 } accept;", table_name);
-        */
 
         _append(&strbuf,
                 "add chain ip %s filter_forward {"
@@ -673,14 +696,7 @@ _fw_nft_set(gboolean add, const char *ip_iface, in_addr_t addr, guint8 plen)
                 ip_iface);
     }
 
-    nm_log_trace(LOGD_SHARING,
-                 "firewall: nft command: [ %s ]",
-                 nm_utils_str_utf8safe_escape(nm_str_buf_get_str(&strbuf),
-                                              NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL,
-                                              &ss1));
-
-    stdin_buf = nm_str_buf_finalize_to_gbytes(&strbuf);
-    _fw_nft_call_sync(stdin_buf, NULL);
+    return nm_str_buf_finalize_to_gbytes(&strbuf);
 }
 
 /*****************************************************************************/
@@ -692,7 +708,7 @@ struct _NMFirewallConfig {
 };
 
 NMFirewallConfig *
-nm_firewall_config_new(const char *ip_iface, in_addr_t addr, guint8 plen)
+nm_firewall_config_new_shared(const char *ip_iface, in_addr_t addr, guint8 plen)
 {
     NMFirewallConfig *self;
 
@@ -719,17 +735,24 @@ nm_firewall_config_free(NMFirewallConfig *self)
     nm_g_slice_free(self);
 }
 
+/*****************************************************************************/
+
 void
-nm_firewall_config_apply(NMFirewallConfig *self, gboolean shared)
+nm_firewall_config_apply_sync(NMFirewallConfig *self, gboolean up)
 {
     switch (nm_firewall_utils_get_backend()) {
     case NM_FIREWALL_BACKEND_IPTABLES:
-        _share_iptables_set_masquerade(shared, self->ip_iface, self->addr, self->plen);
-        _share_iptables_set_shared(shared, self->ip_iface, self->addr, self->plen);
+        _share_iptables_set_masquerade_sync(up, self->ip_iface, self->addr, self->plen);
+        _share_iptables_set_shared_sync(up, self->ip_iface, self->addr, self->plen);
         break;
     case NM_FIREWALL_BACKEND_NFTABLES:
-        _fw_nft_set(shared, self->ip_iface, self->addr, self->plen);
+    {
+        gs_unref_bytes GBytes *stdin_buf = NULL;
+
+        stdin_buf = _fw_nft_set_shared_construct(up, self->ip_iface, self->addr, self->plen);
+        _fw_nft_call_sync(stdin_buf, NULL);
         break;
+    }
     case NM_FIREWALL_BACKEND_NONE:
         break;
     default:
diff --git a/src/core/nm-firewall-utils.h b/src/core/nm-firewall-utils.h
index 3d6c8a69..9d883fea 100644
--- a/src/core/nm-firewall-utils.h
+++ b/src/core/nm-firewall-utils.h
@@ -20,10 +20,19 @@ NMFirewallBackend nm_firewall_utils_get_backend(void);
 
 typedef struct _NMFirewallConfig NMFirewallConfig;
 
-NMFirewallConfig *nm_firewall_config_new(const char *ip_iface, in_addr_t addr, guint8 plen);
+NMFirewallConfig *nm_firewall_config_new_shared(const char *ip_iface, in_addr_t addr, guint8 plen);
 
 void nm_firewall_config_free(NMFirewallConfig *self);
 
-void nm_firewall_config_apply(NMFirewallConfig *self, gboolean shared);
+void nm_firewall_config_apply_sync(NMFirewallConfig *self, gboolean up);
+
+/*****************************************************************************/
+
+void nm_firewall_nft_call(GBytes             *stdin_buf,
+                          GCancellable       *cancellable,
+                          GAsyncReadyCallback callback,
+                          gpointer            callback_user_data);
+
+gboolean nm_firewall_nft_call_finish(GAsyncResult *result, GError **error);
 
 #endif /* __NM_FIREWALL_UTILS_H__ */
diff --git a/src/core/nm-policy.c b/src/core/nm-policy.c
index 16b0211f..518fc596 100644
--- a/src/core/nm-policy.c
+++ b/src/core/nm-policy.c
@@ -797,6 +797,20 @@ device_dns_lookup_done(NMDevice *device, gpointer user_data)
 }
 
 static void
+device_carrier_changed(NMDevice *device, GParamSpec *pspec, gpointer user_data)
+{
+    NMPolicyPrivate *priv = user_data;
+    NMPolicy        *self = _PRIV_TO_SELF(priv);
+    gs_free char    *msg  = NULL;
+
+    if (nm_device_has_carrier(device)) {
+        g_signal_handlers_disconnect_by_func(device, device_carrier_changed, priv);
+        msg = g_strdup_printf("device '%s' got carrier", nm_device_get_iface(device));
+        update_system_hostname(self, msg);
+    }
+}
+
+static void
 update_system_hostname(NMPolicy *self, const char *msg)
 {
     NMPolicyPrivate       *priv = NM_POLICY_GET_PRIVATE(self);
@@ -880,6 +894,7 @@ update_system_hostname(NMPolicy *self, const char *msg)
         info        = &g_array_index(infos, DeviceHostnameInfo, i);
         addr_family = info->IS_IPv4 ? AF_INET : AF_INET6;
         g_signal_handlers_disconnect_by_func(info->device, device_dns_lookup_done, self);
+        g_signal_handlers_disconnect_by_func(info->device, device_carrier_changed, priv);
 
         if (info->from_dhcp) {
             dhcp_config = nm_device_get_dhcp_config(info->device, addr_family);
@@ -905,10 +920,18 @@ update_system_hostname(NMPolicy *self, const char *msg)
 
         if (priv->hostname_mode != NM_POLICY_HOSTNAME_MODE_DHCP) {
             if (info->from_dns) {
-                const char *result;
-                gboolean    wait = FALSE;
+                const char *result = NULL;
+                gboolean    wait   = FALSE;
 
-                result = nm_device_get_hostname_from_dns_lookup(info->device, addr_family, &wait);
+                if (nm_device_has_carrier(info->device)) {
+                    result =
+                        nm_device_get_hostname_from_dns_lookup(info->device, addr_family, &wait);
+                } else {
+                    g_signal_connect(info->device,
+                                     "notify::" NM_DEVICE_CARRIER,
+                                     G_CALLBACK(device_carrier_changed),
+                                     priv);
+                }
                 if (result) {
                     _set_hostname(self, result, "from address lookup");
                     return;
@@ -1556,6 +1579,7 @@ nm_policy_unblock_failed_ovs_interfaces(NMPolicy *self)
     NMPolicyPrivate             *priv        = NM_POLICY_GET_PRIVATE(self);
     NMSettingsConnection *const *connections = NULL;
     guint                        i;
+    gboolean                     multiconnect = FALSE;
 
     _LOGT(LOGD_DEVICE, "unblocking failed OVS interfaces");
 
@@ -1563,6 +1587,13 @@ nm_policy_unblock_failed_ovs_interfaces(NMPolicy *self)
     for (i = 0; connections[i]; i++) {
         NMSettingsConnection *sett_conn  = connections[i];
         NMConnection         *connection = nm_settings_connection_get_connection(sett_conn);
+        NMSettingConnection  *s_con      = nm_connection_get_setting_connection(connection);
+
+        /* Check if any connection is connect multiple */
+        if (s_con
+            && nm_setting_connection_get_multi_connect(s_con)
+                   == NM_CONNECTION_MULTI_CONNECT_MULTIPLE)
+            multiconnect = TRUE;
 
         if (nm_connection_get_setting_ovs_interface(connection)) {
             nm_settings_connection_autoconnect_retries_reset(sett_conn);
@@ -1572,6 +1603,18 @@ nm_policy_unblock_failed_ovs_interfaces(NMPolicy *self)
                 FALSE);
         }
     }
+
+    /* There is, at least, one multiconnect connection with an OVS setting.
+     * Let's check the OVS devices retries */
+    if (multiconnect) {
+        NMDevice      *device;
+        GHashTableIter h_iter;
+        g_hash_table_iter_init(&h_iter, priv->devices);
+        while (g_hash_table_iter_next(&h_iter, (gpointer *) &device, NULL)) {
+            if (nm_device_get_device_type(device) == NM_DEVICE_TYPE_OVS_INTERFACE)
+                nm_device_autoconnect_retries_reset(device);
+        }
+    }
 }
 
 static gboolean
@@ -1583,7 +1626,8 @@ reset_autoconnect_all(
     NMPolicyPrivate             *priv        = NM_POLICY_GET_PRIVATE(self);
     NMSettingsConnection *const *connections = NULL;
     guint                        i;
-    gboolean                     changed = FALSE;
+    gboolean                     changed      = FALSE;
+    gboolean                     multiconnect = FALSE;
 
     _LOGD(LOGD_DEVICE,
           "re-enabling autoconnect for all connections%s%s%s",
@@ -1594,6 +1638,8 @@ reset_autoconnect_all(
     connections = nm_settings_get_connections(priv->settings, NULL);
     for (i = 0; connections[i]; i++) {
         NMSettingsConnection *sett_conn = connections[i];
+        NMSettingConnection  *s_con =
+            nm_connection_get_setting_connection(nm_settings_connection_get_connection(sett_conn));
 
         if (device
             && !nm_device_check_connection_compatible(
@@ -1602,6 +1648,11 @@ reset_autoconnect_all(
                 NULL))
             continue;
 
+        if (s_con
+            && nm_setting_connection_get_multi_connect(s_con)
+                   == NM_CONNECTION_MULTI_CONNECT_MULTIPLE)
+            multiconnect = TRUE;
+
         if (only_no_secrets) {
             /* we only reset the no-secrets blocked flag. */
             if (nm_settings_connection_autoconnect_blocked_reason_set(
@@ -1630,6 +1681,20 @@ reset_autoconnect_all(
             }
         }
     }
+
+    /* There is, at least, one multiconnect connection. Let's check the devices retries */
+    if (multiconnect) {
+        NMDevice      *device_iter;
+        GHashTableIter h_iter;
+        g_hash_table_iter_init(&h_iter, priv->devices);
+        while (g_hash_table_iter_next(&h_iter, (gpointer *) &device_iter, NULL)) {
+            if (nm_device_get_autoconnect_retries(device_iter) != -2) {
+                nm_device_autoconnect_retries_reset(device_iter);
+                changed = TRUE;
+            }
+        }
+    }
+
     return changed;
 }
 
@@ -1687,7 +1752,8 @@ reset_connections_retries(gpointer user_data)
     NMSettingsConnection *const *connections = NULL;
     guint                        i;
     gint32                       con_stamp, min_stamp, now;
-    gboolean                     changed = FALSE;
+    gboolean                     changed      = FALSE;
+    gboolean                     multiconnect = FALSE;
 
     priv->reset_retries_id = 0;
 
@@ -1696,6 +1762,14 @@ reset_connections_retries(gpointer user_data)
     connections = nm_settings_get_connections(priv->settings, NULL);
     for (i = 0; connections[i]; i++) {
         NMSettingsConnection *connection = connections[i];
+        NMSettingConnection  *s_con =
+            nm_connection_get_setting_connection(nm_settings_connection_get_connection(connection));
+
+        /* Check if any connection is connect multiple */
+        if (s_con
+            && nm_setting_connection_get_multi_connect(s_con)
+                   == NM_CONNECTION_MULTI_CONNECT_MULTIPLE)
+            multiconnect = TRUE;
 
         con_stamp = nm_settings_connection_autoconnect_retries_blocked_until(connection);
         if (con_stamp == 0)
@@ -1708,6 +1782,25 @@ reset_connections_retries(gpointer user_data)
             min_stamp = con_stamp;
     }
 
+    /* There is, at least, one multiconnect connection. Let's check the devices retries */
+    if (multiconnect) {
+        NMDevice      *device;
+        GHashTableIter h_iter;
+        g_hash_table_iter_init(&h_iter, priv->devices);
+        while (g_hash_table_iter_next(&h_iter, (gpointer *) &device, NULL)) {
+            con_stamp = nm_device_autoconnect_retries_blocked_until(device);
+
+            /* default value in device is -2, which means, we do not care */
+            if (con_stamp <= 0)
+                continue;
+            if (con_stamp <= now) {
+                nm_device_autoconnect_retries_reset(device);
+                changed = TRUE;
+            } else if (min_stamp == 0 || min_stamp > con_stamp)
+                min_stamp = con_stamp;
+        }
+    }
+
     /* Schedule the handler again if there are some stamps left */
     if (min_stamp != 0)
         priv->reset_retries_id =
@@ -1721,21 +1814,31 @@ reset_connections_retries(gpointer user_data)
 }
 
 static void
-_connection_autoconnect_retries_set(NMPolicy *self, NMSettingsConnection *connection, int tries)
+_connection_autoconnect_retries_set(NMPolicy             *self,
+                                    NMSettingsConnection *connection,
+                                    NMDevice             *device,
+                                    int                   tries)
 {
-    NMPolicyPrivate *priv = NM_POLICY_GET_PRIVATE(self);
+    NMPolicyPrivate     *priv = NM_POLICY_GET_PRIVATE(self);
+    NMSettingConnection *s_con;
+    gint32               retry_time;
 
     nm_assert(NM_IS_SETTINGS_CONNECTION(connection));
     nm_assert(tries >= 0);
 
-    nm_settings_connection_autoconnect_retries_set(connection, tries);
+    s_con = nm_connection_get_setting_connection(nm_settings_connection_get_connection(connection));
+    if (s_con
+        && nm_setting_connection_get_multi_connect(s_con) == NM_CONNECTION_MULTI_CONNECT_MULTIPLE) {
+        nm_device_set_autoconnect_retries(device, tries);
+        retry_time = nm_device_autoconnect_retries_blocked_until(device);
+    } else {
+        nm_settings_connection_autoconnect_retries_set(connection, tries);
+        retry_time = nm_settings_connection_autoconnect_retries_blocked_until(connection);
+    }
 
     if (tries == 0) {
         /* Schedule a handler to reset retries count */
         if (!priv->reset_retries_id) {
-            gint32 retry_time =
-                nm_settings_connection_autoconnect_retries_blocked_until(connection);
-
             g_warn_if_fail(retry_time != 0);
             priv->reset_retries_id =
                 g_timeout_add_seconds(MAX(0, retry_time - nm_utils_get_monotonic_timestamp_sec()),
@@ -1997,13 +2100,25 @@ device_state_changed(NMDevice           *device,
             }
 
             if (!blocked) {
-                tries = nm_settings_connection_autoconnect_retries_get(sett_conn);
+                s_con = nm_connection_get_setting_connection(
+                    nm_settings_connection_get_connection(sett_conn));
+                if (s_con
+                    && nm_setting_connection_get_multi_connect(s_con)
+                           == NM_CONNECTION_MULTI_CONNECT_MULTIPLE) {
+                    if (nm_device_get_autoconnect_retries(device) == -2)
+                        nm_device_set_autoconnect_retries(
+                            device,
+                            nm_settings_connection_autoconnect_retries_get(sett_conn));
+
+                    tries = nm_device_get_autoconnect_retries(device);
+                } else
+                    tries = nm_settings_connection_autoconnect_retries_get(sett_conn);
                 if (tries > 0) {
                     _LOGD(LOGD_DEVICE,
                           "connection '%s' failed to autoconnect; %d tries left",
                           nm_settings_connection_get_id(sett_conn),
                           tries - 1);
-                    _connection_autoconnect_retries_set(self, sett_conn, tries - 1);
+                    _connection_autoconnect_retries_set(self, sett_conn, device, tries - 1);
                 } else if (tries != 0) {
                     _LOGD(LOGD_DEVICE,
                           "connection '%s' failed to autoconnect; infinite tries left",
@@ -2893,7 +3008,7 @@ dispose(GObject *object)
     }
 
     g_hash_table_iter_init(&h_iter, priv->devices);
-    if (g_hash_table_iter_next(&h_iter, (gpointer *) &device, NULL)) {
+    while (g_hash_table_iter_next(&h_iter, (gpointer *) &device, NULL)) {
         g_hash_table_iter_remove(&h_iter);
         devices_list_unregister(self, device);
     }
diff --git a/src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c b/src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c
index 6452d72a..4d8e7bd6 100644
--- a/src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c
+++ b/src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c
@@ -5355,59 +5355,41 @@ wired_connection_from_ifcfg(const char *file, shvarFile *ifcfg, GError **error)
 static gboolean
 parse_infiniband_p_key(shvarFile *ifcfg, int *out_p_key, char **out_parent, GError **error)
 {
-    char    *device = NULL, *physdev = NULL, *pkey_id = NULL;
-    char    *ifname = NULL;
-    int      id;
-    gboolean ret = FALSE;
-
-    device = svGetValueStr_cp(ifcfg, "DEVICE");
-    if (!device) {
-        PARSE_WARNING("InfiniBand connection specified PKEY but not DEVICE");
-        goto done;
-    }
+    gs_free char *physdev = NULL;
+    gs_free char *pkey_id = NULL;
+    int           id;
 
     physdev = svGetValueStr_cp(ifcfg, "PHYSDEV");
     if (!physdev) {
-        PARSE_WARNING("InfiniBand connection specified PKEY but not PHYSDEV");
-        goto done;
+        g_set_error(error,
+                    NM_SETTINGS_ERROR,
+                    NM_SETTINGS_ERROR_INVALID_CONNECTION,
+                    "infiniband connection specified PKEY but not PHYSDEV");
+        return FALSE;
     }
 
     pkey_id = svGetValueStr_cp(ifcfg, "PKEY_ID");
     if (!pkey_id) {
-        PARSE_WARNING("InfiniBand connection specified PKEY but not PKEY_ID");
-        goto done;
+        g_set_error(error,
+                    NM_SETTINGS_ERROR,
+                    NM_SETTINGS_ERROR_INVALID_CONNECTION,
+                    "infiniband connection specified PKEY but not PKEY_ID");
+        return FALSE;
     }
 
     id = _nm_utils_ascii_str_to_int64(pkey_id, 0, 0, 0xFFFF, -1);
     if (id == -1) {
-        PARSE_WARNING("invalid InfiniBand PKEY_ID '%s'", pkey_id);
-        goto done;
-    }
-    id = (id | 0x8000);
-
-    ifname = g_strdup_printf("%s.%04x", physdev, (unsigned) id);
-    if (strcmp(device, ifname) != 0) {
-        PARSE_WARNING("InfiniBand DEVICE (%s) does not match PHYSDEV+PKEY_ID (%s)", device, ifname);
-        goto done;
-    }
-
-    *out_p_key  = id;
-    *out_parent = g_strdup(physdev);
-    ret         = TRUE;
-
-done:
-    g_free(device);
-    g_free(physdev);
-    g_free(pkey_id);
-    g_free(ifname);
-
-    if (!ret) {
         g_set_error(error,
                     NM_SETTINGS_ERROR,
                     NM_SETTINGS_ERROR_INVALID_CONNECTION,
-                    "Failed to create InfiniBand setting");
+                    "invalid infiniband PKEY_ID '%s'",
+                    pkey_id);
+        return FALSE;
     }
-    return ret;
+
+    *out_p_key  = id;
+    *out_parent = g_steal_pointer(&physdev);
+    return TRUE;
 }
 
 static NMSetting *
diff --git a/src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib b/src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib
new file mode 100644
index 00000000..b45da5f7
--- /dev/null
+++ b/src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib
@@ -0,0 +1,9 @@
+TYPE=InfiniBand
+PKEY=yes
+PKEY_ID=12
+PHYSDEV=ib0
+CONNECTED_MODE=yes
+IPADDR=192.168.2.2
+NETMASK=255.255.255.0
+GATEWAY=192.168.2.1
+NAME=ib012
diff --git a/src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c b/src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c
index 9fdae4bd..f9fd7fd5 100644
--- a/src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c
+++ b/src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c
@@ -8211,8 +8211,35 @@ test_read_infiniband(void)
 }
 
 static void
-test_write_infiniband(void)
+test_read_ipoib(void)
 {
+    gs_unref_object NMConnection *connection = NULL;
+    NMSettingInfiniband          *s_infiniband;
+    char                         *unmanaged = NULL;
+    const char                   *transport_mode;
+    int                           pkey;
+
+    connection = _connection_from_file(TEST_IFCFG_DIR "/ifcfg-test-ipoib",
+                                       NULL,
+                                       TYPE_INFINIBAND,
+                                       &unmanaged);
+    g_assert(!unmanaged);
+
+    s_infiniband = nmtst_connection_assert_setting(connection, NM_TYPE_SETTING_INFINIBAND);
+
+    pkey = nm_setting_infiniband_get_p_key(s_infiniband);
+    g_assert(pkey);
+    g_assert_cmpint(pkey, ==, 12);
+
+    transport_mode = nm_setting_infiniband_get_transport_mode(s_infiniband);
+    g_assert(transport_mode);
+    g_assert_cmpstr(transport_mode, ==, "connected");
+}
+
+static void
+test_write_infiniband(gconstpointer test_data)
+{
+    const int                     TEST_IDX   = GPOINTER_TO_INT(test_data);
     nmtst_auto_unlinkfile char   *testfile   = NULL;
     gs_unref_object NMConnection *connection = NULL;
     gs_unref_object NMConnection *reread     = NULL;
@@ -8223,14 +8250,15 @@ test_write_infiniband(void)
     const char  *mac = "80:00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:00:11:22";
     guint32      mtu = 65520;
     NMIPAddress *addr;
-    GError      *error = NULL;
+    GError      *error          = NULL;
+    const char  *interface_name = NULL;
 
     connection = nm_simple_connection_new();
 
     s_con = _nm_connection_new_setting(connection, NM_TYPE_SETTING_CONNECTION);
     g_object_set(s_con,
                  NM_SETTING_CONNECTION_ID,
-                 "Test Write InfiniBand",
+                 "Test Write Infiniband",
                  NM_SETTING_CONNECTION_UUID,
                  nm_uuid_generate_random_str_a(),
                  NM_SETTING_CONNECTION_AUTOCONNECT,
@@ -8239,15 +8267,28 @@ test_write_infiniband(void)
                  NM_SETTING_INFINIBAND_SETTING_NAME,
                  NULL);
 
+    if (NM_IN_SET(TEST_IDX, 1, 3))
+        interface_name = "ib0.000c";
+
+    g_object_set(s_con, NM_SETTING_CONNECTION_INTERFACE_NAME, interface_name, NULL);
+
     s_infiniband = _nm_connection_new_setting(connection, NM_TYPE_SETTING_INFINIBAND);
-    g_object_set(s_infiniband,
-                 NM_SETTING_INFINIBAND_MAC_ADDRESS,
-                 mac,
-                 NM_SETTING_INFINIBAND_MTU,
-                 mtu,
-                 NM_SETTING_INFINIBAND_TRANSPORT_MODE,
-                 "connected",
-                 NULL);
+    g_object_set(s_infiniband, NM_SETTING_INFINIBAND_TRANSPORT_MODE, "connected", NULL);
+    if (NM_IN_SET(TEST_IDX, 1, 2)) {
+        g_object_set(s_infiniband,
+                     NM_SETTING_INFINIBAND_MAC_ADDRESS,
+                     mac,
+                     NM_SETTING_INFINIBAND_MTU,
+                     mtu,
+                     NULL);
+    } else {
+        g_object_set(s_infiniband,
+                     NM_SETTING_INFINIBAND_P_KEY,
+                     12,
+                     NM_SETTING_INFINIBAND_PARENT,
+                     "ib0",
+                     NULL);
+    }
 
     s_ip4 = _nm_connection_new_setting(connection, NM_TYPE_SETTING_IP4_CONFIG);
     g_object_set(s_ip4,
@@ -8267,6 +8308,9 @@ test_write_infiniband(void)
     s_ip6 = _nm_connection_new_setting(connection, NM_TYPE_SETTING_IP6_CONFIG);
     g_object_set(s_ip6, NM_SETTING_IP_CONFIG_METHOD, NM_SETTING_IP6_CONFIG_METHOD_IGNORE, NULL);
 
+    if (nmtst_get_rand_bool())
+        nmtst_connection_normalize(connection);
+
     nmtst_assert_connection_verifies(connection);
 
     _writer_new_connection(connection, TEST_SCRATCH_DIR, &testfile);
@@ -8274,6 +8318,8 @@ test_write_infiniband(void)
     reread = _connection_from_file(testfile, NULL, TYPE_INFINIBAND, NULL);
 
     nmtst_assert_connection_equals(connection, TRUE, reread, FALSE);
+
+    g_assert_cmpstr(interface_name, ==, nm_connection_get_interface_name(reread));
 }
 
 static void
@@ -10446,6 +10492,7 @@ main(int argc, char **argv)
     g_test_add_func(TPATH "wifi/read/wep-no-keys", test_read_wifi_wep_no_keys);
     g_test_add_func(TPATH "wifi/read/wep-agent-keys", test_read_wifi_wep_agent_keys);
     g_test_add_func(TPATH "infiniband/read", test_read_infiniband);
+    g_test_add_func(TPATH "ipoib/read", test_read_ipoib);
     g_test_add_func(TPATH "vlan/read", test_read_vlan_interface);
     g_test_add_func(TPATH "vlan/read-flags-1", test_read_vlan_flags_1);
     g_test_add_func(TPATH "vlan/read-flags-2", test_read_vlan_flags_2);
@@ -10582,7 +10629,10 @@ main(int argc, char **argv)
     g_test_add_func(TPATH "permissions/read", test_read_permissions);
     g_test_add_func(TPATH "permissions/write", test_write_permissions);
     g_test_add_func(TPATH "wifi/write-wep-agent-keys", test_write_wifi_wep_agent_keys);
-    g_test_add_func(TPATH "infiniband/write", test_write_infiniband);
+    g_test_add_data_func(TPATH "infiniband/write/1", GINT_TO_POINTER(1), test_write_infiniband);
+    g_test_add_data_func(TPATH "infiniband/write/2", GINT_TO_POINTER(2), test_write_infiniband);
+    g_test_add_data_func(TPATH "infiniband/write/3", GINT_TO_POINTER(3), test_write_infiniband);
+    g_test_add_data_func(TPATH "infiniband/write/4", GINT_TO_POINTER(4), test_write_infiniband);
     g_test_add_func(TPATH "vlan/write", test_write_vlan);
     g_test_add_func(TPATH "vlan/write-flags", test_write_vlan_flags);
     g_test_add_func(TPATH "vlan/write-only-vlanid", test_write_vlan_only_vlanid);
diff --git a/src/libnm-core-impl/nm-setting-bond-port.c b/src/libnm-core-impl/nm-setting-bond-port.c
index 9b41a74f..7ea82a76 100644
--- a/src/libnm-core-impl/nm-setting-bond-port.c
+++ b/src/libnm-core-impl/nm-setting-bond-port.c
@@ -85,13 +85,15 @@ verify(NMSetting *setting, NMConnection *connection, GError **error)
         }
 
         slave_type = nm_setting_connection_get_slave_type(s_con);
-        if (!nm_streq0(slave_type, NM_SETTING_BOND_SETTING_NAME)) {
+        if (slave_type && !nm_streq(slave_type, NM_SETTING_BOND_SETTING_NAME)) {
             g_set_error(error,
                         NM_CONNECTION_ERROR,
                         NM_CONNECTION_ERROR_INVALID_PROPERTY,
-                        _("A connection with a '%s' setting must have the slave-type set to '%s'"),
+                        _("A connection with a '%s' setting must have the slave-type set to '%s'. "
+                          "Instead it is '%s'"),
                         NM_SETTING_BOND_PORT_SETTING_NAME,
-                        NM_SETTING_BOND_SETTING_NAME);
+                        NM_SETTING_BOND_SETTING_NAME,
+                        slave_type);
             g_prefix_error(error,
                            "%s.%s: ",
                            NM_SETTING_CONNECTION_SETTING_NAME,
diff --git a/src/libnm-core-impl/nm-setting-bond.c b/src/libnm-core-impl/nm-setting-bond.c
index cdfc7641..18b6fefb 100644
--- a/src/libnm-core-impl/nm-setting-bond.c
+++ b/src/libnm-core-impl/nm-setting-bond.c
@@ -764,37 +764,64 @@ _nm_setting_bond_get_option_type(NMSettingBond *setting, const char *name)
     return option_meta->opt_type;
 }
 
-guint32
-_nm_setting_bond_opt_value_as_u32(NMSettingBond *s_bond, const char *opt)
+#define _opt_value_as_u64(s_bond, opt, v_max)                                            \
+    ({                                                                                   \
+        const OptionMeta *_meta;                                                         \
+        NMSettingBond    *_s_bond = (s_bond);                                            \
+        const char       *_opt    = (opt);                                               \
+        const guint64     _v_max  = (v_max);                                             \
+        const char       *_s;                                                            \
+        guint64           _val;                                                          \
+                                                                                         \
+        nm_assert(NM_IS_SETTING_BOND(_s_bond));                                          \
+        nm_assert(_opt);                                                                 \
+                                                                                         \
+        _meta = _get_option_meta(_opt);                                                  \
+                                                                                         \
+        nm_assert(_meta);                                                                \
+        nm_assert(_meta->opt_type == NM_BOND_OPTION_TYPE_INT);                           \
+        nm_assert(_meta->min < _meta->max);                                              \
+        nm_assert(_meta->max <= _v_max);                                                 \
+        nm_assert(_meta->val);                                                           \
+                                                                                         \
+        _s = nm_setting_bond_get_option_normalized(_s_bond, _opt);                       \
+        if (_s) {                                                                        \
+            _val = _nm_utils_ascii_str_to_uint64(_s, 10, _meta->min, _meta->max, 0);     \
+            /* Note that _s is only a valid integer, if the profile verifies. We require
+             * that the caller only calls these functions on valid profile. */ \
+            nm_assert(errno == 0);                                                       \
+        } else {                                                                         \
+            _val  = 0;                                                                   \
+            errno = EINVAL;                                                              \
+        }                                                                                \
+                                                                                         \
+        _val;                                                                            \
+    })
+
+guint8
+_nm_setting_bond_opt_value_as_u8(NMSettingBond *s_bond, const char *opt)
 {
-    nm_assert(_get_option_meta(opt)->opt_type == NM_BOND_OPTION_TYPE_INT);
-    return _nm_utils_ascii_str_to_uint64(nm_setting_bond_get_option_normalized(s_bond, opt),
-                                         10,
-                                         0,
-                                         G_MAXUINT32,
-                                         0);
+    return _opt_value_as_u64(s_bond, opt, G_MAXUINT8);
 }
 
 guint16
 _nm_setting_bond_opt_value_as_u16(NMSettingBond *s_bond, const char *opt)
 {
-    nm_assert(_get_option_meta(opt)->opt_type == NM_BOND_OPTION_TYPE_INT);
-    return _nm_utils_ascii_str_to_uint64(nm_setting_bond_get_option_normalized(s_bond, opt),
-                                         10,
-                                         0,
-                                         G_MAXUINT16,
-                                         0);
+    return _opt_value_as_u64(s_bond, opt, G_MAXUINT16);
 }
 
-guint8
-_nm_setting_bond_opt_value_as_u8(NMSettingBond *s_bond, const char *opt)
+guint32
+_nm_setting_bond_opt_value_as_u32(NMSettingBond *s_bond, const char *opt)
+{
+    return _opt_value_as_u64(s_bond, opt, G_MAXUINT32);
+}
+
+bool
+_nm_setting_bond_opt_value_as_intbool(NMSettingBond *s_bond, const char *opt)
 {
-    nm_assert(_get_option_meta(opt)->opt_type == NM_BOND_OPTION_TYPE_INT);
-    return _nm_utils_ascii_str_to_uint64(nm_setting_bond_get_option_normalized(s_bond, opt),
-                                         10,
-                                         0,
-                                         G_MAXUINT8,
-                                         0);
+    /* This does not parse the value as a boolean string, instead, it requires
+     * that it's a number, either "0" or "1". */
+    return _opt_value_as_u64(s_bond, opt, 1);
 }
 
 /*****************************************************************************/
diff --git a/src/libnm-core-impl/nm-setting-ip6-config.c b/src/libnm-core-impl/nm-setting-ip6-config.c
index 8b593b97..94794d1e 100644
--- a/src/libnm-core-impl/nm-setting-ip6-config.c
+++ b/src/libnm-core-impl/nm-setting-ip6-config.c
@@ -832,8 +832,7 @@ nm_setting_ip6_config_class_init(NMSettingIP6ConfigClass *klass)
                                              NM_SETTING_IP6_CONFIG_ADDR_GEN_MODE_DEFAULT,
                                              NM_SETTING_PARAM_NONE,
                                              NMSettingIP6ConfigPrivate,
-                                             addr_gen_mode,
-                                             .to_dbus_including_default = TRUE);
+                                             addr_gen_mode);
 
     /**
      * NMSettingIP6Config:token:
diff --git a/src/libnm-core-impl/tests/test-setting.c b/src/libnm-core-impl/tests/test-setting.c
index 5bdae716..a4e3932a 100644
--- a/src/libnm-core-impl/tests/test-setting.c
+++ b/src/libnm-core-impl/tests/test-setting.c
@@ -5068,6 +5068,65 @@ test_6lowpan_1(void)
 
 /*****************************************************************************/
 
+static void
+test_bond_meta(void)
+{
+    gs_unref_object NMConnection *con = NULL;
+    NMSettingBond                *set;
+    char                          sbuf[200];
+
+    create_bond_connection(&con, &set);
+
+    g_assert_cmpstr(nm_setting_bond_get_option_normalized(set, NM_SETTING_BOND_OPTION_MODE),
+                    ==,
+                    "balance-rr");
+
+#define _A(_nm_setting_bond_opt_value_as_xxx, set, opt, value, errsv)                  \
+    G_STMT_START                                                                       \
+    {                                                                                  \
+        g_assert_cmpint(_nm_setting_bond_opt_value_as_xxx((set), (opt)), ==, (value)); \
+        g_assert_cmpint(errno, ==, (errsv));                                           \
+    }                                                                                  \
+    G_STMT_END
+
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_MIIMON, 100, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_UPDELAY, 0, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_DOWNDELAY, 0, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_ARP_INTERVAL, 0, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_RESEND_IGMP, 1, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_MIN_LINKS, 0, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_LP_INTERVAL, 1, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_PACKETS_PER_SLAVE, 1, 0);
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_PEER_NOTIF_DELAY, 0, 0);
+    _A(_nm_setting_bond_opt_value_as_u16, set, NM_SETTING_BOND_OPTION_AD_ACTOR_SYS_PRIO, 0, EINVAL);
+    _A(_nm_setting_bond_opt_value_as_u16, set, NM_SETTING_BOND_OPTION_AD_USER_PORT_KEY, 0, EINVAL);
+    _A(_nm_setting_bond_opt_value_as_u8, set, NM_SETTING_BOND_OPTION_NUM_GRAT_ARP, 1, 0);
+    _A(_nm_setting_bond_opt_value_as_u8, set, NM_SETTING_BOND_OPTION_ALL_SLAVES_ACTIVE, 0, 0);
+    _A(_nm_setting_bond_opt_value_as_intbool, set, NM_SETTING_BOND_OPTION_USE_CARRIER, 1, 0);
+    _A(_nm_setting_bond_opt_value_as_intbool,
+       set,
+       NM_SETTING_BOND_OPTION_TLB_DYNAMIC_LB,
+       0,
+       EINVAL);
+
+    nm_setting_bond_add_option(set, NM_SETTING_BOND_OPTION_ARP_INTERVAL, "5");
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_ARP_INTERVAL, 5, 0);
+
+    nm_setting_bond_add_option(set,
+                               NM_SETTING_BOND_OPTION_ARP_INTERVAL,
+                               nm_sprintf_buf(sbuf, "%d", G_MAXINT));
+    _A(_nm_setting_bond_opt_value_as_u32, set, NM_SETTING_BOND_OPTION_ARP_INTERVAL, G_MAXINT, 0);
+
+    nm_setting_bond_add_option(set, NM_SETTING_BOND_OPTION_MODE, "802.3ad");
+    _A(_nm_setting_bond_opt_value_as_u16, set, NM_SETTING_BOND_OPTION_AD_ACTOR_SYS_PRIO, 65535, 0);
+    _A(_nm_setting_bond_opt_value_as_u16, set, NM_SETTING_BOND_OPTION_AD_USER_PORT_KEY, 0, 0);
+
+    nm_setting_bond_add_option(set, NM_SETTING_BOND_OPTION_MODE, "balance-tlb");
+    _A(_nm_setting_bond_opt_value_as_intbool, set, NM_SETTING_BOND_OPTION_TLB_DYNAMIC_LB, 1, 0);
+}
+
+/*****************************************************************************/
+
 NMTST_DEFINE();
 
 int
@@ -5185,5 +5244,7 @@ main(int argc, char **argv)
 
     g_test_add_func("/libnm/test_setting_metadata", test_setting_metadata);
 
+    g_test_add_func("/libnm/test_bond_meta", test_bond_meta);
+
     return g_test_run();
 }
diff --git a/src/libnm-core-intern/nm-core-internal.h b/src/libnm-core-intern/nm-core-internal.h
index ee4cc25b..4e1bab47 100644
--- a/src/libnm-core-intern/nm-core-internal.h
+++ b/src/libnm-core-intern/nm-core-internal.h
@@ -517,9 +517,10 @@ NMConnectionMultiConnect _nm_connection_get_multi_connect(NMConnection *connecti
 
 gboolean _nm_setting_bond_option_supported(const char *option, NMBondMode mode);
 
-guint32 _nm_setting_bond_opt_value_as_u32(NMSettingBond *s_bond, const char *opt);
-guint16 _nm_setting_bond_opt_value_as_u16(NMSettingBond *s_bond, const char *opt);
 guint8  _nm_setting_bond_opt_value_as_u8(NMSettingBond *s_bond, const char *opt);
+guint16 _nm_setting_bond_opt_value_as_u16(NMSettingBond *s_bond, const char *opt);
+guint32 _nm_setting_bond_opt_value_as_u32(NMSettingBond *s_bond, const char *opt);
+bool    _nm_setting_bond_opt_value_as_intbool(NMSettingBond *s_bond, const char *opt);
 
 /*****************************************************************************/
 
diff --git a/src/libnm-core-public/nm-version-macros.h b/src/libnm-core-public/nm-version-macros.h
index acf84ddd..edd872e8 100644
--- a/src/libnm-core-public/nm-version-macros.h
+++ b/src/libnm-core-public/nm-version-macros.h
@@ -30,7 +30,7 @@
  * Evaluates to the micro version number of NetworkManager which this source
  * compiled against.
  */
-#define NM_MICRO_VERSION (0)
+#define NM_MICRO_VERSION (2)
 
 /**
  * NM_CHECK_VERSION:
diff --git a/src/libnm-glib-aux/nm-keyfile-aux.c b/src/libnm-glib-aux/nm-keyfile-aux.c
index 1cae28b4..20a4690f 100644
--- a/src/libnm-glib-aux/nm-keyfile-aux.c
+++ b/src/libnm-glib-aux/nm-keyfile-aux.c
@@ -442,7 +442,7 @@ nm_key_file_db_prune(NMKeyFileDB *self,
     _LOGD("prune keyfile of old entries: \"%s\"", self->filename);
 
     if (!self->groups_pruned) {
-        /* When we prune the first time, we swap the GKeyfile instance.
+        /* When we prune the first time, we swap the GKeyFile instance.
          * The instance loaded from disk might have unrelated groups and
          * comments. Let's get rid of them by creating a new instance.
          *
diff --git a/src/libnm-glib-aux/nm-shared-utils.c b/src/libnm-glib-aux/nm-shared-utils.c
index 624f9a3e..d0885477 100644
--- a/src/libnm-glib-aux/nm-shared-utils.c
+++ b/src/libnm-glib-aux/nm-shared-utils.c
@@ -6621,19 +6621,38 @@ nm_crypto_md5_hash(const guint8 *salt,
 
 /*****************************************************************************/
 
-char *
-nm_utils_get_process_exit_status_desc(int status)
+const char *
+nm_utils_get_process_exit_status_desc_buf(int status, char *buf, gsize buf_len)
 {
+    const char *buf0 = buf;
+
+    nm_assert(buf_len == 0 || buf);
+
+    /* This should give a partial sentence, it it can be combined with
+     * prinft("command XYZ %s.\n", desc) */
+
     if (WIFEXITED(status))
-        return g_strdup_printf("exited with status %d", WEXITSTATUS(status));
+        nm_strbuf_append(&buf, &buf_len, "exited with status %d", WEXITSTATUS(status));
     else if (WIFSIGNALED(status))
-        return g_strdup_printf("killed by signal %d", WTERMSIG(status));
+        nm_strbuf_append(&buf, &buf_len, "killed by signal %d", WTERMSIG(status));
     else if (WIFSTOPPED(status))
-        return g_strdup_printf("stopped by signal %d", WSTOPSIG(status));
+        nm_strbuf_append(&buf, &buf_len, "stopped by signal %d", WSTOPSIG(status));
     else if (WIFCONTINUED(status))
-        return g_strdup("resumed by SIGCONT)");
+        nm_strbuf_append(&buf, &buf_len, "resumed by SIGCONT");
     else
-        return g_strdup_printf("exited with unknown status 0x%x", status);
+        nm_strbuf_append(&buf, &buf_len, "exited with unknown status 0x%x", status);
+
+    return buf0;
+}
+
+char *
+nm_utils_get_process_exit_status_desc(int status)
+{
+    char buf[NM_UTILS_GET_PROCESS_EXIT_STATUS_BUF_LEN];
+
+    nm_utils_get_process_exit_status_desc_buf(status, buf, sizeof(buf));
+
+    return g_strdup(buf);
 }
 
 /*****************************************************************************/
diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h
index 3d8eaced..fe7c59f3 100644
--- a/src/libnm-glib-aux/nm-shared-utils.h
+++ b/src/libnm-glib-aux/nm-shared-utils.h
@@ -809,6 +809,8 @@ gssize _nm_strv_find_first(const char *const *list, gssize len, const char *need
 #define nm_strv_find_first(list, len, needle) \
     _nm_strv_find_first(NM_CAST_STRV_CC(list), (len), (needle))
 
+#define nm_strv_contains(list, len, needle) (nm_strv_find_first((list), (len), (needle)) >= 0)
+
 gboolean nm_strv_has_duplicate(const char *const *list, gssize len, gboolean is_sorted);
 
 const char **nm_strv_cleanup_const(const char **strv, gboolean skip_empty, gboolean skip_repeated);
@@ -1318,6 +1320,8 @@ typedef enum {
     NM_UTILS_ERROR_INVALID_ARGUMENT,    /*< nick=InvalidArgument >*/
     NM_UTILS_ERROR_NOT_READY,           /*< nick=NotReady >*/
 
+    NM_UTILS_ERROR_COMMAND_FAILED, /*< nick=CommandFailed >*/
+
     NM_UTILS_ERROR_AMBIGUOUS, /*< nick=Ambiguous >*/
 
     /* the following codes have a special meaning and are exactly used for
@@ -3403,6 +3407,10 @@ void nm_crypto_md5_hash(const guint8 *salt,
 
 /*****************************************************************************/
 
+#define NM_UTILS_GET_PROCESS_EXIT_STATUS_BUF_LEN 41
+
+const char *nm_utils_get_process_exit_status_desc_buf(int status, char *buf, gsize buf_len);
+
 char *nm_utils_get_process_exit_status_desc(int status);
 
 gboolean nm_utils_validate_hostname(const char *hostname);
diff --git a/src/libnm-glib-aux/nm-str-buf.h b/src/libnm-glib-aux/nm-str-buf.h
index 652bc96b..e8b51208 100644
--- a/src/libnm-glib-aux/nm-str-buf.h
+++ b/src/libnm-glib-aux/nm-str-buf.h
@@ -78,14 +78,14 @@ NM_STR_BUF_INIT(gsize allocated, gboolean do_bzero_mem)
             ? (size)                                                                        \
             : 0,                                                                            \
         FALSE,                                                                              \
-        (do_bzero_mem));
+        (do_bzero_mem))
 
 #define NM_STR_BUF_INIT_ARR(arr, do_bzero_mem)                                                    \
     NM_STR_BUF_INIT_FULL((arr),                                                                   \
                          0,                                                                       \
                          NM_STATIC_ASSERT_EXPR_1(sizeof(arr) > sizeof(char *)) ? sizeof(arr) : 0, \
                          FALSE,                                                                   \
-                         (do_bzero_mem));
+                         (do_bzero_mem))
 
 void _nm_str_buf_ensure_size(NMStrBuf *strbuf, gsize new_size, gboolean reserve_exact);
 
@@ -530,7 +530,10 @@ nm_str_buf_finalize(NMStrBuf *strbuf, gsize *out_len)
         char *str = g_steal_pointer(&strbuf->_priv_str);
         char *result;
 
-        result = g_strndup(str, strbuf->_priv_len);
+        result = g_new(char, strbuf->_priv_len + 1u);
+        memcpy(result, str, strbuf->_priv_len);
+        result[strbuf->_priv_len] = '\0';
+
         if (strbuf->_priv_do_bzero_mem)
             nm_explicit_bzero(str, strbuf->_priv_len);
         return result;
diff --git a/src/libnm-glib-aux/tests/test-shared-general.c b/src/libnm-glib-aux/tests/test-shared-general.c
index 7d36d64a..cfe70b58 100644
--- a/src/libnm-glib-aux/tests/test-shared-general.c
+++ b/src/libnm-glib-aux/tests/test-shared-general.c
@@ -970,6 +970,16 @@ test_nm_str_buf(void)
         } else
             g_assert(stack_buf != nm_str_buf_get_str(&strbuf));
     }
+
+    {
+        nm_auto_str_buf NMStrBuf s1  = NM_STR_BUF_INIT_A(10, nmtst_get_rand_bool());
+        gs_free char            *str = NULL;
+        gsize                    l;
+
+        nm_str_buf_append_len(&s1, "a\0b", 3);
+        str = nm_str_buf_finalize(&s1, &l);
+        g_assert_cmpmem(str, l + 1, "a\0b", 4);
+    }
 }
 
 /*****************************************************************************/
diff --git a/src/libnm-platform/nm-linux-platform.c b/src/libnm-platform/nm-linux-platform.c
index cd685fe2..eb7c671b 100644
--- a/src/libnm-platform/nm-linux-platform.c
+++ b/src/libnm-platform/nm-linux-platform.c
@@ -1589,11 +1589,8 @@ _parse_lnk_bond(const char *kind, struct nlattr *info_data)
 
     if (tb[IFLA_BOND_MODE])
         props->mode = nla_get_u8(tb[IFLA_BOND_MODE]);
-    if (tb[IFLA_BOND_PRIMARY]) {
-        props->primary = nla_get_u32(tb[IFLA_BOND_PRIMARY]);
-    } else if (tb[IFLA_BOND_ACTIVE_SLAVE]) {
-        props->primary = nla_get_u32(tb[IFLA_BOND_ACTIVE_SLAVE]);
-    }
+    if (tb[IFLA_BOND_PRIMARY])
+        props->primary = NM_CLAMP((int) nla_get_u32(tb[IFLA_BOND_PRIMARY]), 0, G_MAXINT);
     if (tb[IFLA_BOND_MIIMON]) {
         props->miimon     = nla_get_u32(tb[IFLA_BOND_MIIMON]);
         props->miimon_has = TRUE;
@@ -1631,12 +1628,8 @@ _parse_lnk_bond(const char *kind, struct nlattr *info_data)
     }
     if (tb[IFLA_BOND_ARP_VALIDATE])
         props->arp_validate = nla_get_u32(tb[IFLA_BOND_ARP_VALIDATE]);
-    if (tb[IFLA_BOND_ARP_ALL_TARGETS]) {
-        props->arp_all_targets     = nla_get_u32(tb[IFLA_BOND_ARP_ALL_TARGETS]);
-        props->arp_all_targets_has = TRUE;
-    } else {
-        props->arp_all_targets_has = FALSE;
-    }
+    if (tb[IFLA_BOND_ARP_ALL_TARGETS])
+        props->arp_all_targets = nla_get_u32(tb[IFLA_BOND_ARP_ALL_TARGETS]);
     if (tb[IFLA_BOND_PRIMARY_RESELECT])
         props->primary_reselect = nla_get_u8(tb[IFLA_BOND_PRIMARY_RESELECT]);
     if (tb[IFLA_BOND_FAIL_OVER_MAC])
@@ -2677,7 +2670,7 @@ _wireguard_read_info(NMPlatform     *platform /* used only as logging context */
           ifindex,
           wireguard_family_id);
 
-    msg = nlmsg_alloc();
+    msg = nlmsg_alloc(0);
 
     if (!genlmsg_put(msg,
                      NL_AUTO_PORT,
@@ -2886,7 +2879,7 @@ _wireguard_create_change_nlmsgs(NMPlatform                               *platfo
 
 again:
 
-    msg = nlmsg_alloc();
+    msg = nlmsg_alloc(0);
     if (!genlmsg_put(msg,
                      NL_AUTO_PORT,
                      NL_AUTO_SEQ,
@@ -4521,7 +4514,7 @@ _nl_msg_new_link_set_linkinfo(struct nl_msg *msg, NMLinkType link_type, gconstpo
             nla_nest_end(msg, targets);
         }
 
-        if (props->arp_all_targets_has)
+        if (props->arp_all_targets)
             NLA_PUT_U32(msg, IFLA_BOND_ARP_ALL_TARGETS, props->arp_all_targets);
         if (props->arp_interval)
             NLA_PUT_U32(msg, IFLA_BOND_ARP_INTERVAL, props->arp_interval);
@@ -4539,7 +4532,7 @@ _nl_msg_new_link_set_linkinfo(struct nl_msg *msg, NMLinkType link_type, gconstpo
             NLA_PUT_U32(msg, IFLA_BOND_PACKETS_PER_SLAVE, props->packets_per_port);
         if (props->peer_notif_delay_has)
             NLA_PUT_U32(msg, IFLA_BOND_PEER_NOTIF_DELAY, props->peer_notif_delay);
-        if (props->primary)
+        if (props->primary > 0)
             NLA_PUT_U32(msg, IFLA_BOND_PRIMARY, props->primary);
         if (props->resend_igmp_has)
             NLA_PUT_U32(msg, IFLA_BOND_RESEND_IGMP, props->resend_igmp);
@@ -4972,7 +4965,8 @@ _nl_msg_new_link_full(uint16_t    nlmsg_type,
                       const char *ifname,
                       guint8      family,
                       unsigned    flags_mask,
-                      unsigned    flags_set)
+                      unsigned    flags_set,
+                      size_t      len)
 {
     nm_auto_nlmsg struct nl_msg *msg = NULL;
     const struct ifinfomsg       ifi = {
@@ -4984,7 +4978,7 @@ _nl_msg_new_link_full(uint16_t    nlmsg_type,
 
     nm_assert(NM_IN_SET(nlmsg_type, RTM_DELLINK, RTM_NEWLINK, RTM_GETLINK, RTM_SETLINK));
 
-    msg = nlmsg_alloc_simple(nlmsg_type, nlmsg_flags);
+    msg = nlmsg_alloc_new(len ? nlmsg_total_size(NLMSG_HDRLEN + len) : 0, nlmsg_type, nlmsg_flags);
 
     if (nlmsg_append_struct(msg, &ifi) < 0)
         goto nla_put_failure;
@@ -5001,7 +4995,7 @@ nla_put_failure:
 static struct nl_msg *
 _nl_msg_new_link(uint16_t nlmsg_type, uint16_t nlmsg_flags, int ifindex, const char *ifname)
 {
-    return _nl_msg_new_link_full(nlmsg_type, nlmsg_flags, ifindex, ifname, AF_UNSPEC, 0, 0);
+    return _nl_msg_new_link_full(nlmsg_type, nlmsg_flags, ifindex, ifname, AF_UNSPEC, 0, 0, 0);
 }
 
 /* Copied and modified from libnl3's build_addr_msg(). */
@@ -5033,7 +5027,7 @@ _nl_msg_new_address(uint16_t      nlmsg_type,
     nm_assert(NM_IN_SET(family, AF_INET, AF_INET6));
     nm_assert(NM_IN_SET(nlmsg_type, RTM_NEWADDR, RTM_DELADDR));
 
-    msg = nlmsg_alloc_simple(nlmsg_type, nlmsg_flags);
+    msg = nlmsg_alloc_new(0, nlmsg_type, nlmsg_flags);
 
     addr_len = family == AF_INET ? sizeof(in_addr_t) : sizeof(struct in6_addr);
 
@@ -5140,7 +5134,7 @@ _nl_msg_new_route(uint16_t nlmsg_type, uint16_t nlmsg_flags, const NMPObject *ob
         NM_IN_SET(NMP_OBJECT_GET_TYPE(obj), NMP_OBJECT_TYPE_IP4_ROUTE, NMP_OBJECT_TYPE_IP6_ROUTE));
     nm_assert(NM_IN_SET(nlmsg_type, RTM_NEWROUTE, RTM_DELROUTE));
 
-    msg = nlmsg_alloc_simple(nlmsg_type, nlmsg_flags);
+    msg = nlmsg_alloc_new(0, nlmsg_type, nlmsg_flags);
 
     if (nlmsg_append_struct(msg, &rtmsg) < 0)
         goto nla_put_failure;
@@ -5232,7 +5226,7 @@ _nl_msg_new_routing_rule(uint16_t                     nlmsg_type,
     const guint8 addr_size           = nm_utils_addr_family_to_size(routing_rule->addr_family);
     guint32      table;
 
-    msg = nlmsg_alloc_simple(nlmsg_type, nlmsg_flags);
+    msg = nlmsg_alloc_new(0, nlmsg_type, nlmsg_flags);
 
     table = routing_rule->table;
 
@@ -5351,7 +5345,7 @@ _nl_msg_new_qdisc(uint16_t nlmsg_type, uint16_t nlmsg_flags, const NMPlatformQdi
                   .tcm_info    = qdisc->info,
     };
 
-    msg = nlmsg_alloc_simple(nlmsg_type, nlmsg_flags | NMP_NLM_FLAG_F_ECHO);
+    msg = nlmsg_alloc_new(0, nlmsg_type, nlmsg_flags | NMP_NLM_FLAG_F_ECHO);
 
     if (nlmsg_append_struct(msg, &tcm) < 0)
         goto nla_put_failure;
@@ -5439,7 +5433,7 @@ _nl_msg_new_tfilter(uint16_t nlmsg_type, uint16_t nlmsg_flags, const NMPlatformT
                   .tcm_info    = tfilter->info,
     };
 
-    msg = nlmsg_alloc_simple(nlmsg_type, nlmsg_flags | NMP_NLM_FLAG_F_ECHO);
+    msg = nlmsg_alloc_new(0, nlmsg_type, nlmsg_flags | NMP_NLM_FLAG_F_ECHO);
 
     if (nlmsg_append_struct(msg, &tcm) < 0)
         goto nla_put_failure;
@@ -7234,7 +7228,7 @@ _nl_msg_new_dump_rtnl(NMPObjectType obj_type, int preferred_addr_family)
     nm_assert(klass);
     nm_assert(klass->rtm_gettype > 0);
 
-    nlmsg = nlmsg_alloc_simple(klass->rtm_gettype, NLM_F_DUMP);
+    nlmsg = nlmsg_alloc_new(0, klass->rtm_gettype, NLM_F_DUMP);
 
     if (klass->addr_family != AF_UNSPEC) {
         /* if the class specifies a particular address family, then it is preferred. */
@@ -7279,7 +7273,7 @@ _nl_msg_new_dump_genl_families(void)
 {
     nm_auto_nlmsg struct nl_msg *nlmsg = NULL;
 
-    nlmsg = nlmsg_alloc_size(nlmsg_total_size(GENL_HDRLEN));
+    nlmsg = nlmsg_alloc(nlmsg_total_size(GENL_HDRLEN));
 
     if (!genlmsg_put(nlmsg,
                      NL_AUTO_PORT,
@@ -8095,7 +8089,8 @@ link_change_flags(NMPlatform *platform, int ifindex, unsigned flags_mask, unsign
           nm_platform_link_flags2str(flags_set, s_flags, sizeof(s_flags)),
           nm_platform_link_flags2str(flags_mask, s_flags2, sizeof(s_flags2)));
 
-    nlmsg = _nl_msg_new_link_full(RTM_NEWLINK, 0, ifindex, NULL, AF_UNSPEC, flags_mask, flags_set);
+    nlmsg =
+        _nl_msg_new_link_full(RTM_NEWLINK, 0, ifindex, NULL, AF_UNSPEC, flags_mask, flags_set, 0);
     if (!nlmsg)
         return -NME_UNSPEC;
     return do_change_link(platform, CHANGE_LINK_TYPE_UNSPEC, ifindex, nlmsg, NULL);
@@ -8410,16 +8405,23 @@ link_set_sriov_vfs(NMPlatform *platform, int ifindex, const NMPlatformVF *const
 {
     nm_auto_nlmsg struct nl_msg *nlmsg = NULL;
     struct nlattr               *list, *info, *vlan_list;
-    guint                        i;
+    guint                        i      = 0;
+    guint                        num    = 0;
+    size_t                       buflen = 0;
 
-    nlmsg = _nl_msg_new_link(RTM_NEWLINK, 0, ifindex, NULL);
+    while (vfs[num])
+        num++;
+
+    /* A single IFLA_VF_INFO shouldn't take more than 200 bytes. */
+    buflen = (num + 1) * 200;
+    nlmsg  = _nl_msg_new_link_full(RTM_NEWLINK, 0, ifindex, NULL, AF_UNSPEC, 0, 0, buflen);
     if (!nlmsg)
         g_return_val_if_reached(-NME_BUG);
 
     if (!(list = nla_nest_start(nlmsg, IFLA_VFINFO_LIST)))
         goto nla_put_failure;
 
-    for (i = 0; vfs[i]; i++) {
+    for (; vfs[i]; i++) {
         const NMPlatformVF *vf = vfs[i];
 
         if (!(info = nla_nest_start(nlmsg, IFLA_VF_INFO)))
@@ -8492,6 +8494,11 @@ link_set_sriov_vfs(NMPlatform *platform, int ifindex, const NMPlatformVF *const
 
     return (do_change_link(platform, CHANGE_LINK_TYPE_UNSPEC, ifindex, nlmsg, NULL) >= 0);
 nla_put_failure:
+    _LOGE("error building SR-IOV VFs netlink message: used %u/%zu bytes for %u/%u VFs",
+          nlmsg_hdr(nlmsg)->nlmsg_len,
+          buflen,
+          i,
+          num);
     g_return_val_if_reached(FALSE);
 }
 
@@ -8506,8 +8513,14 @@ link_set_bridge_vlans(NMPlatform                        *platform,
     struct bridge_vlan_info      vinfo = {};
     guint                        i;
 
-    nlmsg =
-        _nl_msg_new_link_full(vlans ? RTM_SETLINK : RTM_DELLINK, 0, ifindex, NULL, AF_BRIDGE, 0, 0);
+    nlmsg = _nl_msg_new_link_full(vlans ? RTM_SETLINK : RTM_DELLINK,
+                                  0,
+                                  ifindex,
+                                  NULL,
+                                  AF_BRIDGE,
+                                  0,
+                                  0,
+                                  0);
     if (!nlmsg)
         g_return_val_if_reached(-NME_BUG);
 
@@ -9535,7 +9548,7 @@ tc_delete(NMPlatform *platform,
         log_tag = "do-delete-tc";
     }
 
-    msg = nlmsg_alloc_simple(nlmsg_type, NMP_NLM_FLAG_F_ECHO);
+    msg = nlmsg_alloc_new(0, nlmsg_type, NMP_NLM_FLAG_F_ECHO);
 
     if (nlmsg_append_struct(msg, &tcm) < 0)
         goto nla_put_failure;
@@ -10259,7 +10272,7 @@ mptcp_addr_update(NMPlatform *platform, NMOptionBool add, const NMPlatformMptcpA
           cmd_str,
           nm_platform_mptcp_addr_to_string(addr, sbuf, sizeof(sbuf)));
 
-    nlmsg = nlmsg_alloc_size(nlmsg_total_size(GENL_HDRLEN) + 200);
+    nlmsg = nlmsg_alloc(nlmsg_total_size(GENL_HDRLEN) + 200);
 
     if (!genlmsg_put(nlmsg,
                      NL_AUTO_PORT,
@@ -10350,7 +10363,7 @@ mptcp_addrs_dump(NMPlatform *platform)
         return NULL;
     }
 
-    nlmsg = nlmsg_alloc_size(nlmsg_total_size(GENL_HDRLEN));
+    nlmsg = nlmsg_alloc(nlmsg_total_size(GENL_HDRLEN));
 
     if (!genlmsg_put(nlmsg,
                      NL_AUTO_PORT,
diff --git a/src/libnm-platform/nm-netlink.c b/src/libnm-platform/nm-netlink.c
index 36841d56..e08eee5e 100644
--- a/src/libnm-platform/nm-netlink.c
+++ b/src/libnm-platform/nm-netlink.c
@@ -364,11 +364,22 @@ nla_reserve(struct nl_msg *msg, int attrtype, int attrlen)
 
 /*****************************************************************************/
 
+/**
+ * Allocate a new netlink message.
+ *
+ * Allocates a new netlink message without any further payload. If @len is zero,
+ * the maximum payload size is set to the size of one memory page.
+ *
+ * @return Newly allocated netlink message or NULL.
+ */
 struct nl_msg *
-nlmsg_alloc_size(size_t len)
+nlmsg_alloc(size_t len)
 {
     struct nl_msg *nm;
 
+    if (len == 0)
+        len = nm_utils_getpagesize();
+
     if (len < sizeof(struct nlmsghdr))
         len = sizeof(struct nlmsghdr);
     else if (len > UINT32_MAX)
@@ -384,38 +395,23 @@ nlmsg_alloc_size(size_t len)
     return nm;
 }
 
-/**
- * Allocate a new netlink message with the default maximum payload size.
- *
- * Allocates a new netlink message without any further payload. The
- * maximum payload size defaults to PAGESIZE or as otherwise specified
- * with nlmsg_set_default_size().
- *
- * @return Newly allocated netlink message or NULL.
- */
-struct nl_msg *
-nlmsg_alloc(void)
-{
-    return nlmsg_alloc_size(nm_utils_getpagesize());
-}
-
 struct nl_msg *
 nlmsg_alloc_convert(struct nlmsghdr *hdr)
 {
     struct nl_msg *nm;
 
-    nm = nlmsg_alloc_size(NLMSG_ALIGN(hdr->nlmsg_len));
+    nm = nlmsg_alloc(NLMSG_ALIGN(hdr->nlmsg_len));
     memcpy(nm->nm_nlh, hdr, hdr->nlmsg_len);
     return nm;
 }
 
 struct nl_msg *
-nlmsg_alloc_simple(uint16_t nlmsgtype, uint16_t flags)
+nlmsg_alloc_new(size_t size, uint16_t nlmsgtype, uint16_t flags)
 {
     struct nl_msg *nm;
     struct nlmsghdr *new;
 
-    nm               = nlmsg_alloc();
+    nm               = nlmsg_alloc(size);
     new              = nm->nm_nlh;
     new->nlmsg_type  = nlmsgtype;
     new->nlmsg_flags = flags;
@@ -928,7 +924,7 @@ genl_ctrl_resolve(struct nl_sock *sk, const char *name)
                              .valid_arg = &response_data,
     };
 
-    msg = nlmsg_alloc();
+    msg = nlmsg_alloc(0);
 
     if (!genlmsg_put(msg, NL_AUTO_PORT, NL_AUTO_SEQ, GENL_ID_CTRL, 0, 0, CTRL_CMD_GETFAMILY, 1))
         return -ENOMEM;
diff --git a/src/libnm-platform/nm-netlink.h b/src/libnm-platform/nm-netlink.h
index 44ed70af..634be2b4 100644
--- a/src/libnm-platform/nm-netlink.h
+++ b/src/libnm-platform/nm-netlink.h
@@ -393,13 +393,11 @@ nla_parse_nested(struct nlattr           *tb[],
 
 /*****************************************************************************/
 
-struct nl_msg *nlmsg_alloc(void);
-
-struct nl_msg *nlmsg_alloc_size(size_t max);
+struct nl_msg *nlmsg_alloc(size_t len);
 
 struct nl_msg *nlmsg_alloc_convert(struct nlmsghdr *hdr);
 
-struct nl_msg *nlmsg_alloc_simple(uint16_t nlmsgtype, uint16_t flags);
+struct nl_msg *nlmsg_alloc_new(size_t size, uint16_t nlmsgtype, uint16_t flags);
 
 void *nlmsg_reserve(struct nl_msg *n, uint32_t len, uint32_t pad);
 
diff --git a/src/libnm-platform/nm-platform.c b/src/libnm-platform/nm-platform.c
index df177485..7d82083c 100644
--- a/src/libnm-platform/nm-platform.c
+++ b/src/libnm-platform/nm-platform.c
@@ -6082,7 +6082,6 @@ nm_platform_lnk_bond_to_string(const NMPlatformLnkBond *lnk, char *buf, gsize le
     char sbuf_updelay[30];
     char sbuf_downdelay[30];
     char sbuf_peer_notif_delay[60];
-    char sbuf_arp_all_targets[30];
     char sbuf_resend_igmp[30];
     char sbuf_lp_interval[30];
     char sbuf_tlb_dynamic_lb[30];
@@ -6096,7 +6095,7 @@ nm_platform_lnk_bond_to_string(const NMPlatformLnkBond *lnk, char *buf, gsize le
         &len,
         "bond"
         " mode %u"
-        " primary %u"
+        " primary %d"
         "%s" /* miimon */
         "%s" /* updelay */
         "%s" /* downdelay */
@@ -6106,7 +6105,7 @@ nm_platform_lnk_bond_to_string(const NMPlatformLnkBond *lnk, char *buf, gsize le
         "%s" /* lp_interval */
         " packets_per_port %u"
         "%s" /* peer_notif_delay */
-        "%s" /* arp_all_targets */
+        " arp_all_targets %u"
         " arp_validate %u"
         " ad_actor_sys_prio %u"
         " ad_user_port_key %u"
@@ -6156,12 +6155,7 @@ nm_platform_lnk_bond_to_string(const NMPlatformLnkBond *lnk, char *buf, gsize le
                              !lnk->peer_notif_delay_has ? "?" : "",
                              lnk->peer_notif_delay)
             : "",
-        lnk->arp_all_targets_has || lnk->arp_all_targets != 0
-            ? nm_sprintf_buf(sbuf_arp_all_targets,
-                             " arp_all_targets%s %u",
-                             !lnk->arp_all_targets_has ? "?" : "",
-                             lnk->arp_all_targets)
-            : "",
+        lnk->arp_all_targets,
         lnk->arp_validate,
         lnk->ad_actor_sys_prio,
         lnk->ad_user_port_key,
@@ -8043,7 +8037,6 @@ nm_platform_lnk_bond_hash_update(const NMPlatformLnkBond *obj, NMHashState *h)
                         obj->primary_reselect,
                         obj->xmit_hash_policy,
                         NM_HASH_COMBINE_BOOLS(guint16,
-                                              obj->arp_all_targets_has,
                                               obj->downdelay_has,
                                               obj->lp_interval_has,
                                               obj->miimon_has,
@@ -8089,7 +8082,6 @@ nm_platform_lnk_bond_cmp(const NMPlatformLnkBond *a, const NMPlatformLnkBond *b)
     NM_CMP_FIELD(a, b, mode);
     NM_CMP_FIELD(a, b, primary_reselect);
     NM_CMP_FIELD(a, b, xmit_hash_policy);
-    NM_CMP_FIELD_BOOL(a, b, arp_all_targets_has);
     NM_CMP_FIELD_BOOL(a, b, downdelay_has);
     NM_CMP_FIELD_BOOL(a, b, lp_interval_has);
     NM_CMP_FIELD_BOOL(a, b, miimon_has);
diff --git a/src/libnm-platform/nm-platform.h b/src/libnm-platform/nm-platform.h
index 90ffbed0..7792bbf5 100644
--- a/src/libnm-platform/nm-platform.h
+++ b/src/libnm-platform/nm-platform.h
@@ -895,6 +895,7 @@ extern const NMPlatformLnkBridge nm_platform_lnk_bridge_default;
 #define NM_BOND_MAX_ARP_TARGETS 16
 
 typedef struct {
+    int         primary;
     in_addr_t   arp_ip_target[NM_BOND_MAX_ARP_TARGETS];
     guint32     arp_all_targets;
     guint32     arp_interval;
@@ -905,7 +906,6 @@ typedef struct {
     guint32     min_links;
     guint32     packets_per_port;
     guint32     peer_notif_delay;
-    guint32     primary;
     guint32     resend_igmp;
     guint32     updelay;
     guint16     ad_actor_sys_prio;
@@ -920,7 +920,6 @@ typedef struct {
     guint8      mode;
     guint8      primary_reselect;
     guint8      xmit_hash_policy;
-    bool        arp_all_targets_has : 1;
     bool        downdelay_has : 1;
     bool        lp_interval_has : 1;
     bool        miimon_has : 1;
diff --git a/src/libnm-platform/nmp-global-tracker.c b/src/libnm-platform/nmp-global-tracker.c
index ea4da284..12869cb2 100644
--- a/src/libnm-platform/nmp-global-tracker.c
+++ b/src/libnm-platform/nmp-global-tracker.c
@@ -198,7 +198,7 @@ _track_data_hash(gconstpointer data)
     _track_data_assert(track_data, FALSE);
 
     nm_hash_init(&h, 269297543u);
-    nmp_object_id_hash_update(track_data->obj, &h);
+    nmp_object_hash_update(track_data->obj, &h);
     nm_hash_update_val(&h, track_data->user_tag);
     return nm_hash_complete(&h);
 }
@@ -213,7 +213,7 @@ _track_data_equal(gconstpointer data_a, gconstpointer data_b)
     _track_data_assert(track_data_b, FALSE);
 
     return track_data_a->user_tag == track_data_b->user_tag
-           && nmp_object_id_equal(track_data_a->obj, track_data_b->obj);
+           && nmp_object_equal(track_data_a->obj, track_data_b->obj);
 }
 
 static void
@@ -253,6 +253,22 @@ _track_obj_data_get_best_data(TrackObjData *obj_data)
         td_best = track_data;
     }
 
+    if (!td_best)
+        return NULL;
+
+    /* Always copy the object from the best TrackData to the TrackObjData. It is
+     * a bit odd that this getter modifies TrackObjData. However, it gives the
+     * nice property that after calling _track_obj_data_get_best_data() you can
+     * use obj_data->obj (and get the same as td_best->obj).
+     *
+     * This is actually important, because the previous obj_data->obj will have
+     * the same ID, but it might have minor differences to td_best->obj.
+     *
+     * Note that at this point obj_data->obj also might be an object that is no longer
+     * tracked. Updating the reference will ensure that we don't have such old references
+     * around and update to use the most appropriate one. */
+    nmp_object_ref_set(&obj_data->obj, td_best->obj);
+
     return td_best;
 }
 
diff --git a/src/libnm-platform/tests/test-nm-platform.c b/src/libnm-platform/tests/test-nm-platform.c
index c351f014..cd54df92 100644
--- a/src/libnm-platform/tests/test-nm-platform.c
+++ b/src/libnm-platform/tests/test-nm-platform.c
@@ -27,10 +27,9 @@ test_use_symbols(void)
         (void (*)(void)) nlmsg_hdr,
         (void (*)(void)) nlmsg_reserve,
         (void (*)(void)) nla_reserve,
-        (void (*)(void)) nlmsg_alloc_size,
-        (void (*)(void)) nlmsg_alloc,
         (void (*)(void)) nlmsg_alloc_convert,
-        (void (*)(void)) nlmsg_alloc_simple,
+        (void (*)(void)) nlmsg_alloc_new,
+        (void (*)(void)) nlmsg_alloc,
         (void (*)(void)) nlmsg_free,
         (void (*)(void)) nlmsg_append,
         (void (*)(void)) nlmsg_parse,
diff --git a/src/libnm-platform/wifi/nm-wifi-utils-nl80211.c b/src/libnm-platform/wifi/nm-wifi-utils-nl80211.c
index 37edd928..c7ee0473 100644
--- a/src/libnm-platform/wifi/nm-wifi-utils-nl80211.c
+++ b/src/libnm-platform/wifi/nm-wifi-utils-nl80211.c
@@ -86,7 +86,7 @@ _nl80211_alloc_msg(guint16 genl_family_id, int ifindex, int phy, uint8_t cmd, ui
 {
     nm_auto_nlmsg struct nl_msg *msg = NULL;
 
-    msg = nlmsg_alloc();
+    msg = nlmsg_alloc(0);
     genlmsg_put(msg, NL_AUTO_PORT, NL_AUTO_SEQ, genl_family_id, 0, flags, cmd, 0);
     NLA_PUT_U32(msg, NL80211_ATTR_IFINDEX, ifindex);
     if (phy != -1)
diff --git a/src/libnm-platform/wpan/nm-wpan-utils.c b/src/libnm-platform/wpan/nm-wpan-utils.c
index 675efe5a..03c9581f 100644
--- a/src/libnm-platform/wpan/nm-wpan-utils.c
+++ b/src/libnm-platform/wpan/nm-wpan-utils.c
@@ -79,7 +79,7 @@ _nl802154_alloc_msg(guint16 genl_family_id, int ifindex, uint8_t cmd, uint16_t f
 {
     nm_auto_nlmsg struct nl_msg *msg = NULL;
 
-    msg = nlmsg_alloc();
+    msg = nlmsg_alloc(0);
     if (!genlmsg_put(msg, NL_AUTO_PORT, NL_AUTO_SEQ, genl_family_id, 0, flags, cmd, 0))
         goto nla_put_failure;
     NLA_PUT_U32(msg, NL802154_ATTR_IFINDEX, ifindex);
diff --git a/src/nm-initrd-generator/nm-initrd-generator.h b/src/nm-initrd-generator/nm-initrd-generator.h
index 4f33ac65..0761c9bb 100644
--- a/src/nm-initrd-generator/nm-initrd-generator.h
+++ b/src/nm-initrd-generator/nm-initrd-generator.h
@@ -12,6 +12,9 @@
 #define NMI_WAIT_DEVICE_TIMEOUT_MSEC 60000
 #define NMI_IP_REQUIRED_TIMEOUT_MSEC 20000
 
+#define NMI_AUTOCONNECT_PRIORITY_CMDLINE  -100
+#define NMI_AUTOCONNECT_PRIORITY_FIRMWARE -200
+
 static inline int
 get_ip_address_family(const char *str, gboolean with_prefix)
 {
diff --git a/src/nm-initrd-generator/nmi-cmdline-reader.c b/src/nm-initrd-generator/nmi-cmdline-reader.c
index 34b19e45..36bfdb0b 100644
--- a/src/nm-initrd-generator/nmi-cmdline-reader.c
+++ b/src/nm-initrd-generator/nmi-cmdline-reader.c
@@ -99,6 +99,7 @@ reader_create_connection(Reader                  *reader,
                          const char              *ifname,
                          const char              *mac,
                          const char              *type_name,
+                         int                      autoconnect_priority,
                          NMConnectionMultiConnect multi_connect)
 {
     NMConnection *connection;
@@ -155,6 +156,8 @@ reader_create_connection(Reader                  *reader,
                  multi_connect,
                  NM_SETTING_CONNECTION_AUTOCONNECT_RETRIES,
                  1,
+                 NM_SETTING_CONNECTION_AUTOCONNECT_PRIORITY,
+                 autoconnect_priority,
                  NULL);
 
     if (nm_streq0(type_name, NM_SETTING_INFINIBAND_SETTING_NAME)) {
@@ -189,6 +192,7 @@ reader_get_default_connection(Reader *reader)
                                        NULL,
                                        NULL,
                                        NM_SETTING_WIRED_SETTING_NAME,
+                                       NMI_AUTOCONNECT_PRIORITY_CMDLINE,
                                        NM_CONNECTION_MULTI_CONNECT_MULTIPLE);
         nm_connection_add_setting(con, nm_setting_wired_new());
         reader->default_connection = con;
@@ -264,6 +268,7 @@ reader_get_connection(Reader     *reader,
                                               ifname,
                                               mac,
                                               type_name,
+                                              NMI_AUTOCONNECT_PRIORITY_CMDLINE,
                                               NM_CONNECTION_MULTI_CONNECT_SINGLE);
     }
     setting = (NMSetting *) nm_connection_get_setting_connection(connection);
@@ -1526,6 +1531,7 @@ nmi_cmdline_reader_parse(const char        *etc_connections_dir,
                                                   NULL,
                                                   bootif,
                                                   NM_SETTING_WIRED_SETTING_NAME,
+                                                  NMI_AUTOCONNECT_PRIORITY_FIRMWARE,
                                                   NM_CONNECTION_MULTI_CONNECT_SINGLE);
         } else {
             g_object_set(s_wired, NM_SETTING_WIRED_MAC_ADDRESS, bootif, NULL);
diff --git a/src/nm-initrd-generator/nmi-dt-reader.c b/src/nm-initrd-generator/nmi-dt-reader.c
index 554f5c4d..99fe25a2 100644
--- a/src/nm-initrd-generator/nmi-dt-reader.c
+++ b/src/nm-initrd-generator/nmi-dt-reader.c
@@ -248,6 +248,8 @@ nmi_dt_reader_parse(const char *sysfs_dir)
                                            NM_SETTING_WIRED_SETTING_NAME,
                                            NM_SETTING_CONNECTION_ID,
                                            "OpenFirmware Connection",
+                                           NM_SETTING_CONNECTION_AUTOCONNECT_PRIORITY,
+                                           NMI_AUTOCONNECT_PRIORITY_FIRMWARE,
                                            NULL));
 
     s_ip4 = nm_setting_ip4_config_new();
diff --git a/src/nm-initrd-generator/nmi-ibft-reader.c b/src/nm-initrd-generator/nmi-ibft-reader.c
index 5e4b1bb3..3f30e531 100644
--- a/src/nm-initrd-generator/nmi-ibft-reader.c
+++ b/src/nm-initrd-generator/nmi-ibft-reader.c
@@ -328,6 +328,8 @@ connection_setting_add(GHashTable   *nic,
                  id,
                  NM_SETTING_CONNECTION_INTERFACE_NAME,
                  NULL,
+                 NM_SETTING_CONNECTION_AUTOCONNECT_PRIORITY,
+                 NMI_AUTOCONNECT_PRIORITY_FIRMWARE,
                  NULL);
 
     g_free(uuid);