Menu

Tree [fe395c] default /
 History

Read Only access


File Date Author Commit
 conf.d 2013-02-11 William Hubbs William Hubbs [3a8acb] Rename shutdown_network setting to keep_network
 doc 2013-02-11 William Hubbs William Hubbs [3a8acb] Rename shutdown_network setting to keep_network
 etc 2013-04-16 Alexander Vershilov Alexander Vershilov [e67dd3] add cgroup cleanup support
 init.d 2013-04-27 Eugeny Shkrigunov Eugeny Shkrigunov [ad3a95] fsck: fix typo
 init.d.misc 2013-02-12 Andrew Gregory Andrew Gregory [9cc8cd] Fix shebangs in services to point to the correc...
 local.d 2013-02-25 William Hubbs William Hubbs [e61798] local.d: update README
 man 2013-05-01 William Hubbs William Hubbs [fe395c] Add service applet
 mk 2013-02-12 Andrew Gregory Andrew Gregory [679991] make BINDIR and SBINDIR available to input files
 net 2013-02-17 William Hubbs William Hubbs [956c84] Typo Fix
 pkgconfig 2013-01-07 Fabian Groffen Fabian Groffen [70a351] einfo.pc: expand values correctly
 runlevels 2013-04-08 William Hubbs William Hubbs [c191ee] create loopback service
 scripts 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need
 sh 2013-04-16 Alexander Vershilov Alexander Vershilov [e67dd3] add cgroup cleanup support
 src 2013-05-01 William Hubbs William Hubbs [fe395c] Add service applet
 support 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need
 sysctl.d 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need
 test 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need
 .gitignore 2013-01-07 Fabian Groffen Fabian Groffen [9e18c7] remove obsolete .gitignore files
 FEATURE-REMOVAL-SCHEDULE 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need
 Makefile 2013-01-07 Fabian Groffen Fabian Groffen [f544e3] Remove original make-based buildsystem
 Makefile.inc 2013-01-07 Fabian Groffen Fabian Groffen [f544e3] Remove original make-based buildsystem
 README 2013-01-10 Fabian Groffen Fabian Groffen [11e9e1] Add pointer to our 'upstream'
 README.newnet 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need
 STYLE 2011-07-13 William Hubbs William Hubbs [4edae4] Add commit message information to style guide
 TODO 2013-01-06 Fabian Groffen Fabian Groffen [e3d823] remove a whole bunch of stuff we don't need

Read Me

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(8) and
init.d/staticroute is wrapper around route(8).

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.

* Only static configuration, including link setup.
For dynamic, static, IPv4LL, arping and per ssid IPv4 setup dhcpcd-5.x
provides your needs.

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.