[CentOS] IPv6 routing failure on CentOS5

Fri Mar 30 17:27:00 UTC 2012
Steve Snyder <swsnyder at snydernet.net>

I can't get IPv6 routing to configure correctly despite everything I've read saying it should

This is my network config on a fully-updated CentOS 5.8 system:

 # cat /etc/sysconfig/network
 NETWORKING=yes
 NETWORKING_IPV6=yes
 HOSTNAME=my.hostname.com
 GATEWAY=aaa.bbb.ccc.ddd
 IPV6_DEFAULTGW=2a02:aaaa.bbbb::1
 IPV6_DEFAULTDEV=eth0

 # cat /etc/sysconfig/network-scripts/ifcfg-eth0
 ONBOOT=yes
 DEVICE=eth0
 BOOTPROTO=static
 HWADDR=52:54:00:68:42:1E
 IPADDR=000.111.222.333
 NETMASK=255.255.255.128
 IPV6INIT=yes
 IPV6ADDR=2a02:aaaa.bbbb:178:209:50:230:0/112

Attempts to use the IPv6 address fail.  For example:

 # ping6 -c 2 2a00:1450:4016:800::1013
 connect: Network is unreachable

However it works if I manually enter these 2 lines:

 # route -A inet6 add ::/0 dev eth0
 # ip -6 route add 2000::/3 via 2a02:aaaa.bbbb::1 metric 1

 # ping6 -c 2 2a00:1450:4016:800::1013
 PING 2a00:1450:4016:800::1013(2a00:1450:4016:800::1013) 56 data bytes
 64 bytes from 2a00:1450:4016:800::1013: icmp_seq=0 ttl=57 time=91.2 ms
 64 bytes from 2a00:1450:4016:800::1013: icmp_seq=1 ttl=57 time=95.3 ms

These are the routing table entries added by my hand-added configuration:

 2000::/3 via 2a02:418:6a04::1 dev eth0  metric 1  expires 21333054sec mtu 1500 advmss 1440 hoplimit 4294967295
 default dev eth0  metric 1  expires 21333054sec mtu 1500 advmss 1440 hoplimit 4294967295


So... given the parameters set in my config files, why are the CentOS v5.8 initscripts not configuring my IPv6 routing correctly?

One more thing.  I get this output on network start up (prior to hand-configuration):

Bringing up interface eth0:  WARN     : [ipv6_add_route] 'No route to host' adding route '::/0' via gateway '2a02:aaaa.bbbb::1' through device 'eth0'

Thanks.