Los ejemplos 'for' anteriores son correctos para hacer un rango inclusivo. Si desea reenviar un conjunto de puertos específicos, debe utilizar el operador Ruby .each.
Las variables pueden ir dentro o fuera del ciclo principal Vagrant.configure.
UDP_PORTS_LIST={
"5000" => 5000, # Some service
}
TCP_PORTS_LIST={
"5900" => 5900, # VNC
}
Los bucles deben ir dentro del bloque Vagrant.configure para la máquina virtual para la que desea asignarlos (recuerde que puede tener varias máquinas virtuales en un solo archivo Vagrant).
UDP_PORTS_LIST.each do |guest, host|
config.vm.network "forwarded_port", guest: "#{guest}", host: "#{host}", protocol: "udp"
end
TCP_PORTS_LIST.each do |guest, host|
config.vm.network "forwarded_port", guest: "#{guest}", host: "#{host}", protocol: "tcp"
end