Vagrant can set a fixed IP for each VM using the networking configuration. You could try something like this:
Vagrant.configure("2") do |config|
config.vm.box = "fedora/31-cloud-base"
config.vm.define :test_vm1 do |test_vm1|
test_vm1.vm.network :private_network, :ip => "10.20.30.40"
end
config.vm.define :test_vm2 do |test_vm2|
test_vm2.vm.network :private_network, :ip => "10.20.30.41"
end
end