pretty sure it just uses a tracert function or something along those lines... someone will probably give a step by step tut on how it works