by Dana Daugherty
While this article is
technically related more to networking than SMS, it could save
you some headaches. You never know, it may show it’s ugly head
in your enterprise.
The article describes
a problem we experienced with SMS clients automatically
uninstalling themselves. We take you step-by-step through the long
process of identifying the network issue, troubleshooting the
problem, and eventually finding a solution.
We were experiencing
a problem where SMS clients were uninstalling themselves. Not
all clients, just those installed on Windows 98 machines; and
not all 98 machines were exhibiting this behavior, either.
Being that the client relies so heavily on the subnet
information, it didn’t take long to figure out that our real
problem was a network issue.
workstations were not communicating with DHCP servers
properly, which resulted in the clients using default class A
(255.0.0.0) and default class B (255.255.0.0) subnet masks. In
our organization we have a default class B network address and
use a class C subnet mask.
Our network address
was 126.96.36.199 with a subnet mask of 255.255.252.0. The
clients IP address was 188.8.131.52. The client with this
problem would think his address was 184.108.40.206 or 220.127.116.11,
depending on which subnet mask it picked up.
This issue only
seemed to cause problems in my world because the workstation
could communicate with everything on the network just fine.
Let’s say the client above, 18.104.22.168, was installed at a
site with a SMS Site Boundary of 22.214.171.124. And let’s say it
picked up the 255.255.0.0 mask. As soon as it would log on
with this erroneous address it would uninstall itself. It did
this because it could contact another site with this network
address (150.77.0). Not cool! If the above client picked up
the 255.0.0.0 subnet mask it would uninstall itself within 30
days because it logged on with a network address that was not
in the boundary of any of my sites.
CLITRAVL to the RESCUE!
It was apparent to
me, after a couple of days of trouble shooting, that I had to
do something to stop these clients from uninstalling
themselves. From the SMS 2.0 Support Tools, Clitravl.exe
emerged as an option.
is a command line interface utility for turning Travel Mode on
and off. It also can turn user prompts off. User prompts are
one of the most unattractive aspects of Travel Mode. Turning
Travel Mode on gives a client the ability to travel to other
SMS sites andor networks with no SMS sites without an
automatic uninstall of the SMS client
As a workaround, I
implemented clitravl.exe on all machines in the domain using
an SMS package. I also created a SMS Installer wrapper for
SMSMan.exe that would call clitravl.exe with the appropriate
With this approach, I
had the bases covered. Current clients wouldn’t uninstall themselves. Travel
Mode would be applied as we ran the install for clients that
had already uninstalled themselves and for new client
For more information
on Clitravl.exe and the client uninstall behavior take a look
at my article
This problem was
extremely difficult to trouble shoot. It would happen very
sporadically. Using WINIPCFG we could, of course, see the
subnet mask the workstation picked up. Also in the Lease
Expiration box there was no date. If we would select release
and then select renew, the workstation would pick up the
proper IP information. The SMS client could then be installed.
So while we could cause the workstation to function properly,
we could not recreate the problem.
Clitravl.exe to all clients we could begin to locate more
workstations with this issue. In their respective collections
clients would have a NO in the Client orand Assigned columns.
Prior to using Clitravl, clients would just uninstall
themselves and we would have no way of finding them.
I worked with
seasoned veterans from our network management department for
weeks on this issue. We used Netmon, and NAI Sniffer to
capture and analyze packets. We opened a case with Microsoft
and worked directly with their network and Win 98 engineers.
They came to the conclusion that our ghost images were
corrupt. This theory was never proved though. Several months
went by with no solution.
Recently, after some
new features came available, we decided to upgrade the code on
our Bay Networks Baystack 450T switches. We moved from image
code version 1.3.0 to 126.96.36.199. These switches are used at all
of our sites. After our pilot site was upgraded we noticed
that there were consistently 0 SMS clients at this site
showing as not assigned.
We then decided to
continue upgrading the remainder of the Baystack switches.
Once we did this, low and behold, no more client network
Until this point, we
really had no reason to upgrade these switches. As far as we
knew they were operating properly. With the exception of the
SMS client problem, there were no issues. The solution was
really quite simple. It was staring us in the face all along
— we just didn’t know it.
In reality, this
problem didn’t need to occur for so long. Unfortunately, the
limited resources of our IT staff had something to do with it.
If we had the necessary IT staff members to complete the work
required, someone could have focused on the issue. Then we
would have experienced a more timely solution.
Some of the best workarounds and
utilities are located in the SMS 2.0 Tools and the Microsoft
Back Office Resource Kit (BORK). Without the use of CliTravl.exe our
SMS implementation was not only unreliable, it was dead in the
water. While the documentation for some of these tools is
sketchy, at best, they can be a big help. By visiting news
groups and Web sites like this you can find
creative, real world uses for these utilities.
As I said, we were
able to keep the SMS client installed on the machines
experiencing this problem using Clitravl.exe. Unfortunately,
the software and hardware inventory was dumped from the
database. The cause of this is now evident. There was no SMS
Server code to support inventory being sent from a client with
a network address outside its Site Boundary. A hot fix is now
available for this issue. For more info on this hot fix and
using Site4c.exe take a look at this article on supporting