For the RPi4 specifically:
That GPU has hardware limitations that make it unable of OpenGL 3.0. However, it supports GLES 3.2.
If you want GL desktop minus the unsupported features by the hardware, you can set MESA_GL_VERSION_OVERRIDE=3.3 for example. That will however never be compliant.
Vulkan has many extensions to allow it to work on hardware which doesn’t support the full feature set. (by not implementing them, instead of having only version numbers)