Connman usage Scenario
pascal.bach at siemens.com
Thu Nov 22 04:38:54 PST 2012
I would like to know if you think connman is suitable for the scenario I have in mind:
The idea is to use connman as the central point of configuring the network on a appliance like device. The applications running on the device can all talk to connman to get and set network settings. Connman is responsible for the rest (storing, restoring configuration, persisting, etc..).
The device is connected via Ethernet, wifi may be used in the future.
1. In the initial state if the device is booted it should try to obtain an IP address via DHCP.
2. If no DHCP server can be found the device should assign a link-local IPv4 address (IPv4ALL, APIPA, etc..)
3. The user later has the possibility to change the network settings from DHCP to Static. This configuration should be stored by connman. If the device is configured statically the device should automatically connect using these static settings after every reboot. Otherwise it should connect using DHCP like described in 2.
4. If the Ethernet cable is unplugged and re-plugged the settings should be the same as before and the network should automatically reconnect.
5. A usb gadget port is available on the device which is available as RNDIS/CDC Ethernet to a computer. It would be nice if connman could act as DHCP server on this devices and provide an IP to a device connected to this usb port. This USB network would mainly be used for diagnostic and as an emergency access to the device if the user forgets the static IP configured.
All this should be doable without any additional daemon running. So the initial auto connect needs to be configurable in the connman settings.
I want to note that we like to run some services on the device like web server. So I'm not sure if connman is the right component for this job as it seems more oriented toward mobile client devices.
What are your thought on this?
Is connman suitable for an appliance device? Or is it out of scope of the project and should I look at something else like NetworkManager  or netifd  ?
Thanks for your help.
More information about the connman