What does "new network stack" do and how it will affect my network setup?
What is the difference between the old and new network stack ?_________________"Dear Enemy: may the Lord hate you and all your kind, may you be turned orange in hue, and may your head fall off at an awkward moment."
"Linux is like a wigwam - no windows, no gates, apache inside..."

What does "new network stack" do and how it will affect my network setup? What is the difference between the old and new network stack?

Kollin ... 'newnet' will replace 'net.lo' with 'network' (and the respective files under /etc/conf.d), README.newnet (see source directory) explains that the intention is to simplify the method of configuring interfaces, but as this is a work in progress it is considered 'experimental'.

For the status of 'newnet' you might ask on #openrc (irc.freenode.net) and/or read the relevant scripts and conf.d in the sources.

openrc-0.11.2/README.newnet 1813/1813 100%
The following applies only to the newnet stack, which is not presently
maintained in OpenRC. The oldnet stack is maintained instead.
- Robin H. Johnson <robbat2@gentoo.org>, 2011/02/21

OpenRC Network Ideals
---------------------

The new style networking for OpenRC is very simplistic - provide a basic means
of configuring static interface address and routes whilst allowing the
possibility to run any command at any point.

In a nutshell, init.d/network is a wrapper around ifconfig( and
init.d/staticroute is wrapper around route(.

In the Perfect World (TM) ifconfig should be able to configure everything
about the interface easily * . The BSD family almost get this right and Linux
epically fails.

It fails because there are many tools to do the same job and often have
vastly different syntax where they could be similar. In other words, there
is no coherence.

OpenRC-0.4.x and older (inc Gentoo baselayout-1) had a collection of scripts
for each tool and allowed a script per interface. Over the years, this design
has proven very hard to maintain as each user has their own idea of how
things should work. Also, there were (and still are) race conditions.

So where do we go from here?
Well, it's possible to use the new network scripts using the tools
currently available. It's just harder as you have to know them and their
documentation can be lacking at times.
The correct end goal is a BSD style ifconfig tool.
I've started work on it, but the project has stalled somewhat.
It's display only right now and the source is not yet publicly available.
If you have the skills and share the vision then contact me privately and
we'll take it from there.

_________________"Dear Enemy: may the Lord hate you and all your kind, may you be turned orange in hue, and may your head fall off at an awkward moment."
"Linux is like a wigwam - no windows, no gates, apache inside..."

Now my questions are:
What is going to change in /etc/conf.d ?
What is going to change in syntax, commands or both?
What is going to happen with net.eth* (/etc/init.d/net.lo will be replaced with network)?

_________________"Dear Enemy: may the Lord hate you and all your kind, may you be turned orange in hue, and may your head fall off at an awkward moment."
"Linux is like a wigwam - no windows, no gates, apache inside..."

Why not, as I suggested, ask on #openrc? ... other than the above README.newnet, the changes are undocumented. I imagine that much of the current syntax will be preserved, but that the methodology will change. For example, in {openrc-0.11.2}/conf.d/network.in it states that the variables 'ifconfig_eth0' can be subsitiuted for files (/etc/ifconfig.eth0, or /etc/ip.eth0), so the variable config_${IFACE} seems to be replaced with ip_${IFACE} or ifconfig_${IFACE} (basically the varible 'modules' has been dropped in favour of a var that includes both ${module} and ${IFACE}). There is also the inclusion of an ifup_${IFACE} which defines how the interface will be configured prior to having an address asigned. No doubt there are other significant changes, but until it is fully documented then you will need to ask the developers.

Kollin wrote:

What is going to happen with net.eth* (/etc/init.d/net.lo will be replaced with network)?

Why not look at {openrc-0.11.2}/init.d/network.in? It seems that the variable 'interfaces' (see {openrc-0.11.2}/conf.d/network.in) will provide 'network' with some idea of which interfaces are to be handled, and the init has some logic for bring them up, whether these are to be symlinked similarly to net.lo I can't tell without a more through reading and checking the various stuff in {openrc-0.11.2}/net.

Anyhow, this may not land in stable as the default for some considerable time, and all of the above may have changed considerably before that happens, so such questions are not particularly pressing ... unless you plan on migrating to this new 'experimental' feature.

_________________"Dear Enemy: may the Lord hate you and all your kind, may you be turned orange in hue, and may your head fall off at an awkward moment."
"Linux is like a wigwam - no windows, no gates, apache inside..."

Kollin ... if you install ~arch openrc you can expect some issues, thats why its in 'testing' and not 'stable'. Similarly if you enable "experimental" features.

The general tone of your comment is enough to have me wonder who, or what, is doing the screwing up.

best ... khay

Oh no, I'm not complaining
I'm fully enjoying Gentoo's testing branch _________________"Dear Enemy: may the Lord hate you and all your kind, may you be turned orange in hue, and may your head fall off at an awkward moment."
"Linux is like a wigwam - no windows, no gates, apache inside..."