Once it was necessary to add several hundred VLANs without IP addresses to the Netplan configuration and in order to simplify the process, I came up with the following script:
n=0; while (($n < 1000)); do ((++n)); echo " vlan$n: id: $n link: ens3f0 dhcp4: no dhcp6: no"; done
The script generates a VLAN from 1 to 1000, I saved the result to a file:
./script > ixnfo.txt
Then I opened it in a text editor and copied the desired ranges.
I will give an example of a finished configuration file:
network: ethernets: # TO UPLINK ens3f1: addresses: - 192.168.10.82/30 gateway4: 192.168.10.81 nameservers: addresses: - 192.168.5.2 - 1.1.1.1 # TO CLIENTS ens3f0: {} vlans: vlan501: id: 501 link: ens3f0 addresses: - 10.55.55.60/24 # gateway4: 10.55.55.2 vlan225: id: 225 link: ens3f0 dhcp4: no dhcp6: no vlan226: id: 226 link: ens3f0 dhcp4: no dhcp6: no vlan227: id: 227 link: ens3f0 dhcp4: no dhcp6: no vlan228: id: 228 link: ens3f0 dhcp4: no dhcp6: no vlan301: id: 301 link: ens3f0 dhcp4: no dhcp6: no vlan302: id: 302 link: ens3f0 dhcp4: no dhcp6: no version: 2
See also my articles:
How to configure networking with Netplan
Configuring the Network in Linux
DHCP configuration script