vagrant icon indicating copy to clipboard operation
vagrant copied to clipboard

Networks with custom subnet/mask values are not supported on this platform

Open derhornspieler opened this issue 11 months ago • 2 comments

Error Output using latest Vagrant plugin

sudo vagrant up --provider vmware_fusion
Password:
Bringing machine 'controlplane' up with 'vmware_fusion' provider...
Bringing machine 'node01' up with 'vmware_fusion' provider...
Bringing machine 'node02' up with 'vmware_fusion' provider...
==> controlplane: Verifying vmnet devices are healthy...
Vagrant failed to create a new VMware networking device. The following
error message was generated while attempting to create a new device:

  Networks with custom subnet/mask values are not supported on this platform

Please resolve any problems reported in the error message above and
try again.

Actual behavior

Failed to bring up infrastructure on VMware Fusion due to the error listed above.

Vagrant failed to create a new VMware networking device. The following
error message was generated while attempting to create a new device:

  Networks with custom subnet/mask values are not supported on this platform

Please resolve any problems reported in the error message above and
try again.

Reproduction information

Vagrant version

  • Vagrant 2.4.1

Host operating system

  • macOS Sonoma 14.4

Guest operating system

  • Ubunutu 22.02

VMware Fusion Version

  • Professional Version 13.5.1 (23298085)

Steps to reproduce

  1. Visit website: https://devopscube.com/build-vms-mac-silicon-with-vagrant/
  2. Clone repo
  3. run sudo vagrant up having already installed the plugin vagrant-vmware-desktop and added license file.

Vagrantfile

# box_name: "sloopstash/ubuntu-22-04"
box_name: "bento/ubuntu-22.04"
# box_version: "2.1.1"
vm:
- name: "controlplane"
  ip: "192.168.201.10"
  memory: "2048"
  cpus: "2"
- name: "node01"
  ip: "192.168.201.11"
  memory: "2048"
  cpus: "2"
- name: "node02"
  ip: "192.168.201.12"
  memory: "2048"
  cpus: "2"

require 'yaml'
settings = YAML.load_file(File.join(File.dirname(__FILE__), 'settings.yaml'))

Vagrant.configure("2") do |config|
  config.vm.box = settings['box_name']
  # config.vm.box_version = settings['box_version']
  config.vm.box_check_update = false

  settings['vm'].each do |vm_config|
    config.vm.define vm_config['name'] do |vm|
      vm.vm.hostname = vm_config['name']
      vm.vm.network :private_network, ip: vm_config['ip']
      vm.vm.synced_folder ".", "/vagrant", disabled: false

      vm.vm.provider "vmware_desktop" do |vb|
        vb.gui = false
        vb.memory = vm_config['memory']
        vb.cpus = vm_config['cpus']
      end

      vm.vm.provision "shell", inline: <<-SHELL
        apt update
        apt upgrade -y
        apt install -y wget vim net-tools gcc make tar git unzip sysstat tree
        echo "192.168.201.10 controlplane" >> /etc/hosts
        echo "192.168.201.11 node01" >> /etc/hosts
        echo "192.168.201.12 node02" >> /etc/hosts
      SHELL
      # vm.vm.provision "shell", path: "scripts/common.sh"
    end
  end
end

derhornspieler avatar Mar 17 '24 20:03 derhornspieler

Recommend to change from vmware_fusion to vmware_desktop

sysnet4admin avatar Mar 31 '24 00:03 sysnet4admin

I can confirm that the above suggestion does not resolve the problem. I have the same issue.

It has always confused me what the correct provider name should be. To me the options of:

  • vmware_fusion
  • vmware_desktop
  • vmware

All see to be the same. The documentation doesn't clearly explain the correct time to use each option for the provider name.

smidge84 avatar Sep 13 '24 16:09 smidge84