Vagrant OEL 8 DevOps · Parallels · Networking

VagrantNetworking with Parallels Provider

Configure port forwarding, private host-only networks and public bridged networks for OEL 8 VMs with the Parallels Vagrant provider on macOS.

Networking with the Parallels provider works similarly to VirtualBox but uses Parallels virtual network adapters. The key difference is that Parallels has its own network management — Shared, Host-Only, and Bridged modes map to Vagrant's NAT, private_network, and public_network.

Vagrant ModeParallels ModeVM accessible from
NAT (default)SharedHost only via port forward
private_networkHost-OnlyHost machine only
public_networkBridgedAll machines on your LAN
Ruby — Port Forwarding (Parallels)
Vagrant.configure("2") do |config|
  config.vm.box = "generic/oracle8"

  # Forward MySQL
  config.vm.network "forwarded_port", guest: 3306, host: 13306

  # Forward Oracle listener
  config.vm.network "forwarded_port", guest: 1521, host: 11521

  # Forward ProxySQL
  config.vm.network "forwarded_port", guest: 6033, host: 16033
  config.vm.network "forwarded_port", guest: 6032, host: 16032

  config.vm.provider "parallels" do |prl|
    prl.name   = "OEL8-DB"
    prl.memory = 4096
    prl.cpus   = 2
  end
end
Ruby — Private Network (Parallels)
Vagrant.configure("2") do |config|
  config.vm.box = "generic/oracle8"

  # Static private IP — works the same as VirtualBox
  config.vm.network "private_network", ip: "192.168.56.10"

  config.vm.provider "parallels" do |prl|
    prl.name   = "OEL8-Private"
    prl.memory = 2048
    prl.cpus   = 2
  end
end
BASH — Test Private Network
# Test from host
ping 192.168.56.10

# Connect to MySQL via private IP
mysql -u root -h 192.168.56.10 -P 3306 -pRoot@123!
Ruby — Public Network (Parallels)
Vagrant.configure("2") do |config|
  config.vm.box = "generic/oracle8"

  # Bridged network — specify your Mac network interface
  config.vm.network "public_network", bridge: "en0: Wi-Fi"

  # Or let Parallels choose
  config.vm.network "public_network"

  config.vm.provider "parallels" do |prl|
    prl.name   = "OEL8-Public"
    prl.memory = 2048
    prl.cpus   = 2

    # Specify bridge adapter via prlctl
    prl.customize ["set", :id, "--device-set", "net0", "--type", "bridged", "--iface", "en0"]
  end
end
BASH — Find Mac Network Interfaces
# Find your Mac network interface names
ifconfig | grep "^en"
# en0 = Wi-Fi on most Macs
# en1 = Ethernet (USB adapter)
# en7 = Thunderbolt Ethernet
Ruby — Multi-Machine Networking
Vagrant.configure("2") do |config|

  config.vm.define "master" do |node|
    node.vm.box     = "generic/oracle8"
    node.vm.hostname = "mysql-master"
    node.vm.network "private_network", ip: "192.168.56.11"
    node.vm.network "forwarded_port", guest: 3306, host: 13306

    node.vm.provider "parallels" do |prl|
      prl.name   = "MySQL-Master"
      prl.memory = 4096
      prl.cpus   = 2
      prl.update_guest_tools = false
    end
  end

  config.vm.define "replica1" do |node|
    node.vm.box     = "generic/oracle8"
    node.vm.hostname = "mysql-replica1"
    node.vm.network "private_network", ip: "192.168.56.12"
    node.vm.network "forwarded_port", guest: 3306, host: 13307

    node.vm.provider "parallels" do |prl|
      prl.name   = "MySQL-Replica1"
      prl.memory = 4096
      prl.cpus   = 2
      prl.update_guest_tools = false
    end
  end

end
BASH — Parallels Network CLI
# List Parallels virtual networks
prlsrvctl net list

# View network info
prlsrvctl net info "Shared"
prlsrvctl net info "Host-Only"

# Check VM network adapters
prlctl list --all
prlctl exec "OEL8-DB" ip addr show
💡 Note: Parallels creates its own Host-Only network adapter (usually vnic0 on your Mac). Make sure 192.168.56.x range does not conflict with existing Parallels networks. Check prlsrvctl net list to see what ranges are in use.