What type of network did you tell vmware to give the linux machine? It seems to me that there was 3 types, one where your vm machine had its own ip address, one where it shared one with your windows machine and another one I can't remember, The one I always used was where your vm machine had its own ip address.
You might want to try setting the ip's as static to get it working right to begin with then try the dhcp. Just make sure you have the same subnet mask and everything on both machines, like make the linksys router 10.0.0.1 subnet 255.0.0.0 and the xp machine 10.0.0.2 subnet 255.0.0.0 and the linux machine 10.0.0.3 with the subnet of 255.0.0.0
see then if you can ping each machine.