Ubuntu articles

Connect two computers using Firewire

One of the computers was running Arch Linux, the other one was running Ubuntu. In the computer running Ubuntu I first enabled the firewire module:

sudo modprobe eth1394

To find out what's the name of the firewire device we just need to run this:

ifconfig -a

It will return a list of available network devices. What we're interested in is the Firewire connections. In my case it looked like this in the Ubuntu computer:

eth1      Link encap:UNSPEC  HWaddr 00-1E-8C-00-01-47-93-30-00-00-00-00-00-00-00-00  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

So its network interface name was eth1. In the ArchLinux computer the network interface name was firewire0 instead.

Next is to assign IP addresses and network masks to the computers. Each one must have a different IP address, but the same network mask.

The Arch Linux computer will have the IP, so we ran this on its terminal:

sudo ifconfig firewire0 netmask up

And we do this in the Ubuntu terminal:

sudo ifconfig eth1 netmask up

To make sure it works, we can type this in the Ubuntu terminal:

ping -c 2

The output should be something like this:

PING ( 56(84) bytes of data.
64 bytes from icmp_seq=1 ttl=64 time=0.215 ms
64 bytes from icmp_seq=2 ttl=64 time=0.153 ms

If it does not work, remember you need to connect the cable!

Once you are able to ping, you can now proceed to copy files between computers by using for example ssh, if one of them has the ssh service enabled. Other options are rsync, scp or software like FileZilla so that it's just a matter of dragging files around.

I've heard of people enabling FTP which might be faster, and there are probably tons more methods but I haven't tried them. Read about them in the comments for this great blog post by Aaron Toponce, where I learnt how to enable the network interfaces --thanks, Aaron! :D