Simple network monitor capable of sending magic Wake-on-LAN packets.
Populate /etc/ethers (man ethers) and/or /etc/hosts (man hosts) and
run with:
wolo --bind 127.0.0.1:3000 --home home.mdThe home.md is used to populate the landing page, see Landing
Page below for how to configure this.
The /network page show an overview of the state of hosts on the network
and the ability to wake them up if they have configured mac addresses.
wolo has a reactive design which works well on mobiles and all the pages work with a basic browser without JavaScript.
The wolo service can take configuration from multiple sources:
- By default we parse
/etc/hoststo find hosts to interact with. Additional hosts files can be specified using--hosts <path>. - By default we parse
/etc/ethersto find and associate hosts with MAC addresses. Additional files of this format can be specified using--ethers <path>. - Any number of optional configuration files can be specified using
--config <path>.
The configuration files are in toml, and have the following format:
# The default socket address to bind to.
# Can be IPv4 or IPv6.
bind = "localhost:3000"
# Simple variant of a list of hosts.
hosts = ["example.com", "another.example.com"]
# Detailed host configuration.
[hosts."example.com"]
# Collection of mac addresses associated with this host.
macs = ["00:11:22:33:44:55"]
# Setting the preferred name will make it so that only this name is
# displayed in the network view for this host.
preferred_name = "example"
# Whether this host should be ignored.
#
# Additional hosts to be ignored can be specified with the
# `--ignore-host` option.
ignore = falseWe expect a landing page to be specified in markdown either through the
home option or the --home cli option. This can be dynamically changed
while the service is running.
# wolo
This is the landing page for your wolo installation. Please edit it by copying
it from the README.md and specify an alternative path using the --home option.
* [Network](/network)
* [Github](https://github.com/udoprog/wolo)Note that arbitrary markdown is not supported. Only the given structures are supported. The first title, paragraphs and links in list will simply be extracted and used to build the landing page. Warnings will be emitted for entries which are currently skipped.