hashicorp/vagrant · warning
Configuring secondary network adapters through VMware on Win
Error message
Configuring secondary network adapters through VMware on Windows is not yet supported. You will need to manually configure the network adapter.
What it means
The Windows guest capability for configuring networks does not support secondary network adapters when the provider name starts with "vmware" (vmware_desktop, vmware_fusion, vmware_workstation). It prints a three-line warning and leaves the extra adapters unconfigured, so the guest must be configured manually.
Source
Thrown at plugins/guests/windows/cap/configure_networks.rb:19
# Copyright IBM Corp. 2010, 2025
# SPDX-License-Identifier: BUSL-1.1
require "log4r"
require_relative "../guest_network"
module VagrantPlugins
module GuestWindows
module Cap
module ConfigureNetworks
@@logger = Log4r::Logger.new("vagrant::guest::windows::configure_networks")
def self.configure_networks(machine, networks)
@@logger.debug("Networks: #{networks.inspect}")
guest_network = GuestNetwork.new(machine.communicate)
if machine.provider_name.to_s.start_with?("vmware")
machine.ui.warn("Configuring secondary network adapters through VMware ")
machine.ui.warn("on Windows is not yet supported. You will need to manually")
machine.ui.warn("configure the network adapter.")
else
vm_interface_map = create_vm_interface_map(machine, guest_network)
networks.each do |network|
interface = vm_interface_map[network[:interface]+1]
if interface.nil?
@@logger.warn("Could not find interface for network #{network.inspect}")
next
end
network_type = network[:type].to_sym
if network_type == :static
guest_network.configure_static_interface(
interface[:index],
interface[:net_connection_id],
network[:ip],
network[:netmask])View on GitHub (pinned to 35f3160f4a)
Solutions
- Configure the adapter manually inside the guest (ncpa.cpl, or `netsh interface ip set address`)
- Remove the extra config.vm.network entries for Windows-on-VMWare boxes so only the primary adapter is used
- Run the Windows box under a provider whose guest network configuration is supported (VirtualBox, Hyper-V)
Example fix
# before config.vm.network "private_network", ip: "192.168.50.5" # warns on vmware + windows guest # after # (extra NIC removed from Vagrantfile; set inside the guest instead) # netsh interface ip set address "Ethernet 2" static 192.168.50.5 255.255.255.0
Defensive patterns
Strategy: validation
Validate before calling
# Plugin/tooling guard: skip secondary NIC config on vmware + windows
return if machine.provider_name.to_s.start_with?("vmware") && machine.config.vm.guest.to_s == "windows" Type guard
def secondary_nics_supported?(machine)
!(machine.provider_name.to_s.start_with?("vmware") && machine.guest.name.to_s == "windows")
end Prevention
- Keep Windows boxes to a single NIC under VMware providers
- Automate the manual adapter config via a shell provisioner running netsh
- Test multi-NIC Windows topologies on VirtualBox/Hyper-V instead
When it happens
Trigger: A Windows guest on a VMware provider with any network definition beyond the primary NIC (config.vm.network :private_network or :public_network) during the configure-networks step of vagrant up or vagrant reload; machine.provider_name.to_s.start_with?("vmware") selects the warning branch.
Common situations: Porting a VirtualBox or Hyper-V Windows Vagrantfile to the commercial VMware plugin; multi-NIC topologies (management + data networks) on Windows guests.
Related errors
- There was an error while downloading the metadata for this b
- Vagrant failed to load a configured plugin source. This can
- The Vagrant Cloud server is not currently accepting connecti
- RDP connection information for this machine could not be det
- The box is not able to report an address for WinRM to connec
AI-assisted analysis of hashicorp/vagrant@35f3160f4a (2026-08-21).
Data as JSON: /api/errors/48a13a90c1ceaa29.
Report an issue: GitHub.