1
0
mirror of https://github.com/CumulusNetworks/ifupdown2.git synced 2024-05-06 15:54:50 +00:00
Roopa Prabhu 2c0ad8b338 Doc updates + cleanup
Ticket: CM-2297
Reviewed By:
Testing Done: compile tested

more updates coming ...
2014-07-17 11:44:36 -07:00

56 lines
2.0 KiB
ReStructuredText

Introduction
============
ifupdown2 is a replacement for the debian network interface
management package ifupdown. It is ifupdown re-written in python. It
maintains the original ifupdown pluggable architecture and extends it further.
It comes as two packages:
* python-ifupdown2
* python-ifupdown2-addons
(Packaging may change in the future)
python-ifupdown2
----------------
The python-ifupdown2 package provides the infrastructure for
parsing /etc/network/interfaces file, loading, scheduling, template parsing,
state management and interface dependency generation of interfaces.
It dynamically loads python modules from /usr/share/ifupdownmodules (provided
by the python-ifupdown2-addons package). To remain compatible with other
packages that depend on ifupdown, it also executes scripts under /etc/network/.
To make the transition smoother, a python module under
/usr/share/ifupdownmodules will override a script by the same name under
/etc/network/.
It publishes an interface object which is passed to all loadble python
modules. For more details on adding a addon module, see the section on
adding python modules.
ifupdown2 module calls all modules for every interface declared in the
/etc/network/interfaces file.
python-ifupdown2-addons
-----------------------
The python-ifupdown2-addons package contains ifupdown2 addon modules.
addon modules are responsible for applying interface configuration.
The modules are installed under /usr/share/ifupdownmodules.
Each module can declare its own set of supported attributes. Each module
is passed the iface object (which is a representation of /etc/network/interfaces
iface entry). Each module is also passed the operation to be performed.
Example modules are /usr/share/ifupdownmodules/address.py,
/usr/share/ifupdownmodules/bridge.py etc
The order in which these modules are invoked is listed in
/var/lib/ifupdownaddons/addons.conf. There is a ifaddon utility in the works
to better manage the module ordering.
For details on how to add a module, see the api reference and development
documentation.