I had a SQL Server 2005 box have as part of it's initial configuration it's "computer name" changed by our IT team, AFTER SQL Server was installed. The box subsequently began to be loaded with applications and ran fine for a year.
Today however, I wanted to add a replication job and kept getting an error popping up with:-
SQL Server replication requires the actual server name to make a connection to the server. Connections through a server alias, IP address, or any other alternate name are not supported. Specify the actual server name, 'SERVERNAME-OLD'. (Replication.Utilities)
But I'd never heard of SERVERNAME-OLD\INSTANCE. A bit of digging around and finding that the machine used to go by that name. It seems the machine name is stored in a system table in the database server, at point of SQL Server installation.
To fix this, execute against the master database:-
spdropserver @server='SERVERNAME-OLD\INSTANCE'
spaddserver @server='SERVERNAME-NEW\INSTANCE'
And restart the SQL service instance.
Hey presto, replication works once more!