You could enable remote desktop on the machines at home ( if they are
XP-Pro ).
If they are XP-Home, then look at one of the VNC versions.
Then, on the router, you must forward the remote desktop port ( 3389 by
default ) to the internal PC you want to access, eg 192.168.0.2.
Now, from your work PC, you can use the remote desktop client to connect
to your Public ( external, ISP assigned ) IP address. If you don't know
this address, look in the router status page, or from a home PC visit
www.whatismyip.com.
If your external IP address is dynamic and changes at the whim of your
ISP, then you will need to register with a Dynamic DNS service. This will
give you a name you can use instead of an IP address. You need to run a
small program on one of your internal home PCs that continually monitors
your external IP address and updates your DDNS record, thus keeping your
registered name pointing at your changing IP address. The tool I used was
DirectUpdate:
http://www.directupdate.net/.
If you want to be able to access more than 1 home machine via one external
public IP address, you will need to change it's remote desktop port:
http://support.microsoft.com/default.aspx?scid=kb;en-us;306759
Then on the router forward the new port number ( 3390, perhaps? ) to the
second machine.