Installing 3CX Phone System on a Hyper-V VM

When running Microsoft Hyper-V, it is important to have the following settings configured on the 3CX Virtual Machine (VM) for optimal performance.

General Settings

Configuring a Static MAC address

It is very important for licensing that the MAC address of the hosted VM is a constant value. To set a static MAC address for the 3CX VM running in Hyper-V:

  1. Open a command prompt on the 3CX virtual machine.
  2. Click Start, type cmd and press <Enter>.
  3. Type ipconfig /all” and press the <Enter> key.

Configuring a static MAC address

  1. Note down the value in the Physical Address field to use for the 3CX VM in Hyper-V Manager, marked in this example as xx-xx-xx-xx-xx-xx.
  2. Start Hyper-V Manager with administrative privileges.

Configure settings for a VM in Hyper-V Manager

  1. In the Virtual Machines section, right-click on the 3CX VM to configure and choose Settings”.
  2. In the Settings for <VM_name> window, select Network Adapter > Advanced Features.

Set a static MAC address for a VM in Hyper-V Manager

  1. Set the MAC address field to Static and use the Physical Address value you noted earlier  to fill in the corresponding fields.
  2. Click OK to save settings.

Broadcom NetXtreme 1-Gigabit

If the HyperV server uses the above-defined network adapter(s), the driver must be updated to the latest version and/or VMq needs to be disabled for those. More information can be found here.

Windows on Hyper-V

Hyper-V Integration Services

Hyper-V Integration Services are automatically installed via Windows Update and can solve some issues related to NTP and network card performance.

Verify Installed Network Drivers

To verify that Integration Services are installed open an administrative command prompt and:

  1. Type ipconfig /all” and press Enter”.
  2. If the result of the ipconfig shows the installed Network Adapter as Microsoft Virtual Machine Bus Network Adapter, you need to install the Integration Services.
  3. If the result of the ipconfig command shows your Network Adapter as Hyper-V Network Adapter, your Integration Services are already installed.

Check if NTP Source is Set to the Hyper-V Server

Keeping the system time synchronized is essential to the normal operation of a 3CX PBX. To verify the Windows time synchronization status, open an administrative command prompt and:

 Hyper V server

  1. Enter the command “w32tm /query /source”
  2. The command’s result should be “VM IC Time Synchronization Provider”

Local CMOS Clock

  1. If you read “Local CMOS Clock” or a name of an NTP host you need to install Integration Services on the VM.

Debian on Microsoft Hyper-V

Prerequisites

  • Standard Network Adapter: 3CX on Debian explicitly requires a standard “Network Adapter, i.e. the “Legacy Network Adapter” type is not supported.
  • Generation 1 VMs only are supported by 3CX. Refrain from using Generation 2 VMs.

Time Synchronization on  Debian VM

To install and configure the NTP (Network Time Protocol) client after creating a Debian VM instance, run these commands as “root” or via “sudo”:

apt update

apt install ntp

📄 Note: Supported versions of Debian Linux have built-in support for Hyper-V Integration Services.

See Also

Last Updated

This document was last updated on 15 June 2023

https://www.3cx.com/docs/installing-microsoft-hyper-v/