Networkmanager

Aus wiki.archlinux.de

Information zum NetworkManager

Aktuell ist die Version 0.9 verfügbar. Weitere Infos unter [1]

Installation

pacman -S networkmanager

KDE

pacman -S kdeplasma-applets-networkmanagement

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.

System für den NetworkManager einrichten

Zuerst bitte den Daemon network in der /etc/rc.conf löschen bzw. deaktivieren.

Anschließend den Daemon networkmanager eintragen.

DAEMONS=(hwclock syslog-ng !network acpid dbus networkmanager avahi-daemon postfix ...)

Bitte folgendes beachten: dbus vor dem networkmanager starten und danach alle weiteren Netzwerkdienste!

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.

  • community/networkmanager-dispatcher-netfs Dispatcher Script for netfs
  • community/networkmanager-dispatcher-ntpd Dispatcher Script for ntpd
  • community/networkmanager-dispatcher-openntpd Dispatcher Script for openntpd
  • community/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 verhinden 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 nachrüsten

Um mit dem NetworkManager auch Ad-hoc-Netzwerke einrichten und betreten zu können, ist es notwendig, das Paket dnsmasq zu installieren. Ansonsten wird im Systemprotokoll deamon.log folgende Fehlermeldung protokolliert:

<WARN>  start_sharing(): (wlan0/wlan0): failed to start dnsmasq: Could not find dnsmasq binary.
...
<WARN>  nm_device_activate_stage5_ip_config_commit(): Activation (wlan0) Stage 5 of 5 (IP Configure Commit) start sharing failed.
...
<WARN>  nm_device_wifi_set_mode(): error setting card wlan0 to mode 2: Device or resource busy

Weblinks