No description
Find a file
2020-07-24 06:09:42 -06:00
.github/workflows implement a CI attempt 2020-07-19 06:03:08 -06:00
cmd use "use loopback" hint instead of "inet loopback", same with dhcp 2020-07-24 05:00:49 -06:00
doc/img clean up README a bit 2020-07-24 06:07:36 -06:00
libifupdown use "use loopback" hint instead of "inet loopback", same with dhcp 2020-07-24 05:00:49 -06:00
tests tests: add tests for use dhcp variant 2020-07-24 05:04:33 -06:00
.gitignore gitignore: add ifquery, ifup and ifdown executables to gitignore 2020-07-19 06:20:43 -06:00
CODE_OF_CONDUCT.md add code of conduct 2020-07-18 04:51:25 -06:00
COPYING initial commit 2020-07-18 01:17:51 -06:00
Kyuafile tests: start working on testing capabilities 2020-07-18 19:46:32 -06:00
Makefile ifupdown-ng 0.2. 2020-07-24 05:05:09 -06:00
README.md more readme hacking 2020-07-24 06:09:42 -06:00

ifupdown-ng

ifupdown-ng is a network device manager that is largely compatible with Debian ifupdown, BusyBox ifupdown and Cumulus Networks' ifupdown2.

Dependency Resolution

![Dependency resolution example](doc/img/dependency-resolution.png)

ifupdown-ng uses a dependency resolver to determine interface bring-up order in a deterministic way. To use this feature, you must declare relationships between interfaces with the requires keyword. This keeps the implementation efficient. For convenience, the requires keyword is exported to executors as the IF_REQUIRES environment variable.

For compatibility with some legacy ifupdown executors, we also provide the requires keyword under other environment variables in some cases.

Caveats

  • ifupdown2 python plugins are not supported at this time. An executor could be written to handle them.

  • ifupdown-ng retains compatibility with /etc/network/if-X.d scripts, but will prefer using executors in /usr/libexec/ifupdown-ng where appropriate.

This package is planned to replace BusyBox ifupdown in Alpine at some point in the future.