Computer naming conventions are like creating an Active Directory hierarchy – there is no wrong or right. Its more about what best suits your current and future needs. Over the years my naming conventions have evolved and below I will document my currently preferred method. First we will look at the technical constraints when naming them, and what characters I recommend using.
Technical Constraints
Please keep in mind there are technical constraints when dealing with both NetBIOS names and DNS names. Because of this i would recommend staying within the constraints of DNS so that your NetBIOS and DNS names are the same.
NetBIOS |
||
Minimum length | 1 | |
Maximum length | 15 (in Windows) | 16 characters by default but Windows uses the last character to depict the NetBIOS suffix. |
Allowed characters | abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 plus (+) minus (-) equals (=) brackets ([ ]) comma (,) tilde (~) colon (:) exclamation point (!) at sign (@) number sign (#) dollar sign ($) percent (%) caret (^) ampersand (&) apostrophe (‘) parentheses (()) braces ({}) underscore (_) period (.) |
The name cannot start with a period (.) |
Disallowed characters | backslash (\) slash mark (/) colon (:) asterisk (*) question mark (?) quotation mark (“) less than sign (<;) greater than sign (>;) vertical bar (|) |
|
DNS |
||
Minimum length | 2 | |
Maximum length | 24 | |
Allowed characters | abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789minus (-)period (.) |
The name cannot start with a period (.) |
Disallowed characters | backslash (\) slash mark (/) colon (:) asterisk (*) question mark (?) quotation mark (“) less than sign (<;) greater than sign (>;) vertical bar (|) |
The above information was retrieved from RFC, Wikipedia and Microsoft.
My Preferred Naming Convention
Here is a computer naming convention I have used in the past.
Clients:
X-YYYYYYYYYYYYY
X = D for desktop or L for workstation, T for tablet or V for virtualised client.
Y = Serial number of the hardware. We retrieve details from BIOS using WMI at the time of computer build. If its longer than 15 characters it will get trimmed from the right, and remove any spaces. (VMware have spaces in their serial number)
Examples:
D-HHD741S – Dell Desktop
L-2CE12707GF – HP Laptop
Server:
XXXYYYYZZ
X = 3 digit international airport code (if they dont have one we will apply common sense)
Y = Description. I.E. EXC for Exchange, FS for File Server, SCCM for System CenterConfigurationManager, SPW for SharePoint Web server, SPA for SharePoint Application server.
Z = incremental number to distinguish similar servers.
Examples:
Other Common Naming Conventions
Below are common naming conventions that I have seen in the past. They may have worked well in the past but with automated deployments its unnecessary to have this information in a computer name:
- (location)-(username)
- (username)
- (asset-number)
- (location)-(model)-(incremental-number)
Keeping Track
In our active directory environment, we use a logon VBScript to add the users name to the Description field programatically to help our service delivery team identify machines. Refer to my other article regarding this script here.
References
Naming conventions in Active Directory for computers, domains, sites, and OUs
http://support.microsoft.com/kb/909264
Internet Host Table RFC
http://www.ietf.org/rfc/rfc952.txt
Wiki – NetBIOS
http://en.wikipedia.org/wiki/NetBIOS
Limits in NetBIOS
http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=81647&site_id=1#import
Great to post this content at single page !!
Thanks – your comments are very much appreciated!
I do find that a lot of blogs out there fail to give end-to-end blogs so I try my best in that regard.
Cheers,
Ivan
Do you also get the information if it’s a desktop, laptop from WMI during computer build. Could you please share a script. Also what do you use for deploying computers, SCCM, MDT…?
Hi CypherBit,
I use WMI to retrieve the relevant information. I will make a new post of all the scriptlets that I use frequently so you can see them.
We use System Center 2012 in our environment and deploy using a HTA.
Cheers,
Ivan
Hi CyperBit, please have a look at this post (https://ivan.dretvic.com/2012/10/common-wmi-queries-i-have-found-useful/) to see the simple WMI queries I run during OSD build – I can go into a lot more detail if you like.