Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
User Journal

Journal JWSmythe's Journal: Graphical Traceroute for Servers? 1

I've been (slowly) working on a project to do graphical traceroutes from multiple points. Effectively it makes a map of the Internet between points I'm interested in.

    It does a standard traceroute from *nix machines, and stores the traceroute information in a database. To render it graphically, it uses GeoIP to guess the location of each router it encounters, and Google Maps with GMapEZ2 to render it with colored lines and informational markers.

    In the database, there are 3 classes of source/destination points.

    1) Source Only - The machines I have my monitoring client on. These would generally be on private networks (like my house)
    2) Destination Only - Places that I have absolutely no control over. For my purposes, I use the root nameservers.
    3) Source and Destination - Publically reachable machines with the monitoring client, which can also be a traceroute destination.

    It makes pretty maps. Sometimes they're very useful maps.

    Unfortunately, GeoIP isn't perfect. I keep all the router information in a separate table, so I can correct the GeoIP information. Otherwise, an awful lot of routes go through Kansas (center of the US). I have to do a LOT of guesswork to place the routers. I'm only trying to place them in the right city. Thanks to the wonderful world of dynamic routing new routers are popping up all the time. With about 3 type 3 stations, and 13 type 2 stations, I ended up with over 1000 routers. I was putting a huge personal effort into figuring out where these routers are. Some are easy enough, because they have something in the hostname that I can guess from. I'd have to spend a lot of time keeping up with the misplaced routers.

    When I initially put it together, I set it up to have a common time marker. A master process would connect over ssh, and start the client process with a timestamp. A client would take about 5 minutes to complete all it's traceroutes, so obviously that timestamp wasn't an exact reflection of the time. I look for a common timestamp when I build the graphs though. Now, I may have machines that I can't ssh to. They'll have to be able to work on their own, giving me timestamps whenever they run.

    There's a bug in my code too. The client process can get hung up on something, and never terminate. That will leave a client machine with an awful lot of processes running. I didn't really want to kill the process, so I could still have an accurate picture (hopefully).

    I don't really have the time to continue working on this right now. I have to assume that someone else has had the bright idea that I had, but I can't seem to find one anywhere. With the above explanation, you should understand what I was trying to do. Has anyone seen any projects similar?

This discussion has been archived. No new comments can be posted.

Graphical Traceroute for Servers?

Comments Filter:
  • I've played around with a similar system I use for graphical traceroutes. I don't bother doing geoip but just provide a topological map.

    You can have a look at http://tr.meta.net.nz/ [meta.net.nz].

    Feel free to email me (google for Perry Lorier and you'll find my email) :)

This login session: $13.99

Working...