Sunday, July 6, 2014

VDI Deployment Error: Failed to Create WMI Firewall Exception

Like a previous post I made, this is probably relevant only when doing VDI in a test deployment that's a bit kludgy. However, in case anyone else runs into this, here's my scenario:
  • Hyper-V Host (Windows 2012 R2) to be configured for virtual machine-based VDI
    • One network for VMs and host (not external) with static IP and DNS
    • One network for external with dynamic IP and DNS
  • Domain controller is a VM on the Hyper-V host
    • On the internal network not the external network with static IP
    • Is the DNS server for the domain
I ran the RDS installation from Server Manager and the first part was fine. The Hyper-V host reboots and then you wait for the DC to restart before logging on to the Hyper-V Host as the DC is required to complete the configuration. After logging on to the Hyper-V host the wizard continues. I got this error:

RD Virtualization Host Configuration Failed on machineName.domain.com With Error: Could not create the Windows Management Instrumentation Windows Firewall exception on machineName.domain.com.

In my case this was because the Hyper-V host started using the DNS from the dynamic interface instead of the internal network and lost track of the domain. The network that had the domain controller was being detected as a public network instead of a domain network. My fix was to change the IPv4 configuration on the external network to use static DNS servers and not enter any DNS servers. The Hyper-V Host then used DNS on the DC and detected everything properly.


Friday, July 4, 2014

Search the Message Tracking Log with Wildcards

I was trying to track down a delivery error today and was annoyed that I couldn't use wildcards when searching the log in Tracking Log Explorer. Instead, I used the Exchange Management Shell and filtered with Where-Object to get the information I wanted:
Get-MessageTrackingLog -Start "month/day/year hour:minute:second" -End "month/day/year hour:minute:second" -Resultsize Unlimited | Where-Object {$_.Recipients -like "*@domain.com"}