1 |
hey all, |
2 |
|
3 |
i've started doing a lot of work on IPv6 stuff in gentoo, to try to get |
4 |
us up to snuff with regards to IPv6 support. I've been commiting a lot |
5 |
more ebuilds for various things, and more are to come. BUT, an important |
6 |
aspect needs fixing. |
7 |
|
8 |
init scripts. |
9 |
|
10 |
The problem is we need better control of configuring both the IPv4 and |
11 |
the IPv6 attributes of an interface. Specifically, we want IPv6 services |
12 |
to start if IPv4 networking fails and vice versa. |
13 |
|
14 |
Along with that, we also need some initscript control over establishing |
15 |
tunnels, etc. That issue will be better tackled i think after we have a |
16 |
solid general device configuration in place. |
17 |
|
18 |
Solutions: |
19 |
* Seperate net.ethX and net6.ethX scripts. |
20 |
Problems: When something fails in current net.ethX script, |
21 |
we do 'ifconfig ethX down'. If we do this with co-existing |
22 |
v4+v6, we bring down the other form of networking. |
23 |
|
24 |
Advantages: Lets us have a "provide net" and "provide net6". |
25 |
Other scripts can independantly depend on one or the other, or both, |
26 |
or have "need net \ use net6", etc. |
27 |
|
28 |
More easily allows for IPv6 only networks if in an IPv6 only |
29 |
environment. (example: LAN using 6to4 tools) |
30 |
|
31 |
* Both IPv6 and IPv4 handled by an enhanced net.ethX script |
32 |
|
33 |
Problems: If v4 setup fails, does the script fail completely, |
34 |
or succeed? It can't succeed, because other things that might need |
35 |
v4 will subsequently fail. It can't die, because things that need |
36 |
the format that *didn't* fail will not be started, even though |
37 |
they could have been. |
38 |
|
39 |
Advantages: |
40 |
* Less work to enable a new device. Only have to do |
41 |
"rc-update add net.eth0 default" then configure /etc/conf.d/net |
42 |
|
43 |
* Marginally less time spent running scripts |
44 |
|
45 |
* Other solutions? |
46 |
|
47 |
I really prefer the first method, as it provides much finer grained |
48 |
control. I've got a net6.ethX script mostly done, but i wanted to get |
49 |
some feedback and opinions before fully implementing. The one major |
50 |
sticking point is how to deal with the current "do something or die and |
51 |
bring the interface down" situation. This behavior would obviously have |
52 |
to change. |
53 |
|
54 |
-pete |
55 |
|
56 |
|
57 |
-- |
58 |
Peter Johanson |
59 |
<latexer@g.o> |