Networkmanager

Aus wiki.archlinux.de
Version vom 7. Juni 2020, 09:38 Uhr von TornaxO7 (Diskussion | Beiträge) (→‎Dienst aktivieren: das Argument "--now" zusätzlich erwähnt)
Zur Navigation springen Zur Suche springen

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

Installation

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