Over the years I have realised MS Roaming Profiles have been the bain of
most peoples lives, sometimes problems relate to MS moving the goalposts,
other times it's simply Novell needs to patch a bug.

In this case, this strange problem definitly relates to either DNS or SLP
lookups in some way.

We have a OES SP2 Linux box set-up with around 15 Dell PCs running Windows
XP SP2 with Novell Client 4.91 SP3 with the following post SP3 fixes :

Novell Client post-4.91 SP3 NWFS.SYS
Novell Client post-4.91 SP3 LOGINW32.DLL
Novell Client 4.91 Post-SP3 NDPPNT.DLL
Novell Client post-4.91 SP3 NWDNS.SYS
Novell Client 4.91 Post-SP3 NOVNPNT.DLL
Novell Client 4.91 Post-SP3 NWSPOOL.DLL

We have also installed ZenWorks Desktop Agent 7.01 with a ZenWorks 7.01
Backend on the OES SP2 box.

Our customer doesn't have an internal DNS server, but all 15 PCs use a DNS
proxy via IPCop. So in effect all PCs perform direct DNS lookups to the
Internet....not ideal, I realise.

OpenSLP is working fine on the OES box and all Novell Clients can happily
login to the server using Multicast SLP. We have confirm using slpinfo /all
etc, we are happy this is working fine.

My problem is simple:

On some PCs the only way the roaming profile will work reliably is to
remove the DNS entry completely from the Windows XP IP config. This means
users can access the OES NCP Mapped Drives using the server name via SLP
and have a working roaming profile but can't access the Internet using DNS.
Oddly some PCs do work with the DNS entry left in, whereas others don't
upload/update the profile back to the server.

I have loaded the MS UPHClean utility on all PCs but this doesn't 'seem' to
be making any difference.

I have discovered that switching on UserEnvDebugLevel using log option
30002 that the userenv.log file shows it's not happy when the external DNS
entry is in place :

For example :

USERENV(2e4.2e8) 13:18:15:828 CUserProfile::CleanupUserProfile: Ref Count
is not 0
USERENV(2e4.2e8) 13:18:15:828 CUserProfile::CleanupUserProfile: Ref Count
is not 0
USERENV(2e4.2e8) 13:18:15:828 CUserProfile::CleanupUserProfile: Ref Count
is not 0
USERENV(2e4.2e8) 13:18:15:828 CUserProfile::CleanupUserProfile: Ref Count
is not 0
USERENV(2e4.2e8) 13:18:15:828 CUserProfile::CleanupUserProfile: Ref Count
is not 0
USERENV(2e4.58c) 13:18:23:906 GetGPOInfo: Local GPO's gpt.ini is not
accessible, assuming default state.
USERENV(2e4.640) 13:18:23:937 GetGPOInfo: Local GPO's gpt.ini is not
accessible, assuming default state.
USERENV(838.964) 13:18:29:546 UnloadUserProfile: Failed to enable the
restore privilege. error = c0000022
USERENV(838.a88) 13:18:33:218 LoadUserProfile: Failed to impersonate user
with 5.




Remove the DNS entry within XP and you get the following :



10:53:10:078 CheckXForestLogon: Stand-alone or NT4 domain, not x-forest logon.
USERENV(2e8.2ec) 10:53:14:593 AbleToBypassCSC: Try to bypass CSC
USERENV(2e8.2ec) 10:53:14:625 AbleToBypassCSC: tried
NPAddConnection3ForCSCAgent. Error 53
USERENV(2e8.2ec) 10:53:14:796 ParseProfilePath: CSC bypassed failed.
Profile path \\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile
USERENV(2e8.2ec) 10:53:14:796 ParseProfilePath: Tick Count = 0
USERENV(2e8.2ec) 10:53:17:062 ParseProfilePath: GetFileAttributes found
something with attributes <0x10>
USERENV(2e8.2ec) 10:53:17:062 ParseProfilePath: Found a directory
USERENV(2e8.2ec) 10:53:17:062 LoadUserProfile: ParseProfilePath returned a
directory of <\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile>
USERENV(2e8.2ec) 10:53:17:062 RestoreUserProfile: Entering
USERENV(2e8.2ec) 10:53:17:062 RestoreUserProfile: User is a Admin
USERENV(2e8.2ec) 10:53:17:062 IsCentralProfileReachable: Entering
USERENV(2e8.2ec) 10:53:17:078 CheckRoamingShareOwnership: checking
ownership for \\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile
USERENV(2e8.2ec) 10:53:17:078 CheckRoamingShareOwnership: policy set to
disable ownership check
USERENV(2e8.2ec) 10:53:17:078 IsCentralProfileReachable: Testing
<\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\ntuser.man>
USERENV(2e8.2ec) 10:53:17:078 IsCentralProfileReachable: Profile is not
reachable, error = 2
USERENV(2e8.2ec) 10:53:17:078 IsCentralProfileReachable: Testing
<\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\ntuser.dat>
USERENV(2e8.2ec) 10:53:17:093 IsCentralProfileReachable: Found a user profile.
USERENV(2e8.2ec) 10:53:17:093 RestoreUserProfile: Central Profile is reachable
USERENV(2e8.2ec) 10:53:17:093 RestoreUserProfile: Central Profile is roaming
USERENV(2e8.2ec) 10:53:17:093 RestoreUserProfile: Profile path =
<\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile>
USERENV(2e8.2ec) 10:53:17:093 ExtractProfileFromBackup: A profile already
exists
USERENV(2e8.2ec) 10:53:17:093 PatchNewProfileIfRequred: A profile already
exists with the current sid, exitting
USERENV(2e8.2ec) 10:53:17:109 CreateLocalProfileKey: Not setting
additional Security
USERENV(2e8.2ec) 10:53:17:109 GetExistingLocalProfileImage: Found entry in
profile list for existing local profile
USERENV(2e8.2ec) 10:53:17:109 GetExistingLocalProfileImage: Local profile
image filename = <%SystemDrive%\Documents and Settings\USER1>
USERENV(2e8.2ec) 10:53:17:109 GetExistingLocalProfileImage: Expanded local
profile image filename = <C:\Documents and Settings\USER1>
USERENV(2e8.2ec) 10:53:17:109 GetExistingLocalProfileImage: No local
mandatory profile. Error = 2
USERENV(2e8.2ec) 10:53:17:109 GetExistingLocalProfileImage: Found local
profile image file ok <C:\Documents and Settings\USER1\ntuser.dat>
USERENV(2e8.2ec) 10:53:17:125 Local Existing Profile Image is reachable
USERENV(2e8.2ec) 10:53:17:125 Local profile name is <C:\Documents and
Settings\USER1>
USERENV(2e8.2ec) 10:53:17:125 RestoreUserProfile: Reconciling roaming
profile with local profile
USERENV(2e8.2ec) 10:53:17:156 GetExclusionList: The exclusion on both
server and client are same: <Local Settings;Temporary Internet
Files;History;Temp;Local Settings\Application Data\Microsoft\Outlook>
USERENV(2e8.2ec) 10:53:17:156 CopyProfileDirectoryEx: Entering, lpSourceDir
= <\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile>,
lpDestinationDir = <C:\Documents and Settings\USER1>, dwFlags = 0x14c20
USERENV(2e8.2ec) 10:53:17:156 CopyProfileDirectoryEx: lpExclusionList =
<Local Settings;Temporary Internet Files;History;Temp;Local
Settings\Application Data\Microsoft\Outlook>
USERENV(2e8.2ec) 10:53:17:171 ConvertExclusionList: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Local Settings
to ExclusionList
USERENV(2e8.2ec) 10:53:17:171 ConvertExclusionList: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Temporary
Internet Files to ExclusionList
USERENV(2e8.2ec) 10:53:17:171 ConvertExclusionList: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\History to
ExclusionList
USERENV(2e8.2ec) 10:53:17:171 ConvertExclusionList: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Temp to
ExclusionList
USERENV(2e8.2ec) 10:53:17:171 ConvertExclusionList: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Local
Settings\Application Data\Microsoft\Outlook to ExclusionList
USERENV(2e8.2ec) 10:53:17:171 ConvertExclusionList: Adding C:\Documents and
Settings\USER1\Local Settings to ExclusionList
USERENV(2e8.2ec) 10:53:17:187 ConvertExclusionList: Adding C:\Documents and
Settings\USER1\Temporary Internet Files to ExclusionList
USERENV(2e8.2ec) 10:53:17:187 ConvertExclusionList: Adding C:\Documents and
Settings\USER1\History to ExclusionList
USERENV(2e8.2ec) 10:53:17:187 ConvertExclusionList: Adding C:\Documents and
Settings\USER1\Temp to ExclusionList
USERENV(2e8.2ec) 10:53:17:187 ConvertExclusionList: Adding C:\Documents and
Settings\USER1\Local Settings\Application Data\Microsoft\Outlook to
ExclusionList
USERENV(2e8.2ec) 10:53:17:203 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\You've Got Pictures Screensaver\PictureDir\ to the list of directories
USERENV(2e8.2ec) 10:53:17:203 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\You've Got Pictures Screensaver\ to the list of directories
USERENV(2e8.2ec) 10:53:17:218 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Teleca\Telecalib\Logging\Application logs\ to the list of directories
USERENV(2e8.2ec) 10:53:17:218 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Teleca\Telecalib\Logging\ to the list of directories
USERENV(2e8.2ec) 10:53:17:218 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Teleca\Telecalib\ to the list of directories
USERENV(2e8.2ec) 10:53:17:234 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Teleca\DM\DEVREP\ to the list of directories
USERENV(2e8.2ec) 10:53:17:234 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Teleca\DM\ to the list of directories
USERENV(2e8.2ec) 10:53:17:234 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Teleca\ to the list of directories
USERENV(2e8.2ec) 10:53:17:250 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\200612061 2\ to the list of directories
USERENV(2e8.2ec) 10:53:17:250 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\200610251 6\ to the list of directories
USERENV(2e8.2ec) 10:53:17:250 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\200609091 8\ to the list of directories
USERENV(2e8.2ec) 10:53:17:265 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\200607281 4\ to the list of directories
USERENV(2e8.2ec) 10:53:17:265 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\200607191 2\ to the list of directories
USERENV(2e8.2ec) 10:53:17:265 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\200605081 7\ to the list of directories
USERENV(2e8.2ec) 10:53:17:265 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\Win32\ to the list of directories
USERENV(2e8.2ec) 10:53:17:281 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\Firefox15\ to the list of directories
USERENV(2e8.2ec) 10:53:17:281 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\MozillaOrg\ to the list of directories
USERENV(2e8.2ec) 10:53:17:281 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Talkback\ to the list of directories
USERENV(2e8.2ec) 10:53:17:296 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Sun\Java\Deployment\tmp\si\ to the list of directories
USERENV(2e8.2ec) 10:53:17:296 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Sun\Java\Deployment\tmp\ to the list of directories
USERENV(2e8.2ec) 10:53:17:296 RecurseDirectory: Adding
\\SERVER\DATA\Users\USER1\Windows NT 5.1 Workstation Profile\Application
Data\Sun\Java\Deployment\security\ to the list of directories

The roaming profile now works fine, it appears from the log it can see
SERVER by name and thus the profile works.

Any ideas how I can get this working that DOESN'T involve removing the DNS
entry from XP?

Cheers,

Richard.