How do you use scp with IPv6 on a Mac?
March 22nd, 2010
You can do this:
ssh root@2001:1234::1 (example address)
but you can’t do this:
scp root@2001:1234::1:/tmp/file .
because scp parses this as hostname 2001 and file path 1234::1:/etc/motd, yielding an error such as this one:
ssh: connect to host 2001 port 22: Connection refused
The scp manpage addresses this problem for -L and -R arguments (you can use the -6 option on scp to force all addresses to be interpreted as IPv6), but it is silent about using IPv6 when copying files.
The trick is to use square brackets to delimit the IPv6 address, which on the Mac also requires escaping the brackets, thusly:
scp root@\[2001:1234::1\]:/tmp/file .