diff --git a/package/gluon-mesh-vpn-wireguard/luasrc/lib/gluon/upgrade/400-mesh-vpn-wireguard b/package/gluon-mesh-vpn-wireguard/luasrc/lib/gluon/upgrade/400-mesh-vpn-wireguard index b58ceb91068e8ad050077332e97a8700e50f72dd..420e04089140dbd153028768f6962b9e5b4b1fea 100755 --- a/package/gluon-mesh-vpn-wireguard/luasrc/lib/gluon/upgrade/400-mesh-vpn-wireguard +++ b/package/gluon-mesh-vpn-wireguard/luasrc/lib/gluon/upgrade/400-mesh-vpn-wireguard @@ -6,6 +6,8 @@ local util = require('gluon.util') local site = require 'gluon.site' local sp = util.subprocess local wait = require 'posix.sys.wait' +local vpn_core = require('gluon.mesh-vpn') +local _, active_vpn = vpn_core.get_active_provider() local wg_private_key = uci:get("network_gluon-old", 'wg_mesh', "private_key") @@ -58,6 +60,8 @@ uci:section('network', 'interface', 'wg_mesh', { proto = 'wireguard', fwmark = 1, private_key = wg_private_key, + -- Add 70 bytes for IPv6 VXLAN overhead + mtu = active_vpn.mtu() + 70, }) uci:section('network', 'interface', 'mesh_wg_mesh', {