September 3, 2012

Setup Your Own Personal Torrent Server

BitTorrent Icon
BitTorrent is a peer-to-peer or P2P file sharing protocol used for distributing large amounts of data over the Internet. BitTorrent is one of the most common protocols for transferring large files and it has been estimated that peer-to-peer networks collectively have accounted for roughly 43% to 70% of all Internet traffic.
As of January 2012, BitTorrent has 150 million active users according to BitTorrent, Inc.  At any given instant BitTorrent has, on average, more active users than YouTube and Facebook combined.
In our today's  article you will be able to setup a BitTorrent Server all by your self and it is very easy pictorial you can follow.

A BitTorrent server or in other word Torrent Tracker Server basically is an http-Server that collects all clients ip addresses into pools sorted by one of the request strings parameters and answers all other clients that specified this exact same parameter a list of all other recent clients.

The following is a list of notable software for running a BitTorrent tracker.
Tracker Programming Language License Operating System Support Description
MLDonkey OCaml GPL Cross-platform MLDonkey has a built in tracker and announce service.
MonoTorrent C# MIT Linux, Mac, Windows Uses Mono for cross-platform support (.NET)
Opentracker C Beerware FreeBSD, Linux, Mac, Solaris, Windows,… Uses libowfat,[4] performs well even on embedded hardware. Only requirement is a POSIX compliant OS.
PeerTracker PHP GPL Cross-platform Extremely lightweight and efficient BitTorrent tracker. Supports SQLite3, MySQL and soon PostgreSQL for storage.
PHPBTTracker PHP GPLv2 Cross-platform A simple BitTorrent tracker which supports tracking basic statistics. Supports MySQL backend database.
RivetTracker PHP GPLv2 Cross-platform Based on PHPBTTracker, it is a slightly more complicated but still simple to use BitTorrent tracker which supports tracking basic statistics. It has a more polished user interface than its predecessor which splits torrents up into pages and uses icons from the Tango Project. Supports MySQL backend database. Support for RSS 2.0 spec.
TBDev Tracker PHP GPLv2 Cross-platform A fully featured torrent tracker originally based on the final version of TorrentBits. The user interface is very polished, and is used by many private tracker sites.
μTorrent C++ Proprietary Freeware Mac (Intel only), Windows / Wine Does not have a web interface or list of hosted torrents; it is not designed for secure or large-scale application.
Vuze Java Disputed/GPL Linux, Mac, Windows Vuze (formerly Azureus) has a built in tracker.
XBT Tracker C++ GPL Linux and Windows Uses MySQL for data storage, lightweight tracker
Hefur C++ MIT Linux Standalone, no database required. Very simple to setup.

.torrent files require a tracker to keep track of who (peer clients) has which piece of a particular torrent file. Azureus is a popular Java-based BitTorrent client with an inbuilt tracker.
You will require the Azureus Vuze client. You can download it from If you don’t have the Java Development Kit, let Azureus download it for you. Azureus prevents basic users from creating a torrent tracker, so you’ll need to switch to the advanced user mode. Under View, select Advanced, and then in Mode, select Advance User proficiency.
For your torrent to work, you have to create a server (tracker). To do so, navigate to Tools > Options > tracker >Server. If you have a static IP, key it in. If you’re on a dynamic IP, things are a little more complicated—you will have to use Azureus along with dynamic DNS services such as DynDNS, Discoveryvip and No-IP; register with them free of cost to use them. Once that is done, key in the dynamic host name given to you during registration. You will also have to keep the dynamic DNS client running in the background while your tracker is up.
Azureus then automatically checks if the dynamic IP is being resolved or not. Enable the tracker using the checkbox, and let it use the default 6969 HTTP port. To let others host their own torrents using your tracker, turn on Enable External Torrents. You can even force these external torrents to use the default port by selecting the appropriate option. The tracker also lets you enable the UDP protocol, which will trouble your server less than HTTP, but you won’t be able to control clients’ download ratios—beware of leechers!
The Windows XP SP2 Firewall will require you to forward the ports used by Azureus. The simplest way to
do it is by adding an exception for Azureus in the firewall. Switch your Control Panel to Classic View and
open Windows Firewall. Under the Exception tab, select Add Program. Browse to the directory where Azureus is installed, select Azureus.exe, and apply the changes.
Creating The Torrent:
To create a torrent, use [Ctrl] + [N] or go to File > New Torrent. Make sure that “Azureus Embedded Tracker” is selected; you can also share a directory in accordance with your requirements. On the third page of the “Make a torrent” interface, don’t forget to check the option to open the torrent for seeding when done.  Azureus will then create the .torrent file in the directory selected.
Distributing The Torrent:
Completing all the above steps properly will make Azureus seed the file. Seed your file for a long time to prevent peers from being left with incomplete files. Finally, you can distribute the torrent to your friends using e-mail or IM. If you’re releasing your personal videos or an amateur film using torrents, don’t use your PC as a tracker—it won’t be able to handle the traffic. Instead, opt for an external tracker service or a server instead. So keep sharing and make the world free.