[vox-tech] Bittorrent for Woody howto

Bill Kendrick vox-tech@lists.lugod.org
Sat, 22 Nov 2003 04:00:34 -0800


So I was asked to set up BitTorrent on a Debian box here at home, and
thought I'd share the simple steps it took to get it up and running.

BitTorrent is a peer-to-peer file sharing doohickey, that actually
shares between numerous other peers.

If I understand correctly, you end up getting 'pieces' of the file in
question (say, the latest Mandrake ISO), and while you're downloading
it, you're alos sharing pieces with other peers who want that same
file.

  http://bitconjurer.org/BitTorrent/


So to get it going for Woody, first we looked for a backport. ;^)
Ahah!  Backports.org had one!  Add this to /etc/apt/sources.list:

  # BitTorrent for woody:
  deb http://mirror.backports.org/debian stable bittorrent

Then a simple "apt-get update", followed by "apt-get install bittorrent".


It took a few minutes to figure out what the heck got installed.  It's
a number of programs named "bt-somethin'-or-other."


"btdownloadgui" sounded promising.  But D'OH!  It spat out an error
about libwxgtk2.3-python not being available, and that 2.2 in Debian
wouldn't cut it.

So, more Googling.  Came up with this for apt's source.list:

  # wxgtk2.4-python (for BitTorrent) for woody:
  # (See: http://mail.gnu.org/archive/html/gnue-dev/2003-05/msg00012.html)
  deb http://www.gnuenterprise.org/debian/ woody main

Then another "apt-get update" and an "apt-get install wxgtk2.4-python"...


We're on a roll!  Let's try to click a ".torrent" link somewhere.  The
Debian package should set up the MIME magic for you, so, e.g., Mozilla
should just work.  (I installed wxgtk after starting a download, and
futzed around with making the curses downloader appear in an xterm, so
I fooed with Mozilla's "Helper Applications" a little before finding
the wxgtk2.4-python backport.)


Ah, but what's this?  Such a slow download!  Less than 1K per second
at times!  Oooh yeah.  My download speed is directly affected by how
much I'm helping my other peers.

Time to punch a whole in the router!  I have an appliance, rather than
a Linux box, so I just used a lame little web frontend to allow
connections to port 6969 and 6881 through 6889 (see BitTorrent
website) to get through, and routed them to the machine that wanted to
run 'Torrent.

It looks like I can also set up "triggers," so that if a different
machine started making BitTorrent connections to the outside world
(LAN->WAN), then a hole would be set up in the other directions to the
appropriat emachine (WAN->LAN; specifically to the one running
BitTorrent).


This hole punching is necessary unless you have infinite patience.  A
download that had been running for a day and a half said it still had
12 hours left on it this morning at 1:45am.  I punched the hole
through to let the other peers in, and that 12hrs just ended 5 minutes
ago (3:45am) :^)


Well, that's it!  Hopefully someone finds this useful.  The whole
'torrent idea is quite neat.  The main purpose seems to be to allow
"infinite scalability" when a particular file gets popular suddenly
(for example, TheOpenCD was just on Slashdot... I wonder if they've got
a Torrent).



-bill!
Very happy Debian Woody user, thanks to backports ;)