selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Wakupator logo

Self-host Wakupator

v1.2.0

Wake-on-LAN daemon with IP spoofing for LAN power management

ReleaseOpen SourceMIT
Updated5 months ago
LanguageC
Setup difficultyAdvanced
Stars
184
Port
13717 (Wakupator registration and monitoring port)
Install with Linux

What is Wakupator?

Wakupator is a lightweight Linux service that lets machines on the same LAN register their IP addresses and ports before shutting down. It then spoofs those IPs, monitors for incoming traffic on the specified ports, and sends Wake-on-LAN magic packets to wake the machine when traffic arrives. It supports both IPv4 and IPv6, TCP and UDP, requires no firewall changes, and has zero runtime dependencies. Machines register via a simple TCP/JSON protocol at shutdown time, typically automated with a systemd service. The host needs CAP_NET_RAW and CAP_NET_ADMIN capabilities. It is configured entirely via command-line flags (host IP, port, interface, timeouts, retry counts). There is no web UI, authentication, or database — it runs as a standalone daemon.

Should you self-host Wakupator?

Wakupator scores 43/100 on selfhost.directory (how scoring works) and ranks #11 of 22 in Home Server. It has 184 GitHub stars.

It shipped 1 stable release in the past year. The latest, v1.2.0, came out on 6 February 2026.

Setup is advanced: plan for several services and some ongoing maintenance. It is MIT-licensed and written mostly in C.

Its closest alternative on selfhost.directory is CasaOS (76/100, 37 388 stars). It scores higher overall, so compare the two before you pick. See Wakupator vs CasaOS side by side.

Features

  • Automatic shutdown detection
  • Configurable retry logic
  • IP address spoofing
  • IPv4 and IPv6 Support
  • Manual wake detection
  • Multiple IP/port registration per machine
  • No firewall configuration required
  • TCP and UDP monitoring
  • Wake-on-LAN automation
  • Zero runtime dependencies

Wakupator README

How to install Wakupator

Install Wakupator with Linux

cmake -B"build" -DCMAKE_BUILD_TYPE=Release cmake --build build

And then, the executable is located in build/wakupator.

Requires CMake and a C compiler. Run resulting binary with required capabilities.

How to configure Wakupator

  • -H, --hostSet the host IP address (IPv4 or IPv6)

    Set the host IP address (IPv4 or IPv6)

    values: IPv4 or IPv6 address

  • -if, --interface-nameeth0Specify the network interface name

    Specify the network interface name

    values: Network interface name

  • -kc, --keep-client1Keep the client monitored if it doesn't start after the configured number of attempts

    Keep the client monitored if it doesn't start after the configured number of attempts

    values: 0 or 1

  • -nb, --number-attempt3Set the number of Wake-On-LAN attempts

    Set the number of Wake-On-LAN attempts

    values: Integer

  • -pd, --probe-delay4Define the delay (seconds) between ARP (IPv4) and NS (IPv6) probes

    Define the delay (seconds) between ARP (IPv4) and NS (IPv6) probes

    values: Seconds

  • -p, --port13717Set the port number for Wakupator to listen on

    Set the port number for Wakupator to listen on

    values: 0-65535

  • -st, --shutdown-timeout600Maximum time (seconds) to wait for a clean shutdown before canceling IP spoofing and monitoring

    Maximum time (seconds) to wait for a clean shutdown before canceling IP spoofing and monitoring

    values: Seconds, -1 for infinite

  • -t, --time-between-attempt30Set the time in seconds between Wake-On-LAN attempts

    Set the time in seconds between Wake-On-LAN attempts

    values: Seconds

Wakupator releases & version history

More in Network Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…