I had some issues getting distributed transactions to work between a SQL 2000 on a Windows 2003 machine and a SQL 2000 on a Windows 2000 machine. The above article supplied the solution. MSDTC is locked down harder in Windows 2003 and SQL 2000 will not be able to utilize it by default for external communication.

Note that you can skip the part about VPN configuration in Windows if you have a hardware configured VPN. This is what I had to do to get it to work:

Step Four: Enable NETBIOS Across All MachinesAlternatively, you can add entries in the HOSTS file (c:windowssystem32driversetc) so that the machines can be pinged by server name. See the comments in the HOSTS file for more information on how to accomplish this.

Step Five: Disable RPC Security for MSDTC Service on SQL Server
This step requires accessing and modifying the registry. If you have not already done so, it is highly recommended that you back up the registry at this time.
1. Click Start, click Run, type in "Regedt32", and click OK.
2. Select HKEY_LOCAL_MACHINE, then SOFTWARE, then Microsoft.
3. Right-click on MSDTC, point to Add, then select DWORD Value.
4. Rename the key from the default New Value #1 to TurnOffRpcSecurity.
5. Double-click the new key and change the value to 1.
6. Close the Registry Editor and restart the SQL Server
-------------