EDIT: I've tried something different based on searching around. This is now my /etc/network/interfaces:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# This line makes sure the interface will be brought up during boot
auto eth0
allow-hotplug eth0

# The primary network interface
iface eth0 inet static
    # dns-* options are implemented by the resolvconf package, if installed
    dns-search localdomain
    # up commands
    up ip addr add dev eth0
    up ip -6 addr add 2001:1af8:4100:a00e:4::1/64 dev eth0
    up ip -6 ro add default via 2001:1af8:4100:a00e::1 dev eth0

Then ip addr show eth0 outputs:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether d4:ae:52:c5:d2:1b brd ff:ff:ff:ff:ff:ff
inet brd scope global eth0
inet scope global secondary eth0
inet6 2001:1af8:4100:a00e:d6ae:52ff:fec5:d21b/64 scope global dynamic 
   valid_lft 2591870sec preferred_lft 604670sec
inet6 2001:1af8:4100:a00e:4::1/64 scope global 
   valid_lft forever preferred_lft forever
inet6 fe80::d6ae:52ff:fec5:d21b/64 scope link 
   valid_lft forever preferred_lft forever

further ip -6 ro outputs:

2001:1af8:4100:a00e::/64 dev eth0  proto kernel  metric 256 
fe80::/64 dev eth0  proto kernel  metric 256 
default via 2001:1af8:4100:a00e::1 dev eth0  metric 1024 
default via fe80::2d0:ff:fe9e:1800 dev eth0  proto kernel  metric 1024  expires 1627sec
default via fe80::2d0:2ff:fe33:3c00 dev eth0  proto kernel  metric 1024  expires 1627sec

Eventually the two default proto kernel routes disappear from the output. My IPv6 connection still dropped at some point over night though. Again, simply running sudo service networking stop && sudo service networking start got everything working again. Those two fe80 routes reappeared as well, not surprising. Anyone any ideas?

aside: at no point has any IPv4 connectivity had issues.

  • I am confused. You claim it works, but you interfaces, has a /64 mask, but the obfuscated ipv6 address has a /128 mask. Something isn't right there. – Zoredache Jun 17 '14 at 20:17
  • Your config still doesn't match your output. The config says 2001:1AF8:4100:A00E:4::1/64, but the output says 2001:1AF8:4100:A00E:4::1/128. Your config looks fine (I have lots of systems with very similar config) but you are doing something you are not telling us here... – Sander Steffann Jun 17 '14 at 21:30
  • I think the last edit has the connectivity issue fixed. I'm just now confused about the scope global dynamic address and where its come from. – Jonny Barnes Jun 17 '14 at 22:39

Scope global dynamic is coming from interface autoconfiguration. First half of it is the same your IPv6 prefix, and second half is EUI-64 (derived from 'FF:FE' and your ethernet MAC address, unless you are using IPv6 privacy extensions)

If you don't want them, you can disable them by doing sysctl net.ipv6.conf.eth.autoconf = 0 BEFORE bringing your interface up.

| improve this answer | |

The correct way to configure IPv6 in Debian's /etc/network/interfaces file is:

iface eth0 inet6 static
        address 2001:1af8:4100:a00e:4::1
        netmask 64
        gateway 2001:1af8:4100:a00e::1

You should not have any of those extra up statements to configure your IPv6 address.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.