A BitTorrent tracker is a piece of software that usually sits on an Internet server. The tracker knows the IP addresses of torrent clients that have a particular piece of content so when a user connects to it (with uTorrent, for example), it’s able to put those users in touch with each other.
The BitTorrent system is robust and can rely on DHT and PEX to provide peers if dedicated trackers aren’t available. However, having a working tracker is always nice but sadly they aren’t always readily available. The reason is often that stand-alone trackers cost money to run but generate no revenue. They’re also targets for copyright holders.
Finding trackers isn’t always easy, so seven years ago TorrentFreak was pleased to report on TrackOn, a site that tracked public torrent trackers. It was a great resource for people who wanted to find a stable tracker to add to their own torrents. Sadly, after its owner reportedly passed away, the project disappeared.
Now, however, newTrackon has been born to pick up where TrackOn left off. It’s the creation of student Miguel Ángel who informs TF that an interest in torrents from his teenage years inspired him to put something back into the community.
“I’ve been using torrents since I was 15 when some friends introduced me to private Spanish trackers. Lately, however, I’ve been more interested in public sites,” he says.
“The Bittorrent protocol really interests me from the technical side; it is one of the most complex, resilient and decentralized file sharing systems.”
Miguel took a keen interest in the original Trackon when it was created and even exchanged emails with its creator, Uriel.
“Now that I’m in college and have acquired some basic skills, I thought it would be a great side project to revive it, improve it, and put it online again,” he explains.
One of the main problems is that the original Trackon used Google App Engine which can only process HTTP communications. Most public trackers these days use UDP, so a rewrite was necessary to make newTrackon run on a Linux or Windows machine in Python.
“I think newTrackon is really useful for providing info about the trackers; not only their stability but the countries where they are hosted and also the networks, for privacy concerns. All the info displayed in newTrackon is public, anyone with minimal networks knowledge can get it, so I’m not exposing anything,” Miguel says.
NewTrackon provides a list of trackers with more than 95% uptime so anyone with a desire to make a torrent and add a working tracker can find one up to the job. But how does newTrackon find and test them?
“The program is just a bunch of Python scripts that manage a simple SQLite database which contains all info of the trackers. Every 30 seconds, all trackers that are outdated (the last time updated is bigger than the update interval) are checked with a random hash.
“The update interval is a time set by the tracker about how frequently the client can connect to it looking for more peers. The response is then parsed and all info of the trackers is updated (IP, country, etc.),” he adds.
One of the great things about newTrackon is that users (or indeed operators) of public trackers can add them to the site’s database.
“When you upload new tracker(s), the program first checks that it is not in the list or resolves to an IP already in the list. Then, it puts it in the incoming list and starts checking all the trackers submitted. It takes around 15 seconds for each tracker to be accepted or discarded from the list.”
Looking ahead, Miguel has plans to improve the project.
“In the to-do list there are already some things like IPv6 tracker support and comparison of tracker features. Anyone is welcome to contribute in GitHub, with new ideas, code improvements or bug reports,” he concludes.
newTrackon can be found here.