Networkmanager

Aus wiki.archlinux.de

NetworkManager ist eine Anwendung zur Verwaltung von Netzwerkverbindungen. Es soll vor allem den Zugang zu drahtlosen Netzwerken erleichtern.

Installation

Der Networkmanager ist als networkmanager in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S networkmanager

KDE

pacman -S plasma-nm

Gnome

pacman -S network-manager-applet

Fluxbox, Openbox und andere WM

Es kann hier das nm-applet (GNOME-Applet für NetworkManager) verwendet werden.

Den Befehl nm-applet in die Datei ~/.xinitrc eintragen, um das NetworkManager Applet automatisch zu starten.

Dienst aktivieren

Damit der Dienst automatisch gestartet wird, systemctl enable NetworkManager.service ausführen.

Hinweis: Will man ihn sogar direkt starten, dann muss man noch Argument --now hinter enable hinzufügen

Netzwerkverbindungen konfigurieren

Die Einstellungen zu den möglichen Verbindungsarten können über das Programm nm-connection-editor vorgenommen werden, welches sich über den Starter Netzwerkverbindungen oder auch über ein Terminal aufrufen lässt:

 nm-connection-editor

Netzwerk Verbindungen

Hinweis: Die Einrichtung der Verbindung für UMTS (Mobile Broadband) geschieht mittels Wizard, der durch die Konfiguration führt. Das als optional verfügbare Programm modemmanager sollte vorab installiert werden. Siehe

 # pacman -S modemmanager

Hinweis: Bei Verwendung von VPN ist eines der verfügbaren Plugins für den NetworkManager entsprechend dem VPN-Server zu installieren. Aktuell werden openconnect, OpenVPN, pptp und vpnc unterstützt. Siehe

 # pacman -Ss networkmanager vpn

Dispatcher

Der NetworkManager-Dispatcher ist Bestandteil des NetworkManager-Paketes und muss nicht separat installiert werden. Damit ist es möglich automatisch Befehle auszuführen sobald eine Verbindung aufgebaut bzw. getrennt wurde. Das geschieht mit einfachen Shell-Scripten, die in /etc/NetworkManager/dispatcher.d/ ausführbar abgespeichert werden. Als Ausgangspunkt kann man dieses Script verwenden.

#!/bin/sh

case "$2" in
       up)
               # wird abgearbeitet nachdem die Verbindung aufgebaut wurde
       ;;
       down)
               # wird abgearbeitet nachdem die Verbindung getrennt wurde
       ;;
esac

Es gibt bereits vorkonfigurierte Dispatcher, welche per pacman installiert werden können.

networkmanager-dispatcher-netfs Dispatcher Script for netfs

networkmanager-dispatcher-ntpd Dispatcher Script for ntpd

networkmanager-dispatcher-openntpd Dispatcher Script for openntpd

networkmanager-dispatcher-sshd Dispatcher Script for sshd

DNS-Server

Der DNS-Server wird in der Datei /etc/resolv.conf festgelegt. Bei dynamischer Zuweisung der IP per DHCP wird automatisch auch ein DNS-Server ermittelt und in die resolv.conf eingetragen. Dabei werden bereits vorhandene Einträge überschrieben. Möchte man einen anderen DNS-Server benutzen, muss man das Überschreiben verhindern bzw. rückgängig machen.

Eine einfache Möglichkeit das Überschreiben zu verhindern ist das immutable flag der resolv.conf zu setzen.

chattr +i /etc/resolv.conf 

Eine weitere Möglichkeit besteht darin, per Dispatcher-Script den/die gewünschten DNS-Server nach dem Aufbau der Verbindung in die resolv.conf einzutragen und somit das Überschreiben rückgängig zu machen. Ein solches Script könnte z.B. so aussehen.

#!/bin/sh
case "$2" in
       up)
               echo "nameserver <IP des DNS-Servers>" > /etc/resolv.conf
      ;;
esac

Ad-hoc-Netzwerke

Um mit dem NetworkManager auch Ad-hoc-Netzwerke einrichten und betreten zu können, ist es notwendig, das Paket dnsmasq zu installieren.

Zusatzinformationen

  • Mit Programm nm-tool kann man sich den Status der momentanen Verbindung und der vom Networkmanager verwalteten Devices anschauen.
  • Das Start/Stop-Skript in /etc/rc.d bietet die Optionen sleep und wake, um alle Verbindungen zeitweilig zu stoppen und wieder aufzunehmen.
 /etc/rc.d/networkmanager sleep # trennt alle aktiven Verbindungen (Devices werden auf Down gesetzt)
 /etc/rc.d/networkmanager wake # nimmt die Verbindung wieder auf bzw. initiert das Suchen nach einer Verbindung neu.

Weblinks