Introduction: Transferring Files Over Your LAN Via BitTorrent

Sometimes you may need to transfer files over a network to several computers. While you could put it on a flash drive or CD/DVD, you would have to go to each computer an copy the files and it may take a while to copy all the files (especially with flash drives, most have bad read/write speeds) . An FTP server would also be possible, but it would not work well when several computers were downloading from it at the same time.
When you are using a lot of computers with large files, BitTorrent works best. Of course, you may not want to use a public tracker. Luckily, uTorrent has the option to act as a tracker. This Instructable only covers operating this on a LAN, but you can use port forwarding if you wish to share the files with people on the Internet. This is not covered in this instructable though.

When to Use this Method

BitTorrent is made for transferring large files to a large number of computers. If you only need to transfer files to a small number of computers or the files are very small, it is much easier and quicker to use a flash drive or other removable media.

Note: I will not be explaining the basics of BitTorrent in this instructable. Some previous experience is recommended. Also, this is meant for LEGAL use such as home videos or sending large amounts of your pictures to other home computers. I am not responsible if this is used in an illegal way or if you somehow mess up your computer or network.

Network Switch Picture by Wikimedia Commons user Zuzu

Step 1: List of Materials

First, you need to have a LAN (Local Area Network). It can be wired, wireless, or a combination of both. An Internet connection is only needed to download the BitTorrent client.
Each computer needs to have the following:
  • Connection to your LAN
  • a BitTorrent client
You can use nearly any BitTorrent client, but a for this Instructable I will be using uTorrent. The computers that do not have the files can use any client but the computer that will be used as a tracker should be uTorrent since I am not sure if other clients can also act as a tracker. Also, because of this, you can not use a Linux based OS for the tracker since uTorrent is not available for Linux. The client computers can still have Linux, you just need to use a different BitTorrent client.

Step 2: Stetting Up on Windows

Now you need to set up the computers. The BitTorrent clients should be installed on all the computers and the computers connected to the LAN.
This step only needs to be done to the computer acting as a tracker!
Then you need to give the tracker a static ip address. This step explains the setup for Windows, the next step for Mac.

Windows XP/2000/ME

1. Go to Network Connections in the control panel.
2. Double click on the connection used to connect to the LAN.
3. In the just opened Network Connection window, open the Properties.
4. In the next window, scroll down to Internet Protocol (TCP/IP), select it, and then click on Properties.
5. Now find the correct IP addresses you need to enter. Do this by going to command prompt and enter ipconfig. Then take this info and enter it into the window you opened in the step before. Be sure to select Use the Following IP address/ Use the following DNS server address. The default gateway is usually the DNS address as well. You can safely leave the Alternate DNS server blank.
6. Congratulations, you have a static IP address on your computer! If you ever want to get rid of it, just change the Use the Following IP address/ Use the following DNS server address to the automatic one.

Windows Vista

Unfortunately (or should I say fortunately :) ), I do not have a Vista computer. seems to have a tutorial HERE.

Step 3: Setting Up on Mac OS X

This step only needs to be done to the computer acting as a tracker!
Setting a static IP address for a Mac is much easier.
1. Open System Preferences and select Network.
2. Go to AirPort if you are on a wireless network or Ethernet if on a wired network. The Ethernet layout may look a little different, but it should be close enough to the AirPort.
3. Find out the current IP address of the computer and remember it.
4. Go to advanced and then TCP/IP and change the Configure IPv4 to Using DHCP with manual address.
5. Enter the IP address you had collected in step 3 and enter this in the field below it.
Congratulations! Your done!

Step 4: Creating the .torrent

Now you need to create the .torrent file that your clients need to be able to download the files. First you need to open your uTorrent client on the computer you configured in step 2 or 3. Then go to the Preferences and go to Connections. Here you need to write down the port used for incoming connection. Mine was 26670. Next got to advanced and change bt.enable_tracker from false to true. Then go to File > Create New Torrent or just hit Ctrl-N. You should get a new window and browse for the file(s) you want to make into a torrent. In the Tracker field, enter http://ip_address:port/announce. You can add a comment if you want and select start seeding. Now click on create and save as and save the .torrent file. Your computer should start seeding and you can now put the .torrent file on a network drive, flash drive, or use another way to transfer the .torrent to the clients.

Step 5: Port Forwarding

If you want, you can also port forward the port used by the client and give the .torrent file to friends where they can download your files (ie. home video, pictures). I can unfortunately not do this with my network at the moment. However, there are plenty of resources on port forwarding on the Internet that you could try out. Try searching google port forwarding router name. Good luck!

Step 6: Getting the Clients to Download the Torrent

Now you just need to get the .torrent file on each computer. I would recommend a flash/thumb drive or a network drive. Now you can start the torrent just like a normal torrent.
If you have any questions, please leave a comment an I will try to help. Just be aware that I may not be on Instructables often, so you may have to wait a while.


jh5637 made it!(author)2014-03-16

Didn't they just come up with BitTorrent Sync Beta to make this much easier?

matula made it!(author)2016-02-07

unfortunately it is not bulletproof. sometimes it just doesn't find a node, and it's hard to tell why.

YINGYING123 made it!(author)2013-08-11

I think one of the best solution to transfer files is Folder Transfer.It can transfer any data from PC to PC,from laptop to PC,or from hard drive to PC,etc via LAN or remote network.Even though you forget to bring the important document with you ,and you do want to share or download files from other PC,it can help you to achieve.

wkcs007 made it!(author)2012-02-17

hi sir, I've been wondering since a very long time if this is possible, (to share large files in LAN using bitTorrent. Thank you for so much. I'll will try it out.

But I have questions.
I am planning to use this to sync game folder, so that once the prime game source has patches/updates installed, the game folder would be seeded to all computers in a LAN, and eventually all computer will have the updated version. Now, if afterwards, the source is updated the second time, do the other computers in the LAN automatically redownload/update their file/folders to match the seed source? I was thinking of an automatic realtime folder copying to LAN but with the load distribution characteristics of the bitTorrent protocol.

second question,
If the case above is possible, could the prime source be set to be read only (not changed when the other computer is the LAN made changes to their folder)? This is to avoid the prime source being modified by malware or cheats... Thank you so much.

OCPik4chu made it!(author)2012-06-15

Torrents are not automatic so you would have to schedule the download (which Im not sure will work) or manually do it each time. In your case I would try a program called Delta Copy. It does a filewise comparison of a specified folder or folders and will upload any changes. You would set it up in a push format by installing the 'server' portion of the program on each of your target computers. Then setup schedules on your source computer to push the contents of your game folders out to each pc. It will support multiple schedules and destinations and because it only copies what has changed each iteration will not take very long. This is probably the simplest way to do this in a more 'automated' fashion without having to code something custom.