I'm trying to get IPv6 stable on my (remote) server, however it intermittently looses IPv6 connectivity, fixable only by a reboot (etc/init.d/networking restart doesn't work with the FILE EXISTS problem - possibly related to the dropping of IPv6). I've checked that my address and netmask are the ones assigned to me by my ISP.
Key details: OS: Ubuntu Server 12.04 LTS, fully updated. Virtualmin: GPL, fully updated. Extra Modules: nginx.
Contents of /etc/network/interfaces
auto lo eth0 iface lo inet loopback iface eth0 inet static address 91.121.6.110 netmask 255.255.255.0 broadcast 91.121.6.255 network 91.121.6.0 gateway 91.121.6.254 iface eth0 inet6 static address 2001:41d0:1:596e::1 netmask 64 post-up ifconfig eth0 inet6 add 2001:41d0:1:596e::2/64 pre-down ifconfig eth0 inet6 del 2001:41d0:1:596e::2/64 gateway 2001:41d0:1:59FF:FF:FF:FF:FF
Immediately after a reboot, once the loading has finished, my networking has the following state:
saidar@angreal:~$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 4c:72:b9:43:84:40 brd ff:ff:ff:ff:ff:ff inet 91.121.6.110/24 brd 91.121.6.255 scope global eth0 inet6 2001:41d0:1:596e::1/64 scope global valid_lft forever preferred_lft forever inet6 fe80::4e72:b9ff:fe43:8440/64 scope link valid_lft forever preferred_lft forever
saidar@angreal:~$ ip route default via 91.121.6.254 dev eth0 metric 100 91.121.6.0/24 dev eth0 proto kernel scope link src 91.121.6.110 saidar@angreal:~$ ip -f inet6 route 2001:41d0:1:596e::/64 dev eth0 proto kernel metric 256 2001:41d0:1:5900::/56 dev eth0 proto kernel metric 256 expires 2592264sec fe80::/64 dev eth0 proto kernel metric 256 default via fe80::21e:79ff:fe1e:d400 dev eth0 proto kernel metric 1024 expires 1741sec default via fe80::21e:79ff:fe1e:f000 dev eth0 proto kernel metric 1024 expires 1741sec
I can successfully ping my ISPs gateway and ipv6.google.com. Although my second ipv6 address appears not to have been configured, I can manually ipconfig it and accept incoming IPv6 connections.
However, after a while - usually no more than a couple of hours, I loose all IPv6 connectivity, except to my ISPs gateway. I can no-longer ping external sites, nor accept incoming IPv6 connections. Below are the results of the same commands executed above.
saidar@angreal:~$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 4c:72:b9:43:84:40 brd ff:ff:ff:ff:ff:ff inet 91.121.6.110/24 brd 91.121.6.255 scope global eth0 inet6 2001:41d0:1:596e::2/64 scope global valid_lft forever preferred_lft forever inet6 2001:41d0:1:596e::1/64 scope global valid_lft forever preferred_lft forever inet6 fe80::4e72:b9ff:fe43:8440/64 scope link valid_lft forever preferred_lft forever
saidar@angreal:~$ ip route default via 91.121.6.254 dev eth0 metric 100 91.121.6.0/24 dev eth0 proto kernel scope link src 91.121.6.110 saidar@angreal:~$ ip -f inet6 route 2001:41d0:1:596e::/64 dev eth0 proto kernel metric 256 2001:41d0:1:5900::/56 dev eth0 proto kernel metric 256 expires 2548037sec fe80::/64 dev eth0 proto kernel metric 256
Does anyone have any ideas over what's causing IPv6 to fail? Any help, or suggestions are welcome.