Don’t forget to set site boundaries when deploying SCCM

I was doing some troubleshooting Friday of a System Center Configuration Manager 2007 SP1 deployment on Windows Server 2008. The SCCM (or ConfigMgr – whichever abbreviation you prefer) client is installed on a Vista machine in the lab for testing.

The first problem I observed was that a software package distribution was failing. I confirmed that the SCCM site server is configured as a Distribution Point, and that the package in question is deployed to that DP. But still no luck.

Analyzing the status messages on the ConfigMgr server, I saw most notably the following:


System: (my Vista machine)
Source: SMS Client
Component: Software Distribution
Type: Milestone
Severity: Error
Message ID: 10051
Description: The content for ... could not be located. This SMS client will no longer attempt to locate this content. Possible cause: The content source might not be available ...

But at this point, based on the success messages posted by the DP, I was pretty certain that the DP component itself, as well as the package in question, was configured correctly, at least on the server side.

Another couple of troublesome messages came from the client in %systemroot%\system32\ccm\logs\cas.log. First this one, dating back to the initial install of the ConfigMgr client: “Software Distribution Site Settings for the client are missing from WMI …”

And this one in execmgr.log in the same client directory: “Raising event … SoftDistErrorNoContent …”

An equally important observation about cas.log, which I suspected at the time but couldn’t confirm until now: the NetBIOS name of the DP server didn’t occur in the log until after the issue was fixed. That’s a telltale sign that the client knew the package existed, but couldn’t figure out how to download it.

It took me a while to get there, though. Some web searching led me to initially believe that the correct version of MSXML was missing from the Vista client, and I tried installing on older version, but, for future reference, I don’t think that was part of the problem.

Then another post reminded me that the ConfigMgr client had been unable to automatically detect its local site code (see %systemroot%\system32\ccm\smscfgrc.cpl | Advanced | Configure Settings). I thought, at the time, that was only because I’d forgotten to create the System Management node in Active Directory. But re-running the client auto-discover at this point revealed that was still broken! It hadn’t occurred to me until that point that these issues might be connected.

The answer came when I ran across posts, in various contexts, about setting site boundaries. Seems that can affect a lot of ConfigMgr functionality – to a confusing extent, actually, because even though the client may be hardcoded to a certain site, package distribution will stlil fail unless an explicit boundary mapping exists for the client in question.

Lab testing confirmed this. Check out Site Database | Site Management | (Site Name) | Site Settings | Boundaries in the Configuration Manager Console snap-in. I set a single boundary to include the virtual 10.0.0.x network in use by the test machines. Much to my delight, auto-discovery and the package download were fixed immediately.

Leave a Reply