Tagged: Solution Accelerator

BDD2007 PXE-Filter

The PXE-filter in BDD2007 isn’t the best, and there are a few good-to-know things that can be hard to find…

The script \Microsoft Deployment Toolkit\Scripts\PXEFilter.vbs have a few parameters at the top that you need to configure:

sProviderServer = "sccmserver.domain.com" ' FQDN of the SCCM-server
sSiteCode = "CS1" ' Your site-code
sNamespace = "root\sms\site_" & sSiteCode ' Do not change
sUsername = "" ' Keep this one blank if the WDS and SCCM are installed on the same machine
sPassword = "" ' Same as with sUsername
sCollection = "CS10000E" ' ID of the deployment role

Remember: Do not add user and pass when you are on the same machine.

To debug the script, set the following key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Tracing\WDSSERVER\EnableFileTracing to 1 and restart WDSServer
When you do, it will create a logile at %WinDir%\Tracing\WDSServer.LOG

If you need to add some debug-info in the script, add a line like this:

PXE.LogTrace "My little debug-thingy"

Then you will se the following line in WDSServer.LOG:

[5440] 15:34:11: [WDSPXE] [Microsoft.BDD.PXEFilter] My little debug-thingy

And when you get it to work, the WDSServer.LOG should look like this:

[6288] 15:34:07: [WDSPXE] [Microsoft.BDD.PXEFilter] About to run script
[1812] 15:34:07: [WDSPXE] [Microsoft.BDD.PXEFilter] PXEFilter.vbs - Processing request from MAC address = 00:11:22:33:44:55, IP address =, UUID = 11111111-1111-1111-1111-111111111111
[1812] 15:34:07: [WDSPXE] [Microsoft.BDD.PXEFilter] PXEFilter.vbs - Could not find machine with MAC address '00:11:22:33:44:55' or SMBIOS UUID '11111111-1111-1111-1111-111111111111'.
[1812] 15:34:07: [WDSPXE] [Microsoft.BDD.PXEFilter] PXEFilter.vbs - Added new machine with ResourceID = 46
[1812] 15:34:08: [WDSPXE] [Microsoft.BDD.PXEFilter] PXEFilter.vbs - Added new membership rule to collection CS10000E
[1812] 15:34:11: [WDSPXE] [Microsoft.BDD.PXEFilter] PXEFilter.vbs - Found advertisement CS120001

So what does the PXE-filter do?
1. Looks to see if the machine exist (via WMI to the SCCM-server)
2. If it exist, just exit the script. If not, create it.
3. Add it to the collection (Stated with the sCollection-setting)
4. Wait’s up to 15 seconds to see if there is an advertisment against the collection.
And then it’s done.

Note: I found this info when using SCCM2007 and BDD2007, might work with other versions…