How to install pfSense 2.0.2 on Hyper-V (Windows Server 2012)

When you are installing pfSense on Hyper-V there are some things to consider:

  • Use Legacy Network Adapters.
  • You need to reset all network adapters in pfSense every time the system boots.
  • If running on AMD CPU you must set hw.clflush_disable=1 att boot-time.
  • pfSense 2.0.x on Hyper-V is not recommended for production environments and should only be used for lab or test purposes.

The following steps is a description of how to install pfSense on Hyper-V in a successful way:

  1. Download pfSense-LiveCD-2.0.2-RELEASE-amd64.iso.gz from one of the pfSense mirrors at
  2. Verify the file hash of the downloaded file using your favourite hashing tool (Personally I like HashTab which is freely available for personal use at
  3. Extract the ISO-file from the downloaded tarball using a file archiver of your choice (I like 7-Zip which is an open source file archiver. It is available at
  4. Create a Hyper-V VM with two Legacy Network Adapters and remove any network adapter already present. The VM should have a small IDE harddrive (typically 1GB) and at least 128MB of RAM.
  5. Boot the VM on the ISO-file. If you are using a AMD CPU in your windows host you must set the boot parameter hw.clflush_disable=1 at boot time. To do that press 7 at the boot menu and enter the following commands (also shown in the following picture):
    OK set hw.clflush_disable=1
    OK boot
    set hw.clflush_disable=1
  6. Select the option to install pfSense otherwise you wil just boot the LiveCD.
    Select the Install option
  7. Change video font, screenmap and keymap appropriate to your video monitor, keyboard and language. Then select “Accept these Settings”.
    Accept these Settings
  8. Select Quick/Easy install to use the first hard disk and “automatically” install pfSense.
    Quick/Easy Install
  9. Confirm by pressing OK.
  10. Select to install a standard kernel.
    Standard kernel
  11. When the installation is finished, choose to reboot the VM, power it off and eject the ISO.
  12. Start the VM again (remember to set the parameter hw.clflush_disable=1 at boot-time if using a AMD CPU).
  13. Configure VLANs if appropriate for your environment.
    Configure VLANs
  14. Assign interfaces as appropriate for your configuration, confirm by pressing y and enter.
    Assig interfaces.
  15. Enter option 8 to get to the shell.
  16. Create simple script that resets all your network adapters at boot by entering the following commands (add more interfaces depending on your configuration and start dhclient on all interfaces that should receive IP-configuration dnyamically):
    # touch /etc/rc.local
    # touch /etc/rc.local.running
    # chmod 755 /etc/rc.local
    # echo “ifconfig de0 down” >> /etc/rc.local
    # echo “ifconfig de0 up” >> /etc/rc.local
    # echo “ifconfig de1 down” >> /etc/rc.local
    # echo “ifconfig de1 up” >> /etc/rc.local
    # echo “dhclient de0” >> /etc/rc.local
  17. If using an AMD CPU, enter the following command to permanently set the parameter hw.clflush_disable=1 at boot time:
    # echo “hw.clflush_disable=1” >> /boot/loader.conf.local
  18. Reboot to test your configuration.
    # reboot


2 Replies to “How to install pfSense 2.0.2 on Hyper-V (Windows Server 2012)”

  1. Thanks for the reset script, never thought you’d have to do that right after boot up.
    You saved me a lot of hours searching !


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website with
Get started
%d bloggers like this: