Re: Getting (a little more) started



On Fri, 2017-04-07 at 16:12 +0100, Colin Helliwell wrote:
I've got NM installed n running on my embedded system. I can 'nmcli
conn up modem' and the ppp link on my GSM modem comes up nicely -
ifconfig reports inet and P-t-P addresses, and I seem able to
ping/traceroute through it to the interweb, but I may have some
clutter.

Being embedded and headless I don't have nice GUI widgets to help me,
so I might need some more manual configuration or tidying of stuff. 
I'm using systemd, and also have running /lib/systemd/systemd-
networkd, /lib/systemd/systemd-resolved, /usr/bin/dnsmasq,
/sbin/dhclient. 
I built NM with '--with-resolvconf=yes', and the [Yocto] image also
has the resolveconf package included, but I'm unclear how these
relate to "/lib/systemd/systemd-resolved" and whether they have
common/conflicting configurations.

They will potentially conflict as there can only be one manager of
/etc/resolv.conf, and both these things want to manage it.

NM 1.6+ has support for systemd-resolved and this will automatically be
used if resolv.conf is managed by systemd-resolved and no other mode is
configured in NetworkManager.conf.

I *haven't* yet deleted /etc/ppp/ip-up & /etc/ppp/ip-down (past info
from Dan suggested there could be a risk of conflict here with what
ppp tries to do vs. NM actions).

If things currently work then don't bother deleting them.  Your options
are apparently compatible :)

I guess, put another way, is there something of a 'basic building
blocks' info that I can follow to gradually build up a working but
minimal/un-cluttered system, and good ways to sanity-check that
things are correctly configuring...?

Most of the documentation is linked from here:

https://wiki.gnome.org/Projects/NetworkManager/

including manpage references, which you'll be interested in for
nmcli/nmtui and all the configuration files (keyfiles and NM.conf).  I
seem to recall there used to be docs for general architecture, but I
can't find those anymore and they are certainly out-of-date.  The core
parts are:

NetworkManager daemon - the NM binary, the central manager for network
interfaces controlled by NM.  Also manages DNS and the default route
for these devices, funneling aggregated DNS info to /etc/resolv.conf or
the DNS management service of your choice (dnsmasq, systemd-resolved,
resolvconf, etc).  Communicates with clients via the D-Bus IPC
protocol.

NetworkManager daemon plugins - optional device-specific plugins for
things like WWAN, WiFi, Team, Bluetooth, etc.  You don't need to
install these if you don't use these device types.

NetworkManager daemon VPN plugins - optional daemons that control VPN
services like IPSec, openvpn, vpnc, pptp, etc and funnel the tunnel
information (addresses, routes, DNS) back to NM.  You don't need to
install these if you don't use these VPNs.

client libraries - libnm and libnm-glib are GLib-based convenience
libraries for clients like nmcli, GNOME Shell, etc.  You don't need
these if your clients talk raw D-Bus to NM.  But the core NM tools like
nmcli/nmtui/nm-applet depend on these libraries.

command-line tools - nmcli/nmtui are the non-GUI, command-line tools
that can control almost all aspects of NM's operation.

GUI clients - nm-applet, GNOME Shell, KDE Plasma, etc.  Provide a GUI
way to view network status and to control NM's operation.

Dan


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]