How do people feel about reusing names in a naming scheme? If you replace a computer should the new computer take the name of the old computer? If you do reuse names, do you wait until you have run out of names before reusing them? Should names follow computers or their roles?


Usually I think it's better to not reuse names.

Here's an example. If you retire the server 'aardvark', later replace it with a new server, and later still find a program which references 'aardvark' which is failing, you don't know if it's a problem with the program, or with the new aardvark. If you called the new server 'aaron' instead, you instantly know that it's the program which needs looking at. On the other hand, if the program says 'aaron', then you know that it's something on aaron.

Another example is in the migration process.

Plug in aaron, and install it, and get the services working. Then you take your nameservice alias for each service, and switch them from aardvark to aaron, and test that it works ok. At the end of the day, you can then leave both machines running until you're happy that it's ok to finally retire aardvark.

  • "If you called the new server 'aaron' instead, you instantly know that it's the program which needs looking at. On the other hand, if the program says 'aaron', then you know that it's something on aaron." Logic meets window? – d-_-b Oct 31 '12 at 9:04

This is one of the reasons why using significant or cool names is a bad idea overall. If you had named your boxes foo01, foo02, foo03, ..., fooNNN you would have never developed any kind of attachment to your names or naming scheme(s).


The concept of "running out of names" seems completely foreign to me.

Would you provide a sample of how that might happen?

  • DNS has a limit of 64 characters per component... 90 or so characters valid in a hostname... a large but finite number of names before you have to start using subdomains. – womble Nov 29 '09 at 22:44
  • 2
    64 characters, and you can use letters and numbers, so it's about 36^63*26 (presuming you can't start with a number): finite, yes - but you're never going to hit it if you stick with just hostnames. Even if you say that you can only use 8 or 10 characters as the hostname, that's still 36^7*26 or 36^9*26 – warren Nov 30 '09 at 0:20
  • 36^7 is 78,364,164,096 – warren Nov 30 '09 at 7:12

Personally I don't like reusing names. I have come across servers where they're named foo, then someone buys another one to cluster with it, and it becomes foo01 and foo02.
This seems uninventive to me.

I also don't like reusing names for replacements, say bar dies and the new one gets called bar.
Perhaps it's bad karma?


Workstation names: never re-use. We have a naming convention that includes the year and month a PC was acquired, so when a machine is replaced with a newer one, the new one will always have a different name. (Personally, I hate including the user's name as part of a PC name, since it means you have to rename it to move it to a different person, which happens fairly frequently for us.)

Server names: in a couple of cases, we have re-used these, but we try to avoid it. We've had couple of machines that were replaced with near-duplicates and we've kept those names. Otherwise, we have a very generic naming convention, so we don't really care whether a server is forv-sdc-01 or forv-sdc-17


One reason to not reuse names is to keep up to date with how applications and services need to be configured when a host name changes - or rather, verifying that this is not an issue (and fix it if it turns out to be one!).

For instance, any application dependent on a named host should probably be configured against a generic service CNAME and not a specific host name - but this might not be considered or taken into account until this kind of problem appear, and some services like SSL might not even allow this or require a manual routine to be in place for any future name change.

Staying ahead of and avoiding these problems by provoking and fixing and/or documenting them under controlled circumstances would be key to being proactive and designing a robust and modular environment ^^


In my old job, we named desktops generically and did not re-use names. The convention was department_number-type-xyz (where type was a few letter description of what it was: MO for main office, BUSOF for business office, CLASS for classrooms, etc). Servers and Linux machines got "cool" hostnames, which were generally retired when the machine was replaced.

Generally, I think it is best in a medium-to-large environment to associate names with the machines and retire them together. A CNAME in DNS can be used to point services to the right machine. That way, the machine that used to run www.example.com can be used to run syslog.example.com without having to be confused as to why the web server isn't running on www anymore.

For small installations, like home use, do whatever you want. My naming scheme at home started with places I've seen tornadoes, and when that well ran dry, I started using memorable cities from storm chasing trips. I don't re-use names, but that's a personal preference.

TL;DR: Tie names to specific machines and use generic cnames for services.


I agree with the other responses for changing the names. If you are having an issue with deciding what to rename the new machine(s) it sounds like more of an issue with imagination than a migration issue.


I think you should reuse the names if the machine is attached to a user.
For example, we name our computers using the full name of the person who is the primary user. This makes it easy to find the computer and connect to it for diagnostics etc. Also, it does not require you to walk the user through cmd -> ipconfig to get the IP address. It also make inventory a breeze.
For servers, there is no attachment to the name unless users are used to UNC path names... How many of your users use UNC paths regularly?

  • 2
    This naming scheme works adequately for small deployments, but adds complication in an environment larger than ~15 users. You may run into issues where: - Workstations are re-allocated to different users, and have to be renamed, or left out-of-step with the convention - Users become attached to a particular workstation and are more likely to treat it as a personal machine, than a business workstation. "This machine is my machine". - Any machine can quickly obtain a full list of users in your company, straight off the network. Useful for social engineering + account attacks. – Chris Thorpe Nov 29 '09 at 20:38
  • 2
    In our organization of 200+ workstations, it works just fine. Yes, we do have to rename occasionaly, but it saves us having to lookup the user's machine every time we want to do remote support on it. In our organization, their machine is their machine, though the company retains ownership of it. They are responsible for what is on it as they are the only ones using it. Without access to your WINS/DNS server how would an attacker gain this knowledge? If they have that access, then you are already had... – Scott Lundberg Nov 30 '09 at 0:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.