summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2024-04-07 16:39:46 +0200
committerGitHub <noreply@github.com>2024-04-07 16:39:46 +0200
commitca15e16f3f1b5174dc7ee2efa531aa974d3e97db (patch)
treec6d00cc20a69197428207ceba22eaff1ce3346ad /src
parent157e5c44f14f6b9c0da0e5fe7636ff3d28785886 (diff)
parent8296cc727066e739c178918a91cfc11d20d26fe1 (diff)
downloadvyos-1x-ca15e16f3f1b5174dc7ee2efa531aa974d3e97db.tar.gz
vyos-1x-ca15e16f3f1b5174dc7ee2efa531aa974d3e97db.zip
Merge pull request #3265 from c-po/ethernet-mtu-T5862
ethernet: T5862: default MTU is not acceptable in some environments
Diffstat (limited to 'src')
-rwxr-xr-xsrc/conf_mode/interfaces_ethernet.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/conf_mode/interfaces_ethernet.py b/src/conf_mode/interfaces_ethernet.py
index 41efdb03c..6da7e6a69 100755
--- a/src/conf_mode/interfaces_ethernet.py
+++ b/src/conf_mode/interfaces_ethernet.py
@@ -152,6 +152,19 @@ def get_config(config=None):
base = ['interfaces', 'ethernet']
ifname, ethernet = get_interface_dict(conf, base, with_pki=True)
+ # T5862 - default MTU is not acceptable in some environments
+ # There are cloud environments available where the maximum supported
+ # ethernet MTU is e.g. 1450 bytes, thus we clamp this to the adapters
+ # maximum MTU value or 1500 bytes - whatever is lower
+ if 'mtu' not in ethernet:
+ try:
+ ethernet['mtu'] = '1500'
+ max_mtu = EthernetIf(ifname).get_max_mtu()
+ if max_mtu < int(ethernet['mtu']):
+ ethernet['mtu'] = str(max_mtu)
+ except:
+ pass
+
if 'is_bond_member' in ethernet:
update_bond_options(conf, ethernet)