arper
is a tool that listens for Arp response packets and keeps track on the
devices on the network.
- Notification support (Discord Webhook API)
- Hostname lookup
- Hardware vendor lookup
- Persistant storage
Root privileges are required since arper
listen on raw packets on the specified
network interface.
sudo arper [flags]
Configurations can be set in multiple ways following the precedence order below.
- Command line flag
- Config file
- Default value
arper doesn't create any configuration file, but looks for ./arper.yaml
first and
/etc/arper/arper.yaml
second.
Configuration | CLI Flag | Config file key | Default |
---|---|---|---|
Listening interface | --iface [inteface] |
Iface |
eth0 |
Database filepath | --database-filepath [path] |
DatabaseFilepath |
/var/lib/arper/database.json |
Discord webhook URL | --discord-webhook-url [url] |
DiscordWebhookURL |
(empty) |
docker build -t arper .
docker run \
--rm -it \
--net host \
-v $(pwd)/database.json:/var/lib/arper/database.json \
-v $(pwd)/arper.yaml:/arper.yaml \
arper
Go version >= 1.18 is required.
go mod tidy
go build ./cmd/arper