I would like to subnet the default IPv6 route into 2 network routes. The original default route was:

default via fe80::218:74ff:fe27:9640 dev eth0  proto kernel  metric 1024

I tried adding the following 2 routes, which together should be equivalent to the default route:

ip -6 route add ::/1 dev eth0 via fe80::218:74ff:fe27:9640  
ip -6 route add 80::/1 dev eth0 via fe80::218:74ff:fe27:9640

The first command went through, but the second one generated an error:

RTNETLINK answers: File exists

Why is this happening? What's the correct way to specify 2 network routes covering everything?

link|improve this question
Isn't ::/1 shorthand for 'everything'? Why do you think the 80::/1 is necessary? – growse Dec 1 '11 at 15:41
@growse ::/0 would be everything, ::/1 is :: through 7fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff - every address where the first bit (the /1 mask) is a 0. – Shane Madden Dec 1 '11 at 19:17
feedback

2 Answers

80:: is 0080::/1, which isn't a valid route - try 8000::/1 instead.

link|improve this answer
feedback

The route should be 8000::/1. It's not a good idea though... All public IPv6 traffic uses 2000::/3, which will use ::/1. All ULA traffic (for example) will use the other route, but if you want that then you should create a default route (::/0) and a route for the ULA addresses (fc00::/7). Splitting on 8000::/1 does not make a lot of sense...

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

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