About the Tor Map Project
How it works
Daily some scripts download information from the authoritative directory servers. This information is parsed and added to a database. The node's location is guessed from the IP address.
This information is then used to generate the maps that are available at this site. That's really about it.
Software Used
Some custom scripts, written in Python do the bulk of the real work.
The maps -- both the static ones and the browseable one -- are created using UMN MapServer. The data is stored in a PostgreSQL database with the PostGIS extension.
There are two sources for the location data: The first line is MaxMind's GeoLite City database, which I access via their python API. If that fails to find a match, I fall back to using the API from hostip.info.
This website (except for the dynamic map) is powered by Django.
Thanks
Special thanks to Steven Murdoch for providing a script that got me started with parsing out router information. He also gave me a pointer to the GeoLite database.
Thanks to everyone in #tor and #remops for your comments and suggestions.