I was recently trying to play some old game (Starcraft, Warcraft 3, and others) in LAN with some friends through the hamachi VPN system. All attempts were unsucessful due to the fact that the broadcasted UDP packet weren’t sent over the VPN interface but only in the local LAN.
To solve this we just had to manipulate the routing table of the systems.
After connecting to the hamachi VPN just do these commands as root user
OS X: as long hamachi uses 5.x.x.x for his nodes
route add -net 255.255.255.255 22.214.171.124
Linux: where ham0 is the hamachi interface. There are 2 options available, test it out that works for you
route add -net 255.255.255.255 netmask 255.255.255.255 dev ham0
sudo route add -n 126.96.36.199 gw 188.8.131.52 dev ham0
as suggested from Blake Lightly
This will redirect all the broadcast packets, maybe it can interfere with some other program, but as long as you want some time off to play it works great. To clear the modification to the routing table we didn’t do anything else then disconnecting from the hamachi VPN, the system handles the disappareance of the interface removing every involved route.
* Linux has no other setup then just starting hamachi. This all was tested between a Mac and a Linux systems
If someone can test other games and maybe help on the linux problem that would be great.
Hope this helps!
[last update 2 May 2010]