Giter Club home page Giter Club logo

watchyourlan's Introduction

WatchYourLAN


Docker Go Report Card Maintainability Docker Image Size (latest semver) Docker Pulls

Lightweight network IP scanner with web GUI

Screenshot_v0.6

Quick start

Replace $YOURTIMEZONE with correct time zone and $YOURIFACE with network interface you want to scan. Network mode must be host. Set $DOCKERDATAPATH for container to save data:

docker run --name wyl \
	-e "IFACE=$YOURIFACE" \
	-e "TZ=$YOURTIMEZONE" \
	--network="host" \
	-v $DOCKERDATAPATH/wyl:/data \
    aceberg/watchyourlan

Web GUI should be at http://localhost:8840

Config

Configuration can be done through config file or environment variables

Variable Description Default
ARP_TIMEOUT Per host timeout for arp-scan (in milliseconds) 500
AUTH Enable Session-Cookie authentication false
AUTH_EXPIRE Session expiration time. A number and suffix: m, h, d or M. 7d
AUTH_USER Username ""
AUTH_PASSWORD Encrypted password (bcrypt). How to encrypt password with bcrypt? ""
COLOR Background color: light or dark dark
DBPATH Path to Database /data/db.sqlite
GUIIP Address for web GUI 0.0.0.0
GUIPORT Port for web GUI 8840
HISTORY_DAYS Keep devices online/offline history for (days) 30
IFACE Interface to scan. Could be one or more, separated by space. Currently docker0 is not allowed, as arp-scan wouldn't work with it correctly enp1s0
IGNOREIP If you want to detect unknown hosts by MAC only, set this variable to "yes" no
LOGLEVEL How much log output you want to see ("short" or "verbose") verbose
SHOUTRRR_URL Url to any notification service supported by Shoutrrr (gotify, email, telegram and others) or Generic Webhook ""
THEME Any theme name from https://bootswatch.com in lowcase or additional (emerald, grass, sand) solar
TIMEOUT Time between scans (seconds) 60 (1 minute)

Config file

Warning

Config file format has been migrated to YAML in release v1.0.0.

Config file path is /data/config.yaml. All variables could be set there. Example:

color: light
dbpath: /data/db.sqlite
guiip: 192.168.2.1
guiport: "8840"
iface: enp1s0
ignoreip: "no"
loglevel: short
shoutrrr_url: gotify://192.168.2.1:8083/AwQqpAae.rrl5Ob/?title=Unknown host detected&DisableTLS=yes
theme: solar
timeout: 120

Options

Key Description Default
-c Path to config file /data/config.yaml
-n Path to node modules (see below) ""

Local network only

By default, this app pulls themes, icons and fonts from the internet. But, in some cases, it may be useful to have an independent from global network setup. I created a separate image with all necessary modules and fonts. Run with Docker:

docker run --name node-bootstrap          \
    -p 8850:8850                          \
    aceberg/node-bootstrap
docker run --name wyl \
	-e "IFACE=$YOURIFACE" \
	-e "TZ=$YOURTIMEZONE" \
	--network="host" \
	-v $DOCKERDATAPATH/wyl:/data \
    aceberg/watchyourlan -n "http://$YOUR_IP:8850"

Or use docker-compose

Thanks

watchyourlan's People

Contributors

aceberg avatar adamadavidson avatar rubyowo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.