MPD unter Debian Lenny
Mit MPD, dem Music Player Daemon, steht Anwendern unter Debian GNU/Linux eine großartige Infrastruktur zum Abspielen von Musikdateien zur Verfügung. Der Server läuft im Hintergrund und kümmert sich um die Abarbeitung von Playlisten, während sich verschiedene Clients via TCP auf verbinden können und die User-Interaktion übernehmen.
Es stehen Clients für das Terminal (Kommandozeile), als Text-Interface, für GNOME, für LCD-Panel und als Programmierschnittstelle zur Verfügung. Dem Einsatz sind damit keine Grenzen gesetzt. Die verschiedenen Client kommunizieren mit dem Server über TCP.
Wer dieses System sicher aufsetzen möchte und den Server nur auf localhost horchen läßt, erlebt allerdings unter Debian Lenny eine herbe Enttäuschung. Die Clients können sich nicht mehr mit dem Server verbinden, und das, obwohl sich per Telnet kontrollieren läßt, daß der Server läuft und auf Anfragen reagiert.
Für die Clients ist in diesem Anwendungsfall die Umgebungsvariable
MPD_HOST
passend gesetzt. Sie enthält localhost als Namen
des Rechners, auf dem der MPD-Server läuft und das Paßwort, das für die
Verbindung zu diesem benötigt wird:
MPD_HOST=geheim@localhost
Das zugrundeliegende Problem liegt in der Datei /etc/hosts
,
denn unter Debian steht dort localhost sowohl für IPv4 als auch für IPv6
eine Adresse. Die MPD-Clients haben damit technisch gesehen kein Problem
und versuchen munter die IPv6-Adressen. Wer allerdings kein IPv6
konfiguriert hat, wird damit Probleme bekommen.
127.0.0.1 localhost# The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback
Im Endeffekt können die Clients dadurch keine Verbindung zum Server aufbauen und beenden sich mit einer Fehlermeldung. Nachdem der zweite Eintrag entfernt ist, läuft alles wieder so wie man es sich vorstellt.