[18:23] <blackboxsw> EugenMayer: sorry for delay, by default  network config on OpenStack network config is obtained from the endpoint  http://169.254.169.254/openstack/2018-08-27/network_data.json. You can confirm what data cloud-init sees with `cloudinit query ds.network_json. And what it has rendered either from python or in /var/log/cloud-init.log.
[18:24] <blackboxsw> EugenMayer: sudo python3 -c 'from cloudinit.stages import _pkl_load; ds = _pkl_load("/var/lib/cloud/instance/obj.pkl"); print(ds.network_config)'
[18:25] <blackboxsw> EugenMayer: `grep network /var/log/cloud-init.log`   should show  you something like 2021-10-25 21:46:48,817 - DataSourceOpenStack.py[DEBUG]: network config provided via network_json
[18:32] <blackboxsw> EugenMayer: if you are providing network configuration on the filesystem via a "network:\n  version: 1\n" or ver 2 YAML in  /etc/cloud/cloud.cfg.d/90-net.cfg per something like https://cloudinit.readthedocs.io/en/latest/topics/network-config-format-v2.html#version-2-configuration-format then the network should be honored from the filesystem.
[18:33] <blackboxsw> I believe you'd see a log "Applying network configuration from system_cfg. Some dict of custom v1/v2 values you provided", as well as `sudo cloud-init query merged_cfg.network` would return the content from your filesystem network cfg definitions.
[18:35] <blackboxsw> Note as well that user-data via #cloud-config cannot specify network configuration because user-data is processed after network is already activated.