bk99.de entertain the web since 1997

Homeserver bei Leerlauf schlafen legen

Zusammenfassung

Daniel Gross kombiniert Idle-Erkennung, Unicast-Wake-on-LAN und einen ARP-Stellvertreter für einen schlafenden Homeserver.

Ideen

  • Ein Cronjob bewertet angemeldete Nutzer und aktive Backupverbindungen als Leerlaufkriterien.
  • Unicast-Pakete können geeignete Netzwerkkarten aus Suspend-to-RAM wecken.
  • Schlafende Server beantworten keine ARP-Anfragen nach Ablauf fremder Caches.
  • Ein Raspberry Pi antwortet stellvertretend mit der MAC-Adresse des Servers.
  • Avahi kann Dienste des schlafenden Rechners weiterhin per mDNS ankündigen.

Einsichten

  • Energiesparen im Netzwerk verlangt Stellvertretung für schlafende Kontrollprotokolle.
  • Wake-on-LAN scheitert häufig vor dem Wecksignal an Namens- oder Adressauflösung.
  • Unerwünschter Broadcastverkehr kann aggressive Energiesparpläne unbrauchbar machen.

Fakten

  • Die Lösung benötigt ein ständig laufendes Linux-Gerät im selben Netz.
  • Der ARP-Stand-in umfasst ungefähr 50 Zeilen Ruby-Code.
  • Der beschriebene IPv4-Ansatz unterstützt IPv6-Nachbarerkennung nicht.

Empfehlungen

  • Prüfe Unicast-Wake-Unterstützung deiner Netzwerkkarte mit ethtool.
  • Spiegle Netzwerkverkehr, um unerwartete Weckpakete außerhalb des schlafenden Hosts zu finden.

Referenzen

Originalartikel lesen →