Wednesday, 31 August 2016

How PXE Works


• Machine Start the network boot and send the broadcast to the entire network with  option 60

• Both DHCP and WDS/PXE servers gets the broadcast on port 67

• DHCP Offers the free IP to the client and the client receive the IP on port 68

• But before the client machine requests for the offered IP, it waits for a green signal from WDS. WDS/PXE sever runs a stored procedure, LOOKUPDEVICE for the client machine against SCCM DB. If the machine is found in the DB or If there is an advert for Unknown collection, WDS signals client to proceed with the PXE boot.

• Client machine now requests for the IP offered by DHCP and DHCP then acknowledges this IP assignment. Machine finally has an IP address and is ready to proceed further. (DORA completes).

• The above scenario is only true if we have the client machine PXE and DHCP all are in same subnet. If any of these 3 are in a separate subnet, necessary arrangement needs to be made so that the Broadcast sent by client could reach to both DHCP and PXE server.

• In this case we configure IP helper in router so the broadcast can to forwarded to DHCP and  PXE Server.

• Now the client download WDSNBP.COM from PXE server

• Wdsnbp.com validates the DHCP/PXE response packet and proceeds to download PXEBoot.com

• PXEBoot.com downloads Bootmgr.exe and the BCD store. The BCD store must reside in a \Boot directory in the TFTP root folder. Additionally, the BCD store must be called BCD (BootMGR and BCD store are used to initialize the WINPE environment)

• Bootmgr.exe reads the BCD operating system entries and downloads Boot.sdi and the Windows PE image (Winpe.wim).

• Bootmgr.exe begins booting Windows PE by calling into Winload.exe within the Windows PE image.
Point for Failure

• Client Machine may not be part of SCCM DB and there is not advert on Unknown collection.        This can be tracked in SMSPXE.LOG which is available on PXE service point in MP directory.

• Client machine is not in the same subnet as of the PXE and DHCP server. In this situation if the IP helper table is not configured, the broadcast sent by client will not be forwarded to the other  subnet.

• Ports: 66, 67 and 4011 should be open for IP assignment and WDS file download.

• Machine reboots the moment WINPE screen appears Enable command prompt in WINPE and open CMD by hitting F8 once WinPE initializes. Make sure machine has an IP address and the HDD is Setting detected. Command which you can run here is IPCONFIG and DISKPART. DISKPART will confirm the presence of storage while ipconfig will confirm network connectivity.

• Collect SMSTS log to see the detailed error and troubleshoot accordingly.

• Once you see the TS execution has started, we conclude PXE boot is working

Sunday, 28 August 2016

SCCM Prompt Query to find Machine Name Using MAC address

During the OSD deployment you may faced issue with known machine in SCCM database. Even thought you deleted the machine, somehow the MAC address register in SCCM database in different name.

Below is the prompt query which helps to find computer name using MAC address.

select distinct SMS_R_System.Name, SMS_R_System.MACAddresses from  SMS_R_System where SMS_R_System.MACAddresses = ##PRM:SMS_R_System.MACAddresses## order by SMS_R_System.MACAddresses

Wednesday, 1 June 2016

WSUS sync fails with HTTP 503 errors

During the SCCM 2012 Migration, as soon as we complete, we probably get this error where number of SCCM client is high.

Error on SMS_WSUS_SYNC_MANAGER component

Message ID: 6703
WSUS Synchronization failed.
Message: The request failed with HTTP status 503: Service Unavailable.
Source: Microsoft.UpdateServices.Administration.AdminProxy.CreateUpdateServer.

When you attempt to open Update Services on the WSUS server you receive the following error:

error: Connection Error
An error occurred trying to connect to the WSUS server. This error can happen for a number of reasons. Please contact your network administrator if the problem persists. Click the Reset Server Node to connect to the server again.

In wsyncmgr.log you will get the below error,

Sync failed: The request failed with HTTP status 503: Service Unavailable.


In this situation, the most likely cause is that the WsusPool Application Pool in IIS is in a stopped state, as shown below.


Also, the Private Memory Limit (KB) for the Application Pool is probably set to the default value of 1843200 KB.



If you encounter this problem, increase the Private Memory Limit to 4GB (4000000 KB) and restart the Application Pool. To increase the Private Memory Limit, select the WsusPool Application Pool and click Advanced Settings under Edit Application Pool. Then set the Private Memory Limit to 4GB (4000000 KB).

After the Application Pool has been restarted, monitor the SMS_WSUS_SYNC_MANAGER component status, wcm.log and wsyncmgr.log for failures. Please note that it may be necessary to increase the Private Memory Limit to 8GB (8000000 KB) or higher depending on the environment.

Access content directly from distribution point - SCCM 2012

Microsoft introduced the new content library, the idea is to save space by saving all files in a library but only save identical files once, and refer to the location for all other instances of the file. The idea is good, but it comes with a price. All content stored in the library must be extracted during installation. This slows down the deployment meaning all files will have to be downloaded by the client.

If you want to change this and store your content in a share, you can. Please be aware that this has a cost in disk space.

On all your content in the task sequence meaning packages, boot, images, drivers even the configuration manager agent, select “copy the content in this package to a package share on distribution points.”




At this point you will start to see package shares (eg smspkgc$) start to appear on the distribution points, just like they would in SMS & SCCM ‘07. Once all of the packages have had the above option enabled, open up your task sequence deployment (aka advertisement) and on the Distribution Point tab you will now see an additional option in your drop down box:

Of course you should have a think about and understand the effect this is going to have, for example this may used up to double the amount of storage space for each package on your DP as the files will be stored in the Content Library as well as the Package Share location.

Monday, 14 March 2016

Error - Cannot create NAL path for the distribution point


Sometimes distribution point unable to process the distributed package and state as waiting to install package for long time.

And when you check the distmgr.log you get the below error,

Error - Cannot create NAL path for the distribution point

That’s the error, the distribution manager component is trying to create the folder using a wrong provider.

Solution

Now  The NAL providers are stored in Registry and all 4 providers (LOCAL, MSWNET, NWNDS, NWBIND) was found the HKLM\Software\Microsoft\NAL\Providers\Active Orders key. And you will discover that the HKLM\Software\Microsoft\NAL\Server\Connections\Operational Active Order was missing an important value  and have only LOCAL.

added MSWNET to the list and restart the SMS_executive service.

Refresh the package from SCCM Console and monitor the distmgr.log.

Thursday, 10 March 2016

Difference between Obsolete and Inactive Clients

Obsolete Clients

Obsolete client s are those that have been replaced by new ones. This usually happens during refresh OS deployments where the hardware stays the same and thus the hardware id is the same but the SMS GUID changes because the OS has been reloaded or the GUID is regenerated for another reason but the hardware remains the same.

Reasons -
1. hard disk swapping
2. Renaming machines
3. Reimage OS
4. Reinstalling SMS/SCCM agent on the machines without proper uninstall.

Inactive Clients 

Inactive client s are those that have not been discovered recently by the heartbeat discovery. The definition of recently is defined in the delete task as a number of days. Please note that obsolete client s are also marked inactive.

Reasons-
1. Offline machines
2. Machines having DNS issue/No name resolution
3. Machines are in inventory stock

Clean Up Inbox !




  • Compsumm.box – This is for component summarize messages.  If you have old stuff, it may not be relevant any more so remove the files.
  • CIAMgr.box – Configuration items, probably related to patches but perhaps for other things.  If the files are older than a week, they have probably been forgotten and can be removed.
  • Auth\dataldr.box\badmifs – Hardware inventory that was bad for some reason.  Often times the bad file will be a temporary thing and the system will self correct, leaving files behind.  Once you have investigated and solved the reason it is bad, feel free to remove the files.
  • Hman.box – Don’t touch stuff in the subfolders, but if files in the root are old, site communication probably had a hiccup at some time and the files can be removed.
  • Sinv.box\badsinv – Software inventory gone bad, similar to the dataldr.box\badmifs.  Remove files once any investigation is done.
  • Statmgr.box – These are status messages and old files can be removed as they are probably no longer relevant.
  • Auth\statesys.box\corrupt – Old status messages here should be removed .  They are probably out of date anyway.
  • Auth\ddm.box\regreq\bad_ddrs - These are discovery records that couldn't process for some reason.
  • Colleval.box - old .CEP files may become orphaned and can be safely deleted if older than a week

🔍SCCM (MECM) RAS Assessment

  SCCM (MECM) RAS Assessment – Comprehensive Checklist 1️⃣ Site Infrastructure & Core Health ✔ Site Server Component Status Site c...