diff options
author | Christian Breunig <christian@breunig.cc> | 2024-04-06 12:15:25 +0200 |
---|---|---|
committer | Christian Breunig <christian@breunig.cc> | 2024-04-06 12:15:25 +0200 |
commit | 8296cc727066e739c178918a91cfc11d20d26fe1 (patch) | |
tree | 5d145b08665435598bb68688c4e01f12eb8e410c /src/conf_mode/interfaces_ethernet.py | |
parent | e86761fa1307596c721c3ddf3a61d263e8f5177b (diff) | |
download | vyos-1x-8296cc727066e739c178918a91cfc11d20d26fe1.tar.gz vyos-1x-8296cc727066e739c178918a91cfc11d20d26fe1.zip |
ethernet: 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.
Diffstat (limited to 'src/conf_mode/interfaces_ethernet.py')
-rwxr-xr-x | src/conf_mode/interfaces_ethernet.py | 13 |
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) |