Each SMS client is assigned to only one SMS site. The Legacy Client site assignment process operates differently than the Advanced Client site assignment. Table 10.8 shows how you can assign clients to SMS sites based on the client installation technique or method that you use. For information about specific techniques used to assign clients to SMS sites, see Chapter 17, "Discovering Resources and Deploying Clients."
Note:
-
If a client has multiple network cards (possibly a LAN network card and a dial-up modem), and therefore has multiple IP addresses, the network card that is bound first is used for evaluating Advanced Client site assignment.
Table 10.8. Planning for Assignment Techniques or Methods
|
Client installation method or technique
|
How client is assigned
|
|
Logon Script-initiated Client Installation
(Capinst.exe used without switches)
|
The installation method attempts to find a server locator point, which attempts to locate an SMS site that is appropriate for the client.
|
|
Logon Script-initiated Client Installation
(Capinst.exe used with the /SLP= switch)
|
The specified server locator point attempts to locate an SMS site that is appropriate for the client.
|
|
Manual Client Installation
(SMSman.exe)
|
The Legacy Client is assigned to the site of the CAP that is specified by SMSman.exe (or the Systems Management Installation Wizard) if the client is within the site boundaries.
|
|
Client Push Installation
|
The client is already assigned by the discovery method.
|
|
Advanced Client Installer
(Ccmsetup.exe)
|
The Advanced Client uses Active Directory or server locator points to locate an SMS site that is appropriate for the client, or a site is specified on the Advanced Client Installer command line using SMSSITECODE.
|
|
Software distribution
|
Use the Systems Management icon in Control Panel to set the site to a valid site code or automatically detect the site by clicking Discover.
|
|
Software distribution (site specified for assignment)
|
Use the SMSSITECODE property to specify the site code.
|
|
Software distribution (automatic assignment)
|
Use the SMSSITECODE property to specify the site code as AUTO. The Advanced Client uses Active Directory or the server locator point to locate an SMS site that is appropriate for the client.
|
|
Advanced Client installation on a master computer image
|
Use the Systems Management icon in Control Panel to set the site to a valid site code or automatically detect the site by clicking Discover.
|
Assigning Advanced Clients
The Advanced Client is assigned to an SMS site when the core SMS software components are installed, or it is assigned after installation. Its assignment is based on the roaming boundary that the client is in. You can install the SMS software components on the Advanced Client without assigning the client to an SMS site. After it is assigned to an SMS site, the Advanced Client does not change its site assignment.
Advanced Client installation is controlled through different means. Advanced Clients can be assigned to an SMS site or they can automatically determine a site to be assigned to at installation time. You can also later manually assign an Advanced Client's site to a different site, set it to automatically determine a site to be assigned to, or assign it to no site. When an Advanced Client is assigned to a site, it maintains that site assignment unless an SMS administrator changes the assignment.
For Advanced Clients, determine whether you want to assign the Advanced Client to an SMS site when the Advanced Client software is installed. If you want automatic assignment of Advanced Clients to occur, plan to configure the client to automatically determine a site. If you are not sure which SMS site the Advanced Client computer will eventually belong to, then plan to manually assign the client to an SMS site later.
With manual site assignment, even if the Advanced Client does not currently reside within roaming boundaries, it is still assigned to the site you specify. If the Advanced Client is not configured to automatically determine a site, and it is not set to a specific site, it is not assigned to a site and remains dormant, but its installation continues.
Assigning Legacy Clients
Legacy Client site assignment is controlled by SMS site boundary configuration. The Legacy Client is automatically assigned to an SMS site based on the site boundary it is in when the core SMS software components are installed. To ensure proper site assignment when you are using Active Directory site boundaries, be sure that your clients can use Active Directory. For example, clients that are running Windows 98 cannot be assigned to an SMS site based on Active Directory site boundaries.
Remember that if the site boundaries that a Legacy Client is in are removed, or if the Legacy Client moves out of the boundaries of its assigned site, the SMS client software is automatically removed from the computer. The exceptions to this are if Travel Mode is enabled on the Legacy Client or if the Forced Sites tool (Site4c.exe) has been used. If the Legacy Client is no longer assigned to an SMS site, it removes the SMS client software.
Important:
If an individual computer runs an SMS discovery or installation method and then installs the Legacy Client, then it cannot be specifically included or excluded in the assignment process; it is assigned just like all the computers in that subnet or Active Directory site. If you do not want a particular computer to be an SMS Legacy Client, you must ensure that all SMS discovery and installation methods are configured in such a way that they do not run on the computer.
When the core Legacy Client software components are installed, you can specify a CAP or a list of CAPs. If the Legacy Client is in the site boundaries of one or more of those CAPs, it is assigned to the first site associated with those CAPs. If the client does not match the boundaries of any site, it is unassigned and its software is removed.
Forcing Client Assignment
If some of your Legacy Clients do not fall within SMS site boundaries, but you want to assign them to a site, you can force them to report to a site by using the Forced Sites tool (Site4c.exe). For information about using this tool, run the Forced Sites tool with the /? switch. The Forced Sites tool is available for download with the SMS 2.0 Support Tools at http://go.microsoft.com/smserver/downloads/20/default.asp.
Note:
Evaluating Subnet Membership
SMS can use IP subnets as SMS site boundaries and roaming boundaries. If you use IP subnets as a means to determine SMS site assignment, you must add the appropriate IP subnets as boundaries to relevant SMS sites. Usually, each SMS site has a unique collection of subnets. Subnets should not be specified as boundaries in more than one SMS site. This allows each site to have a unique set of SMS clients. This section helps you evaluate which subnets your computers are in.
IP Subnets
Network equipment uses IP subnets to determine which logical network segment a computer is in on a TCP/IP network. Any computers with the same subnet ID are logically close to each other and can communicate directly. Computers on the same subnet do not need intermediate network equipment to assist with the communication.
Computers on different subnets might be distant from each other. For example, they might be across slow network links, like a WAN link. Subnets are an effective way to map computers to physical locations.
For many organizations, a single subnet is not large enough to serve all the computers in a single physical location. Therefore, multiple subnets are used for a single location, even though the computers are physically close to each other. In this situation, multiple subnets are used to map computers to a physical location.
In the pre-planning phase, you obtained a list of subnets for your SMS sites from the network administrators who set up your computer network. If you need to confirm this information, you can determine an IP subnet ID by applying the client computer's IP subnet mask to its IP address. The subnet is the portion of the client's address that is masked off by the subnet mask. The remaining portion of the IP address is the computer's IP address. To obtain the subnet ID, apply the subnet mask to the IP address by converting the IP address and subnet mask to binary numbers, and by keeping the bits in the IP address that have bits set in the subnet mask, and then converting the result back to decimal. The result is the subnet ID.
Alternatively, you can use the script in Listing 10.1 to determine the subnet ID for a computer's given IP address and subnet mask. You can use the resulting subnet as a site boundary or roaming boundary for the SMS site.
If the computer has multiple network adapters, the script in Listing 10.1 displays the subnet IDs for each network adapter.
Network adapters that have multiple addresses are called "multihomed." The script in Listing 10.1 does not display the subnet IDs for multi-homed network adapters.
Listing 10.1 Script (Subnet.vbs), used to display the subnet ID for the computer's given IP addresses and subnet mask
'subnet.vbs - displays the subnet for the computer's (or given) IP '
addresses and subnet masks Set Arguments = Wscript.Arguments If Wscript.Arguments.Count=2 Then
SubNetIT Arguments(0), Arguments(1)
Wscript.Echo ""
Else
Set loc = CreateObject( "WbemScripting.SWbemLocator" )
Set WbemServices = loc.ConnectServer( ,"root\cimv2" )
Set Adapters=WbemServices.ExecQuery( "Select * FROM" & _ " Win32_NetworkAdapterConfiguration" )
For Each Adapter in Adapters
If NOT IsNull( Adapter.IPAddress) Then
WScript.Echo "Description: ", Adapter.Description
SubNetIt Adapter.IPAddress(0), Adapter.IPSubnet(0)
WScript.Echo ""
End If
Next
WScript.Echo "You can also specify an address and subnet mask as " & _ "parameters to this script."
WScript.Echo "" End If WScript.Echo "At least one subnet must be a site's boundary for this computer"
WScript.Echo "to be assigned as a client." Sub SubNetIt( Address, Subnet )
WScript.Echo "IP address: ",
Address
WScript.Echo "subnet mask: ", Subnet
dim addressbytes(4)
dim subnetmaskbytes(4)
i=0
period = 1
while period<>len( address ) + 2
prevperiod=period
period = instr( period+1, address, "." ) + 1
if period = 1 then period = len( address ) + 2
addressbyte = mid( address, prevperiod, period-prevperiod-1 )
addressbytes(i)=addressbyte
i=i+1
wend
i=0
period = 1
while period<>len( subnet ) + 2
prevperiod=period
period = instr( period+1, subnet, "." ) + 1
if period = 1 then period = len( subnet ) + 2
subnetmaskbyte = mid( subnet, prevperiod, period-prevperiod-1 )
subnetmaskbytes(i)=subnetmaskbyte
i=i+1
wend
subnet=""
for i=0 to 3
subnet = subnet & (addressbytes(i) AND subnetmaskbytes(i)) & "."
next
subnet = left( subnet, len(subnet)-1 )
WScript.Echo "subnet: ", subnet End Sub
Evaluating Active Directory Site Membership
SMS can use Active Directory site names as SMS site boundaries and roaming boundaries. One advantage to using Active Directory sites as SMS site boundaries or roaming boundaries is that when subnets are added to an Active Directory site that is contained in SMS boundaries, you do not have to add the subnets to your SMS site configuration. If the Active Directory site is added as a boundary, no further configuration in SMS is required. SMS clients in the newly added subnet are assigned to the Active Directory site, which is already equated to the SMS site, and the clients are assigned to the SMS site. If you use Active Directory site names to determine SMS site assignment, you must add the appropriate Active Directory site names as boundaries to relevant SMS sites.
You use IP subnets to evaluate Active Directory site assignment. This assignment is evaluated during logon by the operating system, not by the SMS client software.
Active Directory sites and site assignment are described in Chapter 3, "Name Resolution in Active Directory," in the Microsoft Windows 2000 Server Distributed Systems Guide in the Microsoft Windows 2000 Server Resource Kit.
You can determine which Active Directory site a client is assigned to by examining the following registry key: HKLM\System\CurrentControlSet\Services\Netlogon\Parameters\DynamicSite
The site assignment process can be overridden by using the following registry key: HKLM\System\CurrentControlSet\Services\Netlogon\Parameters\SiteName
Listing 10.2 is a script that displays which Active Directory site is assigned to the computer that you run the script on.
Listing 10.2 Script (Site.vbs), used to display which Active Directory the computer belongs to
Set WshShell = Wscript.CreateObject("Wscript.Shell") On Error Resume Next Site = "Not Assigned"Site =
WshShell.RegRead( "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\" & _
"Services\Netlogon\Parameters\SiteName" ) If Err.Number=-2147024894 Then
Site = WshShell.RegRead( "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\" & _
"Services\Netlogon\Parameters\DynamicSiteName" ) End If If Site = "Not Assigned" Then
WScript.Echo "This computer is not assigned to an Active Directory site."Else
WScript.Echo "This computer is assigned to Active Directory site: " & site End If
For More Information
Did you find this information useful? Please send your suggestions and comments about the documentation to smsdocs@microsoft.com.