NetworkManager permette di configurare interfacce di rete usando dialoghi GUI forniti dagli ambienti desktop, strumenti a riga di comando, applicazioni in terminale o file di configurazione YAML di netplan.io. È comodo sui portatili che si spostano tra reti diverse. Può essere usato su server con una configurazione statica.

parla brevemente di NetworkManager



NetworkManager

https://commons.wikimedia.org/wiki/File:NetworkManager.png

Dal README nel codice sorgente di NetworkManager:

In parallelo a NetworkManager alcune interfacce di rete possono essere sotto il controllo di

L'infrastruttura di configurazione Netplan.io può usare NetworkManager come backend.

Firewalld uses connection.zone property of NetworkManager connection profiles to determine filtering rules when network device is configured.


NetworkManager è composto da due livelli:

  1. Un demone eseguito come root: NetworkManager(8) è solitamente gestito da systemd come NetworkManager.service.

  2. Interfacce: lo strumento a riga di comando nmcli(1), l'interfaccia testuale in terminale nmtui(1), applet per gli ambienti desktop.

Il demone e gli strumenti nmtui e nmcli sono forniti nel pacchetto network-manager. Gli strumenti GUI sono pacchettizzati separatamente: nm-tray, network-manager-gnome (nm-applet), plasma-nm, ecc.

In aggiunta sono disponibili vari plugin che permettono a NetworkManager di gestire altre connessioni speciali, come vari tipi di connessioni VPN.

NetworkManager memorizza le informazioni di connessioni sulle singole reti conosciute in file di configurazione chiamati profili. Questi sono archiviati in /etc/NetworkManager/system-connections/. Per le opzioni usate in questi file fare riferimento alla pagina di manuale di nm-settings: man nm-settings o online. Possono essere modificati (come root) usando un editor di testo o nm-connection-editor (incluso in network-manager-gnome).

Affinché le modifiche alla configurazione diventino effettive, può essere necessario riavviare il demone di NetworkManager:

sudo service network-manager restart

A partire da Debian 11 (bullseye), usare:

sudo service NetworkManager restart

Documentazione

Interfacce di rete ignorate

Per coesistere con altri strumenti di configurazione della rete, NetworkManager non dovrebbe toccare alcune interfacce di rete. Lo stato attuale viene riportato da

$ nmcli device

In modo predefinito non gestisce le interfacce dichiarate in /etc/network/interfaces, vedere il file README.Debian del pacchetto nella #Documentazione e la sezione sottostante.

In aggiunta tiene in conto unmanaged-devices in NetworkManager.conf(5) § SEZIONE KEYFILE

[keyfile]
unmanaged-devices=*,except:type:wifi

e di managed dalla NetworkManager.conf(5) § SEZIONE DEVICE. Vedere anche NetworkManager.conf(5) § Device List Format.

[device]
match-device=lxcbr0
managed=false

La configurazione, inclusi i file aggiunti, può essere ottenuta con

$ /usr/sbin/NetworkManager --print-config

Vedere anche Chapter 15. Configuring NetworkManager to ignore certain devices in Configuring and managing networking per RHEL9.

I dispositivi da /etc/network/interfaces non sono gestiti in modo predefinito

A partire da Debian 6.0 "Squeeze", NetworkManager non gestisce in modo predefinito nessuna interfaccia definita in /etc/network/interfaces. Quello è il regno di ifupdown.

Un dispositivo non gestito è un dispositivo che NetworkManager non tocca. Ciò avviene quando sono soddisfatte due condizioni:

  1. Il file /etc/network/interfaces, vedere interfaces(5), contiene una cosa qualsiasi che riguardi l'interfaccia, anche solo:

     allow-hotplug eth0
     iface eth0 inet dhcp
  2. e /etc/NetworkManager/NetworkManager.conf contiene:

 [main]
 plugins=ifupdown,keyfile

 [ifupdown]
 managed=false

Abilitare la gestione delle interfacce

Si può commentare la descrizione dell'interfaccia da /etc/network/interfaces e configurare una connessione in NetworkManager. Il vantaggio è una veloce configurazione DHCP quanto viene connesso il cavo Ethernet.

Se si desidera che NetworkManager gestisca le interfacce abilitate in /etc/network/interfaces:

sudo service NetworkManager restart

prima di Debian 11 (bullseye) era necessario usare:

sudo service network-manager restart

"Auto Ethernet" e "Auto eth0"

Permessi

Se un utente può effettuare o meno una certa azione viene gestito attraverso PolicyKit. Per ottenere una panoramica dei permessi usare

nmcli general permissions

Un utente attivo locale ha abbastanza permessi per abilitare o disabilitare le connessioni vista la funzionalità "uaccess" di udev e systemd-logind.

I membri dei gruppi sudo e netdev possono creare connessioni a livello di sistema senza che venga chiesta la password. In Debian 12 bookworm, il primo utente creato dall'installatore viene aggiunto al gruppo netdev (#821424), tuttavia questo gruppo è stato eliminato dai valori predefiniti per adduser (#849265). Nelll'output del comando soprastante la voce corrispondente è org.freedesktop.NetworkManager.settings.modify.system e il suo valore è yes o auth in base alla configurazione.

In Debian 9 stretch (2017) l'applet di NetworkManager non compariva per nulla a meno che l'utente non appartenesse al gruppo netdev, vedere README.Debian per network-manager-gnome_1.4.4-1+deb9u1. Questo non è più richiesto.

FAQ

Q. Come posso configurare un indirizzo IP statico (per un server, ecc.)?

A) Usare il dialogo per le impostazioni di rete fornito dall'ambiente desktop, es. nm-connection-editor(1) in GNOME, creare or modificare una connessione usando nmcli(1), vedere Example 11. Adding an ethernet connection profile with manual IP configuration in nmcli-examples(7) oppure configurare /etc/network/interfaces come descritto in Configurazione della rete.

Q. Come posso configurare il DNS per !NetworkManager?

A) La risposta breve è usare nm-connection-editor. Per una risposta più dettagliata vedere la voce corrispondente in Configurazione della rete.

Q. Come impostare la condivisione di una connessione ("hotspot") per un'interfaccia cablata?

A) Prima assicurarsi di intallare (ma non dnsmasq a meno di non disabilitare il demone di sistema in /etc/default/dnsmasq). Poi usare nm-connection-editor e configurare un nuovo profilo usando "condiviso con altro computer" come metodo per IPv4 (non possibile da gnome-control-center di Gnome3). Questo nasconde tutta le complessità (dnsmasq, iptables, sysctl). Da ultimo usare tale profilo per l'interfaccia di rete connessa alla rete condivisa. Pe le interfacce Wi-Fi, è fornita un'interfaccia hotspot che usa le stesse funzionalità oltre ad impostare una rete WiFi apposita.

Q. Come posso impostare OpenVPN usando NetworkManager?

A) Usando il pacchetto network-manager-openvpn o network-manager-openvpn-gnome è possibile configurare tutti gli aspetti di OpenVPN, inclusa l'importazione delle configurazioni dal fornitore di servizi e l'avvio automatico per specifiche connessioni (tramite nm-connection-editor).

Risoluzione dei problemi

Se si incontrano problemi con la rete allora si può provare ad ottenere una panoramica dello stato e della configurazione attuale usando i seguenti comandi

$ nmcli general
$ nmcli radio
$ nmcli device
$ nmcli
$ nmcli connection
$ nmcli connection show "NAME_OR_UUID"
$ /usr/sbin/NetworkManager --print-config

Ispezionare i log dell'avvio attuale (o di uno precedente con opzioni aggiuntive)

# journalctl -b

in alternativa si può avviare

# journalctl -f

e osservare la reazione, ad es. ad un cavo connesso o ad un'attivazione della connessione. Notare che per eseguire journalctl(1) è necessario essere amministratore o si otterranno messaggi solo dalle applet GUI.

Vedere anche

Collegamenti esterni


CategoryNetwork CategorySoftware