RFC: new modes in network-manager 0.7 + ifupdown

Alexander Sack asac at ubuntu.com
Tue Oct 7 10:33:44 BST 2008


Hi,

one main NetworkManager 0.7 blocker identified for intrepid was bug
#256054: "new 0.7 branch ignores /etc/network/interfaces".

Latest NM upload [1] fixes this in the following way:

1. we enable ifupdown system config plugin by default
2. we teach ifupdown system config plugin about Unmanaged (default) and
Managed mode:

  a. Unmanaged Mode (intrepid default):
  Devices with a hal interface.name that have a matching configuration in
  /etc/network/interfaces will _not_ be managed by NM. This mode is
  more or less similar to what we had in our network manager 0.6
  shipped in hardy/gutsy. This mode will be the _default_ in intrepid.

  b. Managed Mode (not default for now):
  Devices with a hal interface.name that have a matching static or dhcp
  configuration in /etc/network/interfaces will be explicitly managed by
  NetworkManager. The ifupdown plugin honours your configuration and
  automatically sets the mac address for the managed devices
  appropriately.

  The mode used can be configured in /etc/NetworkManager/nm-system-settings.conf:

  [main]
  plugins=ifupdown,keyfile
           ^^^ ifupdown needs to be enabled!!

  [ifupdown]
  managed=false
          ^^^ this means unmanaged mode. use "true" here for the (experimental)
              managed mode


For "Unmanaged mode", all should be fine as all interfaces configured
in /etc/network/interfaces would still be managed exclusively through
the ifup/ifdown commands.


However for "Managed mode", we also have to consider that (almost) all
ubuntu installs have the ifup/down commands installed which would then
interfere with NetworkManager for devices with a valid
/etc/network/interfaces configuration.

To address this I currently see two approaches for "Managed mode".

 1. disable ifup/ifdown for NM managed devices completely: this
 probably would be the clean solution and would reflect the fact that
 NM managed network devices cannot/must not be managed through
 ifup/ifdown.

 2. the other option is to only prevent ifup/ifdown from automatically
 interfering with NetworkManager and leave the decision whether a user
 wants to manually mess with his NetworkManager managed devices through
 ifup/ifdown to the user: To achieve this we could a) disable the "-a"
 option in ifup or b) add special code to the networking init.d script.

For now, my personal preference is solution 2a). It does not disable
ifup/ifdown completely, while it would prevent issues due to devices
being accidentially/automatically managed my ifup/ifdown at startup.

If you more ideas or any reasons why we should rather go for 1), 2b) or
even 3), I would love to hear about them.

Comments/Suggestions?

 [1] - network-manager 0.7~~svn20081004t225044-0ubuntu1

Thanks,

 - Alexander




More information about the ubuntu-devel mailing list