Fixing default routes after disabling conman and using NetworkManager


I have disabled conman using:

 systemctl disable connman.service as I wish to use network manager.

This now works well in that my DHCP and other settings are all correct, and register correctly.

I now have a routing issue in that I have bunch of entries prioritizing eth0 when in fact I want wlan0 to be the gw (I am routing between eth0 --> wlan0)

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         mediabadger.loc         UG    0      0        0 eth0
default         mediabadger.loc         UG    1024   0        0 eth0
google-public-d mediabadger.loc UGH   0      0        0 eth0     *        U     0      0        0 wlan0   *        U     0      0        0 eth0

Anyone have an idea how I can rectify this?

The DHCP assigned GW from wlan0 should always have priority.

Why do you want to use NM over ConnMan? This will cause issues in the long term.

I think ‘Metric’ is now pretty much ignored, you may have to add the routes in the order you wish to use them.


I had a custom addon for XBMC which managed wifi networks, roaming etc. it uses nmcli and direct edits to the config files to manager the network. I didn’t want to rebuild it all for conman :frowning:

Perhaps this is more of a netork manager problem for now :wink:

You may have more joy using the official network manager in My OSMC. If you find features are missing, feel free to help us improve them or suggest how we can make them better.

My knowledge of NetworkManager is of a much more limited scope than ConnMan unfortunately


I have check various things, and it does seem to be something specific to your build , do any of your script try and add default routes etc?

Oh and yes happy to help, and provide ideas.


ConnMan will try and configure routes but if you have uninstalled it then it won’t.

Have you seen our OSMC network configuration tool? What’s missing, and what can we do to better cater to your needs?



Ok so first thing I did find how to disable the autrouting issue with addition of the following line to /etc/connman.conf:


In regards to the Network manager, What I created which works really well encompasses the following features which you are lacking :smile: (or at least so I believe). Admittedly it goes a little beyond a normal network manager. But here it is:

I am happy to provide screens

  • graphical display in a grid view showing ordered lists of all connections, their signal strength and their security type (locked/open)

  • Selecting a connection opens a pop up menu showing navigation options for

Pop Up Menu

  • connect/apply
  • disconnect
  • settings
  • forget
  • info


  • bring up a settings dialogue if the connection requires security
  • connects or re-pplys settings


  • drops the selected connection (supports both eth and wifi)
  • disables WiFi roaming process

Main Settings

  • Standard Ip configuration settings for both wifi and wired
  • Automatically remember the settings for a given wifi network
  • A network which has a setting is added to a roam list, and will subsequently be reconnected to automatically based on strength of signal

Advanced Settings Sub-Menu:

  • ability to generate a new UUID for the host
  • enable/disable WiFi roaming
  • enable/disable on the WiFi specifically
  • route traffic over WiFi from Ethernet (tethering you support I see which is similar)
  • change host-name

-info option brings up basic Ip settings information for the given connection.

hopefully this helps?

Have you actually used the My OSMC network GUI at all ?

Much of what you describe is already implemented out of the box…

And as Sam says, if there is any particular feature you feel is lacking, please feel free to contribute to the code. You can find the code for the networking GUI here:

Any time and effort that you spend on your custom Networkmanager configuration benefits only you, any time you spend contributing to the features of the OSMC network manager benefits all OSMC users.

By the way be aware that as it currently stands the connman-osmc and network-osmc debian package scripts will unconditionally re-enable the connman service every time either of those two packages is upgraded, which will break your configuration which is relying on network manager.

connman is very tightly integrated into OSMC so you are going somewhat out on a limb by trying to use network manager.

I hear you, I did this work previously for raspbmc, so wanted to port rather than rewrite what was quite a substantial amount of work.

If I do get time to look at this again, I will do so under connman and contribute.