grahl/ch

Quick ad-hoc file transfer with IPv6

Nowadays I rarely use wired networking at home. However, when you want to transfer 50GB or more, the round-trip over the wireless router can take several hours to half a day. 

The easiest solution is of course to attach two ethernet cables to your home router and be done with it. Depending on your setup, though, that might be cumbersome with a desktop in another room or not having 10m or more of ethernet cabling available. So, in those instances it makes sense to dust off a crossover cable or a switch to connect the devices together.

In IPv4-land one would now have to configure a local network with static addresses in the 192.168.0.0/16 or 10.0.0.0/8 range. With IPv6 enabled devices, however, such an address is already present in the form of a link-local address. The following example shows how to discover devices on the local network with a broadcast ping and then how to connect as usual via interface em1:

$ ping6 -I em1 ff02::1
PING ff02::1(ff02::1) from fe80::f2de:f1ff:f1ff:f1ff em1: 56 data bytes
64 bytes from fe80::f2de:f1ff:f1ff:f1ff: icmp_seq=1 ttl=64 time=0.079 ms
64 bytes from fe80::250:8dff:8dff:8dff: icmp_seq=1 ttl=64 time=0.393 ms (DUP!)
$ scp myfile user@[fe80::250:8dff:8dff:8dff%em1]:/home/user/target