Difference between revisions of "NetworkManager (Italiano)"

From ArchWiki
Jump to: navigation, search
m (Impossibile editare le connessioni da utente normale: sezione rivista completamente)
(Gnome: fix)
(22 intermediate revisions by the same user not shown)
Line 22: Line 22:
 
=== Supporto VPN ===
 
=== Supporto VPN ===
 
Networkmanager supporta le reti VPN tramite tre plugin, tutti presenti nei [[Official Repositories (Italiano)|repositories ufficiali]]:
 
Networkmanager supporta le reti VPN tramite tre plugin, tutti presenti nei [[Official Repositories (Italiano)|repositories ufficiali]]:
    networkmanager-openvpn
+
*{{pkg|networkmanager-openvpn}}
    networkmanager-pptp
+
*{{pkg|networkmanager-pptp}}
    networkmanager-vpnc
+
*{{pkg|networkmanager-vpnc}}
  
 
== Interfacce grafiche ==
 
== Interfacce grafiche ==
Line 45: Line 45:
 
Se sul proprio sistema si hanno installati sia KNetworkManager, sia {{ic|nm-applet}} e non si vuole avere {{ic|nm-applet}} aperto su KDE, aggiungere questa riga a {{ic|/etc/xdg/autostart/nm-applet.desktop}}.
 
Se sul proprio sistema si hanno installati sia KNetworkManager, sia {{ic|nm-applet}} e non si vuole avere {{ic|nm-applet}} aperto su KDE, aggiungere questa riga a {{ic|/etc/xdg/autostart/nm-applet.desktop}}.
 
  NotShowIn=KDE
 
  NotShowIn=KDE
 
=== KDE3 ===
 
 
Anche se non è più supportato, {{AUR|kdemod3-knetworkmanager}} è disponibile su [[AUR (Italiano)|AUR]]. Questo pacchetto è una versione modificata del vecchio knetworkmanager per il DE [[Trinity]] e richiede NetworkManager 0.8.
 
  
 
===XFCE ===
 
===XFCE ===
Line 109: Line 105:
  
 
Verificare che il file {{ic|/etc/hosts}} sia a posto prima di continuare.  In caso di aver provato la connessione prima di eseguire questo passo, NetworkManager potrebbe averlo alterato. Un esempio di hostname in {{ic|/etc/hosts}}:
 
Verificare che il file {{ic|/etc/hosts}} sia a posto prima di continuare.  In caso di aver provato la connessione prima di eseguire questo passo, NetworkManager potrebbe averlo alterato. Un esempio di hostname in {{ic|/etc/hosts}}:
 
 
{{bc|
 
{{bc|
#<ip-address> <hostname.domain.org>          <hostname>                       
+
127.0.0.1    localhost
127.0.0.1    localhost.localdomain localhost dell-latitude
+
::1          localhost
 
}}
 
}}
 +
In caso si usi nss-myhostname:
 +
{{bc|127.0.0.1 my-laptop localhost
 +
::1 my-laptop localhost}}
 +
 
=== Disabilitare la configurazione di rete attuale ===
 
=== Disabilitare la configurazione di rete attuale ===
 
 
Si consiglia di disabilitare la presente configurazione di rete per essere in grado di testare adeguatamente NetworkManager.  
 
Si consiglia di disabilitare la presente configurazione di rete per essere in grado di testare adeguatamente NetworkManager.  
# stoppare il [[Demoni|demone]] di Network.
+
# Stoppare i servizi di rete attivi. Ad esempio:
# Disattivare il proprio NIC's (Network Interface Controllers, es. schede di rete). Per esempio, con il pacchetto {{pkg|iproute2}}:
+
# systemctl stop net-auto-wireless
 +
# Disabilitare servizi di rete diversi da nm. Ad esempio
 +
# systemctl disable net-auto-wireless
 +
# systemctl disable wicd
  
 +
Infine, disattivare il proprio NIC's (Network Interface Controllers, es. schede di rete).  Per esempio, con il pacchetto {{pkg|iproute2}}:
 
   # ip link set eth0  down
 
   # ip link set eth0  down
 
   # ip link set wlan0 down
 
   # ip link set wlan0 down
 
# Modificare {{ic|/etc/rc.conf}} e dove si è definito DHCP o un indirizzo IP statico, commentarle:
 
{{Note|Le seguenti impostazioni sono obsolete nel {{ic|rc.conf}} più recente.}}
 
{{bc|<nowiki>
 
#eth0="dhcp"                                                                   
 
#wlan0="dhcp"                                                                 
 
INTERFACES=(!eth0 !wlan0)
 
</nowiki>}}
 
# Infine, eliminare ''network'' (e qualunque altro gestore di rete) dall'array DAEMONS in {{ic|/etc/rc.conf}}.
 
  
 
=== Abilitare NetworkManager ===
 
=== Abilitare NetworkManager ===
 
È necessario abilitare networkmanager in modo assolutamente coerente con il proprio sistema di Init. Se si ha appena installato Arch Linux si ha sicuramente [[systemd (Italiano)|Systemd]] di default. Una volta che Networkmanager sarà avviato si potrà usufruire da subito dei servizi di rete tramite {{ic|nmcli}} o un altro applet grafico.  
 
È necessario abilitare networkmanager in modo assolutamente coerente con il proprio sistema di Init. Se si ha appena installato Arch Linux si ha sicuramente [[systemd (Italiano)|Systemd]] di default. Una volta che Networkmanager sarà avviato si potrà usufruire da subito dei servizi di rete tramite {{ic|nmcli}} o un altro applet grafico.  
  
==== Abilitare NetworkManager con initscripts ====
 
È necessario ''rimuovere'' il demone predefinito '''network'''  e aggiungere il demone '''networkmanager''' dopo il demone dbus:
 
 
DAEMONS=( ...'''dbus networkmanager'''... )
 
 
Assicurarsi che il pacchetto {{Pkg|dbus}} sia installato, poiché richiesto da NetworkManager. Per avviare altri servizi (demoni) che richiedono una connessione di rete vedere la sezione successiva su come configurarli. 
 
Per avviare immediatamente Networkmanager
 
# rc.d start dbus
 
 
# rc.d start networkmanager
 
 
==== Abilitare NetworkManager nativamente in systemd ====
 
 
Per avviare immediatamente {{ic|NetworkManager}} usare il seguente comando:
 
Per avviare immediatamente {{ic|NetworkManager}} usare il seguente comando:
  # systemctl start NetworkManager.service
+
  # systemctl start NetworkManager
 
Per abilitare il relativo servizio di [[systemd (Italiano)|systemd]] usare questo comando:
 
Per abilitare il relativo servizio di [[systemd (Italiano)|systemd]] usare questo comando:
  # systemctl enable NetworkManager.service
+
  # systemctl enable NetworkManager
  
 
{{Nota|Se si hanno dei servizi che non riescono ad avviarsi correttamente se avviati prima della rete, usare il servizio {{ic|NetworkManager-wait-online.service}}. Questo, in linea generale, non dovrebbe essere quasi mai necessario.}}
 
{{Nota|Se si hanno dei servizi che non riescono ad avviarsi correttamente se avviati prima della rete, usare il servizio {{ic|NetworkManager-wait-online.service}}. Questo, in linea generale, non dovrebbe essere quasi mai necessario.}}
Line 161: Line 142:
  
 
''Opzione 2.'' Aggiungere il proprio utente al gruppo {{ic|wheel}}. In questo modo nessuna password verrà chiesta ma bisognerà garantire dei permessi particolari all'utente come ad esempio l' ''abilità'' di non immettere password usando [[sudo (Italiano)|sudo]].
 
''Opzione 2.'' Aggiungere il proprio utente al gruppo {{ic|wheel}}. In questo modo nessuna password verrà chiesta ma bisognerà garantire dei permessi particolari all'utente come ad esempio l' ''abilità'' di non immettere password usando [[sudo (Italiano)|sudo]].
 +
 +
''Opzione 3.'' Aggiungere il proprio utente al gruppo {{ic|network}} e creare il seguente file:
 +
{{hc|/etc/polkit-1/localauthority/50-local.d/org.freedesktop.NetworkManager.pkla|<nowiki>
 +
polkit.addRule(function(action, subject) {
 +
  if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
 +
    return polkit.Result.YES;
 +
  }
 +
});</nowiki>}}
 +
Ora tutti gli utenti in tale gruppo ({{ic|network}}) potranno aggiungere o rimuovere reti senza password. Questo non funziona se si usa systemd senza una sessione di [[Systemd (Italiano)#Usare systemd-logind|systemd-logind]].
  
 
=== Servizi di rete con NetworkManager Dispatcher ===
 
=== Servizi di rete con NetworkManager Dispatcher ===
Line 185: Line 175:
 
case "$STATUS" in
 
case "$STATUS" in
 
     'up') # $INTERFACE is up
 
     'up') # $INTERFACE is up
exec /etc/rc.d/openntpd start
+
systemctl openntpd start
 
;;
 
;;
 
     'down') # $INTERFACE is down
 
     'down') # $INTERFACE is down
 
# Check for active interface and down if no one active
 
# Check for active interface and down if no one active
 
if [ ! `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then
 
if [ ! `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then
exec /etc/rc.d/openntpd stop
+
systemctl openntpd stop
 
fi
 
fi
 
;;
 
;;
Line 243: Line 233:
  
 
{{Nota|Potrebbe essere necessario riaprire l'applet di NetworkManager e re-immettere la password vpn.}}
 
{{Nota|Potrebbe essere necessario riaprire l'applet di NetworkManager e re-immettere la password vpn.}}
 
==== Usare {{ic|/etc/rc.conf}} per controllare networkmanager ====
 
 
Alcuni utenti Arch potrebbero avere la necessità di controllare completamente Networkmanager da {{ic|/etc/rc.conf}}. Questo metodo prevede proprio questo. I servizi avviati da NetworkManager sono controllati da rc.conf tramite l'uso dell'array NET_DAEMONS, un array sullo stesso stile dell'array DAEMONS.
 
 
'''1)''' Installare {{aur|networkmanager-dispatcher-net_daemons}} da [[AUR (Italiano)|AUR]].
 
 
'''2)''' Inserire {{ic|dbus}} e {{ic|networkmanager}} nella riga {{ic|DAEMONS}} del file {{ic|/etc/rc.conf}}.
 
 
'''3)''' Aggiungere la linea {{ic|NET_DAEMONS}} allo stesso file  ({{ic|/etc/rc.conf}}) che includa tutti i servizi che non si vuole avviare prima della connessione come ad esempio: sshd, samba, ecc..
 
 
Un esempio di {{ic|DAEMONS}} e {{ic|NET_DAEMONS}} in {{ic|rc.conf}} è il seguente:
 
 
{{bc|<nowiki>
 
# DAEMONS
 
# -------
 
#
 
DAEMONS=(syslog-ng crond dbus networkmanager)
 
NET_DAEMONS=(iptables nscd sshd samba avahi-daemon avahi-dnsconfd openntpd)
 
</nowiki>}}
 
  
 
=== Impostazioni proxy ===
 
=== Impostazioni proxy ===
Line 328: Line 298:
 
mv -f "$resolvconf".tmp "$resolvconf"
 
mv -f "$resolvconf".tmp "$resolvconf"
 
}}
 
}}
 +
 +
Alternativamente installare {{AUR|networkmanager-dispatch-resolv}} da [[AUR (Italiano)|AUR]].
  
 
===Preservare le modifiche a resolv.conf===
 
===Preservare le modifiche a resolv.conf===
Line 346: Line 318:
 
  require dhcp_server_identifier
 
  require dhcp_server_identifier
 
in {{ic|/etc/dhcpcd.conf}} (notare che questo file è un file distinto da {{ic|dhcpd.conf}}). Questo non dovrebbe causare problemi con server a DHCP multipli (configurazione non usuale); vedere [http://technet.microsoft.com/en-us/library/cc977442.aspx questa pagina] per maggiori informazioni.
 
in {{ic|/etc/dhcpcd.conf}} (notare che questo file è un file distinto da {{ic|dhcpd.conf}}). Questo non dovrebbe causare problemi con server a DHCP multipli (configurazione non usuale); vedere [http://technet.microsoft.com/en-us/library/cc977442.aspx questa pagina] per maggiori informazioni.
 +
 +
===Problemi con hostname===
 +
Aggiungere la seguente riga al file {{ic|/etc/NetworkManager/NetworkManager.conf}}:
 +
dhcp=dhcpcd
 +
e riavviare il [[systemd (Italiano)|servizio]] di NetworkManager.
  
 
===Manca il route predefinito===
 
===Manca il route predefinito===
Line 352: Line 329:
 
===Modem 3G non rilevato===
 
===Modem 3G non rilevato===
 
Se NetworkManager (da v0.7.999) non rileva il modem 3G, ma è comunque possibile collegarsi tramite [[wvdial]], provare ad installare il pacchetto {{pkg|modemmanager}} e riavviare il demone NetworkManager con {{ic|/etc/rc.d/networkmanager restart}}. Ricollegare il modem o riavviare. Questa utilità fornisce il supporto per l'hardware non incluso di default nel database di NetworkManager.
 
Se NetworkManager (da v0.7.999) non rileva il modem 3G, ma è comunque possibile collegarsi tramite [[wvdial]], provare ad installare il pacchetto {{pkg|modemmanager}} e riavviare il demone NetworkManager con {{ic|/etc/rc.d/networkmanager restart}}. Ricollegare il modem o riavviare. Questa utilità fornisce il supporto per l'hardware non incluso di default nel database di NetworkManager.
 
===problemi di VPN in Networkmanager 0.7.999===
 
Se viene visualizzato il messaggio di errore "invalid secrets" quando si tenta di connettersi al provider VPN utilizzando il protocollo PPTP, provare ad installare le versioni git: {{aur|networkmanager-git}}, {{aur|network-manager-applet-git}} e {{aur|networkmanager-pptp-git}}.
 
  
 
===Spegnimento WLAN su computer portatili===
 
===Spegnimento WLAN su computer portatili===
Line 378: Line 352:
  
 
Nell'editor di connessione, modificare la connessione di default (ad esempio "Auto eth0") e deselezionare "Connetti automaticamente". Fare clic su ''Applica'' e chiudere l'editor di connessione.
 
Nell'editor di connessione, modificare la connessione di default (ad esempio "Auto eth0") e deselezionare "Connetti automaticamente". Fare clic su ''Applica'' e chiudere l'editor di connessione.
 +
 +
=== È impossibile editare connessioni da utente ===
 +
Vedere [[#Impostare i permessi di PolicyKit]].
  
 
=== Cancellare una rete nascosta ===
 
=== Cancellare una rete nascosta ===
Line 385: Line 362:
  
 
==Suggerimenti==
 
==Suggerimenti==
 +
=== Condividere connessione internet su wifi ===
 +
È possibile condividere una connessione (es.: 3G o wired) con pochi click con NetworkManager. Tuttavia le schede wifi supportate sono poche, con Atheros AR9xx e AR5xx non si dovrebbero avere problemi.
 +
 +
==== Ad-hoc ====
 +
* Installare  {{pkg|dnsmasq}} dai [[Official Repositories (Italiano)|repositories ufficiali]].
 +
* Una configurazione personalizzata di {{ic|dnsmasq.conf}} potrebbe interferire.
 +
* Clickare sull'applet di nm-applet -> Creare nuova connessione wireless.
 +
* Seguire il wizard (se si usa WEP assicurarsi di usare o 5 o 13 caratteri come password, password diverse potrebbero fallire)
 +
* Il setting rimane salvato per i prossimi utilizzi
 +
 +
==== Real AP ====
 +
Non ancora supportato da NetworkManager. Tale features, che equivale all' "HotSpot" dei telefoni android è in sviluppo.
 +
 +
Vedere [http://fedoraproject.org/wiki/Features/RealHotspot http://fedoraproject.org/wiki/Features/RealHotspot] per ulteriori informazioni.
  
 
===Verificare l'attivazione della rete all'interno di un processo cron o script===
 
===Verificare l'attivazione della rete all'interno di un processo cron o script===
Line 404: Line 395:
  
 
{{Nota|Il metodo seguente è datato, e noto per non funzionare su alcune macchine!}}
 
{{Nota|Il metodo seguente è datato, e noto per non funzionare su alcune macchine!}}
''*In {{ic|/etc/pam.d/gdm}} (o il demone corrispondente in /etc/pam.d), aggiungere queste righe alla fine dei blocchi "auth" e "session" in caso non esistano già:  
+
*In {{ic|/etc/pam.d/gdm}} (o il demone corrispondente in /etc/pam.d), aggiungere queste righe alla fine dei blocchi "auth" e "session" in caso non esistano già:  
 
   auth            optional        pam_gnome_keyring.so
 
   auth            optional        pam_gnome_keyring.so
 
   session        optional        pam_gnome_keyring.so  auto_start
 
   session        optional        pam_gnome_keyring.so  auto_start
Line 411: Line 402:
 
   password    optional    pam_gnome_keyring.so
 
   password    optional    pam_gnome_keyring.so
  
:Al seguente accesso, dovrebbe venir richiesto se si desidera che la password venga sbloccata automaticamente al login.''
+
:Al seguente accesso, dovrebbe venir richiesto se si desidera che la password venga sbloccata automaticamente al login.
  
 
==== KDE ====
 
==== KDE ====
Line 443: Line 434:
 
A volte potrebbe tornare utile che network manager ignori alcuni dispositivi e non provi ad ottenere un indirizzo IP.
 
A volte potrebbe tornare utile che network manager ignori alcuni dispositivi e non provi ad ottenere un indirizzo IP.
  
*Prima di tutto bisogna trovare l'UDI di Hal (es. con lshal):
+
:1. Ignorare device dall'indirizzo MAC: usare il seguente modo in {{{{ic|/etc/NetworkManager/NetworkManager.conf}} :
 +
[keyfile]
 +
unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4
 +
:Dopo di ciò [[Demoni|riavviare]] NetworkManager e verificarne il funzionamento.
 +
 
 +
:2. In alternativa si può usare Hal.
 +
::* Prima di tutto bisogna trovare l'UDI di Hal (es. con {{ic|lshal}}):
 
   ...
 
   ...
 
   info.product = 'Networking Interface'  (string)
 
   info.product = 'Networking Interface'  (string)
Line 452: Line 449:
 
   ...
 
   ...
  
*Aggiungere l'UDI a /etc/NetworkManager/nm-system-settings.conf:
+
::*Aggiungere l'UDI a {{ic|/etc/NetworkManager/nm-system-settings.conf}}:
 
   [keyfile]
 
   [keyfile]
 
     unmanaged-devices=/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55
 
     unmanaged-devices=/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55
Line 463: Line 460:
 
Non è necessario riavviare NetworkManager perchè le modifiche abbiano effetto.
 
Non è necessario riavviare NetworkManager perchè le modifiche abbiano effetto.
  
*Ignorare un tipo di dispositivo in fase di boot.
+
::3. Ignorare un tipo di dispositivo in fase di boot usando questo script (cambiare {{ic|NetworkManager.conf}} com {{ic|nm-system-settings.conf}} per versioni di Networkmanager precedenti alla 0.8.1):
questo script è stato utilizzato per ignorare tutti i dispositivi Ethernet al momento del boot di una archiso, può essere modificato per ignorare dispositivi wifi, ecc, essendo utilizzato su un "non-persistant filesystem", nm-system-settings.conf è predefinito nel run time
+
 
   #!/bin/sh
 
   #!/bin/sh
 
   # author: tim noise <darknoise@drkns.net>
 
   # author: tim noise <darknoise@drkns.net>
Line 478: Line 474:
 
   done
 
   done
 
   printf "\n" >> $TARGET_FILE
 
   printf "\n" >> $TARGET_FILE
 +
:Tale script può essere adattato per ignorare dei Device wireless, usato su filesysten non persistenti, ecc...
  
 
=== Connessioni più veloci ===
 
=== Connessioni più veloci ===

Revision as of 12:45, 24 February 2013

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary end

NetworkManager è un programma per la rilevazione e la configurazione delle reti, e con il quale, i sistemi potranno connettersi automaticamente. La funzionalità di NetworkManager può essere utile sia per reti cablate che wireless. Per quanto riguarda il wireless, NetworkManager predilige le reti conosciute, ed offre la possibilità di passare alla rete più affidabile. Le applicazioni di allerta di NetworkManager possono passare dalla modalità online a quella offline. NetworkManager può inoltre favorire le connessioni cablate a quelle wireless, oltre ad includere il supporto per connessioni modem e certi tipi di VPN. NetworkManager è stato originariamente sviluppato da RedHat ed è ora ospitato dal progetto GNOME.

Contents

Installazione di base

NetworkManager è disponibile nei repositories ufficiali ed è quindi installabile tramite pacman.

Supporto VPN

Networkmanager supporta le reti VPN tramite tre plugin, tutti presenti nei repositories ufficiali:

Interfacce grafiche

Per configurare ed avere un facile accesso a NetworkManager, molti utenti vorranno installare un'applet. Quest'interfaccia grafica solitamente risiede nella system tray (o area di notifica) e consente la selezione della rete e la configurazione di NetworkManager. Esistono varie applet per diversi tipi di desktop.

GNOME

L'applet GNOME (network-manager-applet) è abbastanza leggero e funziona in tutti gli ambienti.

Se si desidera memorizzare i dati di autenticazione (Wireless/DSL) e attivare le impostazioni di connessione globale, cioè "a disposizione di tutti gli utenti" è necessario installare GNOME Keyring.

KDE4

Il front-end KNetworkManager è stato reso disponibile per la versione KDE 4.4 come un widget di Plasma kdeplasma-applets-networkmanagement nei Repositori Ufficiali

La controparte GNOME funziona altrettanto bene, o anche meglio (ha più funzioni e rileva più hardware).

Nota: Se si cambia da un altro strumento di gestione di rete come Wicd, non dimenticare di impostare il valore predefinito "Network Management Backend" in System Settings -> Hardware -> Information Sources

Se sul proprio sistema si hanno installati sia KNetworkManager, sia nm-applet e non si vuole avere nm-applet aperto su KDE, aggiungere questa riga a /etc/xdg/autostart/nm-applet.desktop.

NotShowIn=KDE

XFCE

nm-applet funziona perfettamente anche in XFCE, ma per abilitare le notifiche, inclusi i messaggi di errore è necessaria una specifica implementazione di Freedesktop. Vedere questo per visualizzare le notifiche. L'implementazione più usata è data dal pacchetto xfce4-notifyd.

Senza questo demone, networkmanager stamperà questi errori stdout/stderr:

(nm-applet:24209): libnotify-WARNING **: Failed to connect to proxy
** (nm-applet:24209): WARNING **: get_all_cb: couldn't retrieve
system settings properties: (25) Launch helper exited with unknown
return code 1.
** (nm-applet:24209): WARNING **: fetch_connections_done: error
fetching connections: (25) Launch helper exited with unknown return
code 1.
** (nm-applet:24209): WARNING **: Failed to register as an agent:
(25) Launch helper exited with unknown return code 1

nm-applet funziona comunque, ma non si avrannò notifiche.

Openbox

Per usare in modo appropriato networkmanager su Openbox è necessario il demone di notifica xfce4-notifyd e il pacchetto gnome-icon-theme per abilitare l'icona nella systray.

Se si desidera memorizzare i dati di autenticazione (Wireless/DSL) installare GNOME Keyring.

Nota: Se il demone networkmanager è in /etc/rc.conf, i seguenti passaggi sono del tutto obsoleti e l'applet verrà avviato due volte.

Per fare in modo che l'autostart di Openbox avvii nm-applet correttamente, potrebbe essere necessario cancellare il file /etc/xdg/autostart/nm-applet.desktop (potrebbe essere necessario cancellarlo dopo ogni aggiornamento di network-manager-applet)

Poi in autostart, avviare nm-applet con questa riga:

(sleep 3 && /usr/bin/nm-applet --sm-disable) &

Se si riscontrano errori assicurarsi di aver avviato correttamente la sessione di D-Bus.

Altri desktop e Window Manager

Si consiglia di utilizzare l'applet di GNOME. Assicurarsi inoltre che il pacchetto gnome-icon-theme sia installato per essere in grado di visualizzare l'applet .

Per far si che la password sia memorizzata sarà necessario installare anche GNOME Keyring.

Per utilizzare nm-applet senza un vassoi di sistema, si può avvalersi di trayer o stalonetray. Si può ad esempio aggiungere uno script come questo al proprio percorso:

nmgui
 #!/bin/sh
 nm-applet    > /dev/null 2>/dev/null &
 stalonetray  > /dev/null 2>/dev/null
 killall nm-applet

La chiusura della finestra del vassoio, comporterà anche la chiusura di nm-applet, in modo che non verrà sprecata memoria inutilmente una volta terminato con le impostazioni di rete.

Da riga di comando

Il pacchetto networkmanager, dalla versione 0.8.1 contiene nmcli

Configurazione

NetworkManager richiede alcuni passaggi aggiuntivi per essere eseguito correttamente.

Verificare che il file /etc/hosts sia a posto prima di continuare. In caso di aver provato la connessione prima di eseguire questo passo, NetworkManager potrebbe averlo alterato. Un esempio di hostname in /etc/hosts:

127.0.0.1     localhost
::1           localhost

In caso si usi nss-myhostname:

127.0.0.1 my-laptop localhost
::1 my-laptop localhost

Disabilitare la configurazione di rete attuale

Si consiglia di disabilitare la presente configurazione di rete per essere in grado di testare adeguatamente NetworkManager.

  1. Stoppare i servizi di rete attivi. Ad esempio:
# systemctl stop net-auto-wireless
  1. Disabilitare servizi di rete diversi da nm. Ad esempio
# systemctl disable net-auto-wireless
# systemctl disable wicd

Infine, disattivare il proprio NIC's (Network Interface Controllers, es. schede di rete). Per esempio, con il pacchetto iproute2:

 # ip link set eth0  down
 # ip link set wlan0 down

Abilitare NetworkManager

È necessario abilitare networkmanager in modo assolutamente coerente con il proprio sistema di Init. Se si ha appena installato Arch Linux si ha sicuramente Systemd di default. Una volta che Networkmanager sarà avviato si potrà usufruire da subito dei servizi di rete tramite nmcli o un altro applet grafico.

Per avviare immediatamente NetworkManager usare il seguente comando:

# systemctl start NetworkManager

Per abilitare il relativo servizio di systemd usare questo comando:

# systemctl enable NetworkManager
Nota: Se si hanno dei servizi che non riescono ad avviarsi correttamente se avviati prima della rete, usare il servizio NetworkManager-wait-online.service. Questo, in linea generale, non dovrebbe essere quasi mai necessario.

Impostare i permessi di PolicyKit

Vedere questo per maggiori informazioni. Nella configurazione di default, gli utenti non root non sono autorizzati ad aggiungere connessioni di rete. Procedere così:

Opzione 1. Avviare un authentication agent PolicyKit al login come /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 (necessita di polkit-gnome). Potrebbe essere richiesta una password ad ogni modifica alla connessione.

Opzione 2. Aggiungere il proprio utente al gruppo wheel. In questo modo nessuna password verrà chiesta ma bisognerà garantire dei permessi particolari all'utente come ad esempio l' abilità di non immettere password usando sudo.

Opzione 3. Aggiungere il proprio utente al gruppo network e creare il seguente file:

/etc/polkit-1/localauthority/50-local.d/org.freedesktop.NetworkManager.pkla
polkit.addRule(function(action, subject) {
  if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
    return polkit.Result.YES;
  }
});

Ora tutti gli utenti in tale gruppo (network) potranno aggiungere o rimuovere reti senza password. Questo non funziona se si usa systemd senza una sessione di systemd-logind.

Servizi di rete con NetworkManager Dispatcher

Ci sono un paio di servizi di rete che non si desiderano in esecuzione fino a quando NetworkManager attiva un'interfaccia. Buoni esempi sono openntpd e i vari tipi di montaggi dei filesystem di rete (es. netfs). NetworkManager ha la capacità di avviare questi servizi quando ci si connette a una rete (interface up), e fermarli quando non li si sta utilizzando più (interface down).

Per utilizzare questa funzionalità, gli script possono essere aggiunti nella cartella /etc/NetworkManager/dispatcher.d. Questi script avranno bisogno dei permessi di esecuzione dell'utente. Per ragioni di sicurezza, è buona prassi renderli di proprietà di root:root e scrivibili solo dal proprietario.

Gli script verranno eseguiti in ordine alfabetico al momento della connessione (con argomenti interface up), e in ordine alfabetico inverso al momento della disconnessione (interface down). Per garantire l'ordine in cui vengono richiamati, è pratica comune utilizzare dei caratteri numerici prima del nome dello script (es. 10_portmap o 30_netfs (che assicura che il portmapper sia attivato prima che vengano tentati i montaggi NFS).

Attenzione: Per ragioni di sicurezza è necessario disattivare l'accesso in scrittura per il "gruppo" e per "altri". Ad esempio usare 755 mask. In altri casi può essere negata l'esecuzione di script, con il seguente messaggio di errore "nm-dispatcher.action: Script could not be executed: writable by group or other, or set-UID." in /var/log/messages.log
Attenzione: Se ci si connette da reti pubbliche o estere, bisogna essere consapevoli di quali servizi si stanno avviando e quali server su cui connettersi sono disponibili per loro. Si potrebbe aprire una falla di sicurezza lanciando i servizi sbagliati mentre si è connessi ad una rete pubblica.

Avviare openntpd

Lo script seguente è un esempio di come avviare openntpd quando un'interfaccia viene attivata. Salvare il file come /etc/NetworkManager/dispatcher.d/20_openntpd e renderlo eseguibile.

#!/bin/sh

INTERFACE=$1 # The interface which is brought up or down
STATUS=$2 # The new state of the interface

case "$STATUS" in
    'up') # $INTERFACE is up
	systemctl openntpd start
	;;
    'down') # $INTERFACE is down
	# Check for active interface and down if no one active
	if [ ! `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then
		systemctl openntpd stop
	fi
	;;
esac

Montare cartelle remote con sshfs

Dato che lo script viene eseguito in un ambiente ristretto, è necessario esportare SSH_AUTH_SOCK per connettere il proprio agente SSH. Esistono diversi modi per compiere adeguatamente questa operazione, per maggiori informazioni leggere questa discussione sul forum. L'esempio sottostante funziona con gnome-keyring, che, se non è già stato sbloccato, richiederà la relativa password. Nel caso in cui networkmanager si avvii in modo automatico all'avvio è possibile che gnome-keyring non sia ancora stato inizializzato. È quindi possibile che l'esportazione fallisca (ed entri in sleep). L' UUID necessario si trova in /etc/NetworkManager/system-connections/.

#!/bin/bash
USER=<your sshfs user>
if [ $CONNECTION_UUID == <connection UUID> ]; then
       case "$2" in
               up)
                  #sleep 10
                  export SSH_AUTH_SOCK=$(find /tmp/keyring-*/ -type s -user $USER -gr oup users -name ssh)
                  su $USER -c "/usr/bin/sshfs user@host:/remote/folder /local/folder/"
                ;;
               down)
                  fusermount -u /local/folder
                ;;
       esac
fi

Usare dispatcher per connettersi a rete VPN dopo aver stabilito una connessione

In questo esempio si desidera connettersi automaticamente a una connessione VPN definita in precedenza con NetworkManager. La prima cosa da fare è creare lo script del dispatcher che definisce che cosa fare dopo aver stabilito la connessione alla rete.

1) Creare lo script
/etc/NetworkManager/dispatcher.d/vpn-up
VPN_NAME=<name of VPN connection defined in NetworkManager>
  ESSID=<wifi network ESSID (not connection name)>
  if [ "$2" = "up" -o "$2" = "vpn-down" ]; then          # -o "$2" = "vpn-down" makes VPN reconnect after VPN connection interrupt
    if [ "$(iwgetid | grep ':"'$ESSID'"')" ]; then       # check for ESSID match
      nmcli con up id "$VPN_NAME";                       # parentheses needed for VPN connection names with spaces
    fi
  elif [ "$2" = "down" ]; then                           # disconnect VPN prior to disconnecting from the network
    if [ "$(iwgetid | grep ':"'$ESSID'"')" ]; then       # check for ESSID match and that VPN is actually connected
      if [ $(nmcli con status id "$VPN_NAME" | grep -c activated) ]; then
        nmcli con down id "$VPN_NAME";
      fi
    fi
  fi

Non dimenticare di renderlo eseguibile con chmod +x e di rendere possibile a tutti gli utenti accedere a connessioni vpn.

Provando a connettere networkmanager con questa configurazione si noterà che il risultato sarà: 'no valid vpn secrets'. Questo è causato dal modo in cui i "secret flag" vengono salvati da vpn. È quindi necessario seguire quest altra istruzione:

2) Editare il file di configuazione della connessione vpn per rendere NetworkManager in grado di memorizzare i parametri al suo interno invece che in un portachiavi che sarà inaccessibile a root:

Aprire quindi NetworkManager/system-connections/<nome della connessione> e cambiare password-flags e secret-flags da 1 a 0.

Nota: Potrebbe essere necessario riaprire l'applet di NetworkManager e re-immettere la password vpn.

Impostazioni proxy

Network Manager non gestisce direttamente le impostazioni del proxy, ma con il DE GNOME, è possibile utilizzare proxydriver per le impostazioni proxy tramite le informazioni di Network Manager. Il pacchetto proxydriverAUR è disponibile su AUR.

Per fare in modo che proxydriver sia in grado di modificare le impostazioni del proxy, è necessario eseguire questo comando, dalle applicazioni d'avvio di GNOME (Sistema->Preferenze->Applicazioni d'avvio):

xhost +si:localuser:your_username

Consultare: Proxy settings

Testing

Gli applet NetworkManager sono progettati per essere caricati al momento del login in modo che nessuna ulteriore configurazione dovrebbe essere necessaria per la maggior parte degli utenti. Dopo aver disabilitato le impostazioni di rete precedenti e scollegata la rete, è possibile verificare se NetworkManager funziona. Per prima cosa avviare il demone networkmanager.

Alcuni applet includono un file .desktop in modo da poter essere caricati attraverso il menu delle applicazioni. In caso contrario, bisognerà scoprire il comando da usare o reiniziare una nuova sessione per avviare l'applet. Una volta avviato, stabilirà le connessioni di rete dopo una prima fase di interrogazioni (polling), per poi auto-configurarsi con un server DHCP.

Per avviare l'applet di GNOME in Window Manager non compatibili con xdg come Awesome:

nm-applet --sm-disable &

Per gli IP statici è necessario configurare NetworkManager ad interpretarli. Solitamente basta un click destro del mouse sull'applet per selezionare "Modifica connessioni".

Risoluzione dei problemi

Alcune correzioni ai problemi più comuni.

Problemi con il traffico dati tramite il tunnel PPTP

Può succedere che il login alla connessione PPTP avvenga in maniera corretta, e si veda che l'interfaccia ppp0 ha un IP VPN esatto, ma non si riesca a "pingare" nessun IP remoto. La causa è la mancanza del supporto a MPPE (Microsoft Point-to-Point Encryption) nel pacchetto pppd di Arch.

Sarà sufficiente installare ppp-mppeAUR da AUR.

Prima provare con il pacchetto standard di Arch ppp, potrebbe funzionare a dovere.

Gestione di rete disabilitata

A volte, quando NM viene spento, il file del PID (stato) non viene rimosso e si ottiene il messaggio "Network management disabled". Se questo accade, sarà necessario rimuoverlo manualmente:

rm /var/lib/NetworkManager/NetworkManager.state

Se questo accade al riavvio, è possibile aggiungere un'azione a etc/rc.local per farli rimuovere al momento del boot:

nmpid=/var/lib/NetworkManager/NetworkManager.state
[ -f $nmpid ] && rm $nmpid

NetworkManager impedisce a DHCPCD l'uso di resolv.conf.head e resolv.conf.tail

A volte è problematico aggiungere elementi statici a resolv.conf quando è costantemente riscritto da NM e dhcpcd. È possibile utilizzare il pacchetto networkmanager-dhclient di AUR, ma una soluzione migliore è quella di utilizzare questo semplice script:

#!/bin/bash
# 
# /etc/NetworkManager/dispatcher.d/99-resolv.conf-head_and_tail
# Include /etc/resolv.conf.head and /etc/resolv.conf.tail to /etc/resolv.conf
#
# scripts in the /etc/NetworkManager/dispatcher.d/ directory
# are called alphabetically and are passed two parameters:
# $1 is the interface name, and $2 is “up” or “down” as the
# case may be.

resolvconf='/etc/resolv.conf';
cat "$resolvconf"{.head,,.tail} 2>/dev/null > "$resolvconf".tmp
mv -f "$resolvconf".tmp "$resolvconf"

Alternativamente installare networkmanager-dispatch-resolvAUR da AUR.

Preservare le modifiche a resolv.conf

NetworkManager cercherà di scrivere le informazioni del DNS da DHCP in /etc/resolv.conf, sovrascrivendone il contenuto esistente. È possibile evitare questo comportamento impostando il "bit immutabile" sul file (da root):

# chattr +i /etc/resolv.conf

Per modificare il file in futuro, rimuovere per prima cosa il bit immutabile:

# chattr -i /etc/resolv.conf

Problemi DHCP

In caso di problemi nell'ottenere un indirizzo IP tramite DHCP, provare ad aggiungere quanto segue al file /etc/dhclient.conf:

 interface "eth0" {
   send dhcp-client-identifier 01:aa:bb:cc:dd:ee:ff;
 }

Dove aa:bb:cc:dd:ee:ff è l'indirizzo MAC della scheda di rete. L'indirizzo MAC può essere trovato usando il comando ip link show eth0, fornito da iproute2.

Con qualche router, risulterà impossibile la connessione senza prima aver decommentato:

require dhcp_server_identifier

in /etc/dhcpcd.conf (notare che questo file è un file distinto da dhcpd.conf). Questo non dovrebbe causare problemi con server a DHCP multipli (configurazione non usuale); vedere questa pagina per maggiori informazioni.

Problemi con hostname

Aggiungere la seguente riga al file /etc/NetworkManager/NetworkManager.conf:

dhcp=dhcpcd

e riavviare il servizio di NetworkManager.

Manca il route predefinito

Se con un sistema con KDE4, nessun percorso di default è stato creato al momento di stabilire le connessioni wireless con NetworkManager, in genere si può risolvere modificando le impostazioni di route della connessione wireless, per rimuovere la selezione di default "Use only for resources on this connection".

Modem 3G non rilevato

Se NetworkManager (da v0.7.999) non rileva il modem 3G, ma è comunque possibile collegarsi tramite wvdial, provare ad installare il pacchetto modemmanager e riavviare il demone NetworkManager con /etc/rc.d/networkmanager restart. Ricollegare il modem o riavviare. Questa utilità fornisce il supporto per l'hardware non incluso di default nel database di NetworkManager.

Spegnimento WLAN su computer portatili

A volte NetworkManager non funziona quando si disattiva l'adattatore Wifi con l'interruttore del portatile e si prova ad abilitarlo nuovamente in seguito. Questo è spesso un problema con rfkill. Installarlo dai repositories ufficiali e dare il comando

$ watch -n1 rfkill list all

per verificare se il driver informa rfkill circa lo stato della scheda wireless. Se un identificatore rimane bloccato dopo aver premuto l'adattatore, si potrebbe provare a sbloccarlo manualmente con (dove X è il numero di identificazione fornito dall'output del comando sopra):

# rfkill event unblock X

Impostazioni IP statico ripristinate a DHCP

A causa di un bug non risolto, quando si cambia l'impostazione predefinita per le connessioni con IP statico, nm-applet potrebbe non memorizzare correttamente la modifica della configurazione, e reimpostare il DHCP automatico. Segue una soluzione per questo problema.

Modificare la connessione predefinita (per esempio "Auto eth0") in nm-applet. Cambiare il nome della connessione (ad esempio "la mia eth0"), deselezionare la casella "Disponibile a tutti gli utenti", modificare le impostazioni di IP statico desiderate, quindi fare clic su Applica. Ciò salverà una nuova connessione con il nome indicato.

Successivamente, si desidera effettuare la connessione di default e non connettersi automaticamente. Per fare ciò, eseguire

$ sudo nm-connection-editor  # si deve usare sudo, non su

Nell'editor di connessione, modificare la connessione di default (ad esempio "Auto eth0") e deselezionare "Connetti automaticamente". Fare clic su Applica e chiudere l'editor di connessione.

È impossibile editare connessioni da utente

Vedere #Impostare i permessi di PolicyKit.

Cancellare una rete nascosta

Ovviamente una rete a ESSID nascosto non compare nella GUI dell'applet. Per rimuoverla quindi usare il seguent comando:

# rm /etc/NetworkManager/system-connections/[SSID]

Tale comando funziona con ogni rete.

Suggerimenti

Condividere connessione internet su wifi

È possibile condividere una connessione (es.: 3G o wired) con pochi click con NetworkManager. Tuttavia le schede wifi supportate sono poche, con Atheros AR9xx e AR5xx non si dovrebbero avere problemi.

Ad-hoc

  • Installare dnsmasq dai repositories ufficiali.
  • Una configurazione personalizzata di dnsmasq.conf potrebbe interferire.
  • Clickare sull'applet di nm-applet -> Creare nuova connessione wireless.
  • Seguire il wizard (se si usa WEP assicurarsi di usare o 5 o 13 caratteri come password, password diverse potrebbero fallire)
  • Il setting rimane salvato per i prossimi utilizzi

Real AP

Non ancora supportato da NetworkManager. Tale features, che equivale all' "HotSpot" dei telefoni android è in sviluppo.

Vedere http://fedoraproject.org/wiki/Features/RealHotspot per ulteriori informazioni.

Verificare l'attivazione della rete all'interno di un processo cron o script

Alcune esecuzioni di cron richiedono la rete per poter funzionare. Si potrebbe evitare l'esecuzione di questi, fino a quando la rete non è nuovamente disponibile. A tale scopo, aggiungere un if di prova per le networking query richieste da NetworkManager, che controllano lo stato della rete. Il test qui illustrato funziona con le interfacce attive, e fallisce se non lo sono. Questo può essere utile per i computer portatili che possono essere cablati, wireless, o semplicemente fuori dalla rete.

if [ `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then
       #Whatever you want to do if the network is online
else
       #Whatever you want to do if the network is offline - note, this and the else above are optional
fi

Molto utile per uno script cron.hourly che esegue fpupdate per l'aggiornamento dello scanner antivirus F-Prot, per esempio. Un'altra possibilità, con delle piccole modifiche, è quello di distinguere tra le reti utilizzando varie parti degli output di nm-tool; per esempio, in quanto la rete wireless attiva è indicata con un asterisco, è possibile, con l'utilizzo di "grep", trovare il nome della rete orientando la ricerca "grep" all'asterisco.

Sblocco automatico del portachiavi dopo il login

Gnome

  1. Fare clic destro sull'icona di NM nel pannello e selezionare "Modifica connessioni" per aprire la scheda Wireless
  2. Selezionare la connessione che si desidera e fare clic sul pulsante Modifica
  3. Seleziona le caselle "connessione automatica" e "disponibili a tutti gli utenti"

Disconnettersi ed accedere nuovamente alla sessione.

Nota: Il metodo seguente è datato, e noto per non funzionare su alcune macchine!
  • In /etc/pam.d/gdm (o il demone corrispondente in /etc/pam.d), aggiungere queste righe alla fine dei blocchi "auth" e "session" in caso non esistano già:
 auth            optional        pam_gnome_keyring.so
 session         optional        pam_gnome_keyring.so  auto_start
  • In /etc/pam.d/passwd, utilizzare questa riga per il blocco della "password":
 password    optional    pam_gnome_keyring.so
Al seguente accesso, dovrebbe venir richiesto se si desidera che la password venga sbloccata automaticamente al login.

KDE

Nota: Vedere http://live.gnome.org/GnomeKeyring/Pam per maggiori informazioni, e se si utilizza kde / kdm, è possibile avvalersi di pam-keyring-tool da AUR.
  • Mettere uno script come il seguente in ~/.kde4/Autostart:
 $!/bin/sh
 echo PASSWORD | /usr/bin/pam-keyring-tool --unlock --keyring=default -s
Script simili dovrebbero funzionare anche con openbox, LXDE, ecc.

SLiM login manager

  • Aggiungere queste righe in /etc/pam.d/slim, alla fine dei blocchi "auth" e "session" in caso non siano specificate ancora:
 auth            optional        pam_gnome_keyring.so
 session         optional        pam_gnome_keyring.so  auto_start
  • In /etc/pam.d/passwd, utilizzare questa riga per il blocco 'password':
 password    optional    pam_gnome_keyring.so
  • In ~/.xinitrc, aggiungere queste righe nella parte iniziale, prima di lanciare il window manager ed altre applicazioni:
 ## test for an existing bus daemon, just to be safe
 if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
    ## if not found, launch a new one
    eval `dbus-launch --sh-syntax --exit-with-session`
    echo "D-Bus per-session daemon address is: $DBUS_SESSION_BUS_ADDRESS"
 fi
Al seguente login, verrà richiesto se si desidera che la password venga sbloccata automaticamente al login.

Ignorare dispositivi specifici

A volte potrebbe tornare utile che network manager ignori alcuni dispositivi e non provi ad ottenere un indirizzo IP.

1. Ignorare device dall'indirizzo MAC: usare il seguente modo in {{/etc/NetworkManager/NetworkManager.conf :
[keyfile]
unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4
Dopo di ciò riavviare NetworkManager e verificarne il funzionamento.
2. In alternativa si può usare Hal.
  • Prima di tutto bisogna trovare l'UDI di Hal (es. con lshal):
 ...
 info.product = 'Networking Interface'  (string)
 info.subsystem = 'net'  (string)
 info.udi = '/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55'  (string)
 linux.hotplug_type = 2  (0x2)  (int)
 linux.subsystem = 'net'  (string)
 ...
  • Aggiungere l'UDI a /etc/NetworkManager/nm-system-settings.conf:
 [keyfile]
   unmanaged-devices=/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55
Possono venire specificati dispositivi multipli, delimitati da punti e virgola:
 [keyfile]
   unmanaged-devices=/org/freedesktop/Hal/devices/net_00_1f_11_01_06_55;/org/freedesktop/Hal/devices/net_00_2c_6d_e2_08_af

Non è necessario riavviare NetworkManager perchè le modifiche abbiano effetto.

3. Ignorare un tipo di dispositivo in fase di boot usando questo script (cambiare NetworkManager.conf com nm-system-settings.conf per versioni di Networkmanager precedenti alla 0.8.1):
  #!/bin/sh
  # author: tim noise <darknoise@drkns.net>
  COUNT=0
  TARGET_FILE="/etc/NetworkManager/nm-system-settings.conf"
  for i in `lshal | grep -A6 'Networking Interface' | awk -F "'" '/info.udi = / {print $2}'`; do
      if [ $COUNT = 0 ]; then
          COUNT=$COUNT+1;
          echo "unmanaged-devices=$i" >> $TARGET_FILE
      else
          echo -n ";$i" >> $TARGET_FILE
      fi
  done
  printf "\n" >> $TARGET_FILE
Tale script può essere adattato per ignorare dei Device wireless, usato su filesysten non persistenti, ecc...

Connessioni più veloci

Collegarsi più velocemente disabilitando IPv6

Se non c'è il supporto IPv6 sulla rete locale, la connessione a una rete può richiedere più tempo del normale, mentre Network Manager cerca di stabilire una connessione IPv6 e magari, alla fine, andare in time out. La soluzione è quella di disabilitare IPv6 all'interno di Network Manager. Questo deve essere fatto una sola volta per ogni rete a cui ci si connette.

  • Fare clic destro sull'icona di stato della rete.
  • Cliccare su "Modifica connessioni".
  • Andare su "Wired" o "Wireless", a seconda dei casi.
  • Selezionare il nome della rete.
  • Cliccare su "Modifica".
  • Andare alla sezione "Impostazioni IPv6".
  • Nel menu a discesa "Metodo", scegliere "Ignora".
  • Cliccare su "Salva".

Speed up DHCP by disabling ARP probing in dhcpcd

dhcpcd contiene un'implementazione di una raccomandazione agli standard DHCP (RFC2131 sezione 2.2) per assicurarsi via ARP che l'IP assegnato non sia già in uso. Potrebbe sembrare inutile in una rete domestica, ma si possono risparmiare fino a 5 secondi sul tempo di connessione aggiungendo a /etc/dhcpcd.conf:

noarp

Questo equivale a lanciare dhcpd con il flag --noarp, questo disabilita il sondaggio ARP velocizzando la connessione con DHCP.

Usare Servers OpenDNS

Creare il file /etc/resolv.conf.opendns con i nameservers:

nameserver 208.67.222.222
nameserver 208.67.220.220

Per sostituire i server DHCP con gli OpenDNS:

/etc/NetworkManager/dispatcher.d/dns-servers-opendns
#!/bin/bash
# Use OpenDNS servers over DHCP discovered servers

cp -f /etc/resolv.conf.opendns /etc/resolv.conf

Rendere eseguibile lo script:

# chmod +x /etc/NetworkManager/dispatcher.d/dns-servers-opendns