Another interesting topic I have heard come up has been which domain controller should you run your adprep commands? The short answer:
adprep /forestprep = Schema Master
adprep /domainprep = Infrastructure Master
adprep /domainprep /gpprep = Infrastructure Master
adprep /rodcprep = Any domain controller
So all of the adprep commands should be run on specific servers except the /rodcprep command. The reason for this is that the adprep / rodcprep command is actually a remote command so that any server it is run from will reach out to the the domain naming master and forest and the infrastructure operations master to complete it's actions. If these operations masters can not be reached from the server from which you run the command the adprep /rodcprep will fail.
To check where your FSMO roles are in your domain you can run the following command from a Windows 2008 or higher server:
netdom query FSMO
This command did not exist on Server 2003 by default. To install netdom.exe on Server 2003. You will need to install the "Windows Server 2003 Support Tools" before netdom.exe can be used.
Here are the best practices and further information from. Microsoft's Technet