Netlyser
Netlyser copied to clipboard
Lightweight, a simple yet, Presence Detection Tool written in Rust, based on nmap, built for UNIX, made with <3
Netlyser
Lightweight, a simple yet, Presence Detection Tool written in Rust, based on nmap
, built for UNIX, made with <3
What It Is
Features
How To Use
Installation
Requirements
Dependencies
About
Collaborators
Branches
Copyright & Licensing
Contributing
Contact
What It Is
Netlyser is a Rust tool for Presence Detection in your private network.
Screenshots
Notification
Database
Features
-
Notify the device behaviour (connect / disconnect) using
dbus
-
Store the all of network behaviours (name, type, ip, mac, status) in
sqlite
database log file -
Mapping of the MAC addresses to labels to host devices
How To Use
Usage
netlyser 0.1.0
Network observing tool for your sweet home
USAGE:
netlyser [FLAGS] [OPTIONS] --config-file <config-file> --network <network> --output-path <output-path>
FLAGS:
-h, --help Prints help information
-q, --quiet Quiet mode (Overrides verbose mode)
-V, --version Prints version information
-v, --verbose Verbose mode (Warn: -v, Info: -vv, Debug: -vvv, Trace: -vvvv)
OPTIONS:
-c, --config-file <config-file> Input filepath for the config file, e.g '~/.config/netlyser.conf
-n, --network <network> CIDR notation of the network you want to scan, e.g.'192.168.1.0/24'
-o, --output-path <output-path> Output filepath for the SQLite database file, e.g. '/var/log/sweet-home.db'
Config
general:
interval: 60000
round: 5
notify_on_connect: true
notify_on_disconnect: true
hosts:
- mac: "01:23:45:67:89:AB"
name: "Furkan"
device: "iPhone"
- mac: "BA:98:76:54:32:10"
name: "Burak"
device: "iPad"
Interval: nmap
check delay in ms
Round: nmap
round count to get more accurate results
Installation
- Clone the project to your computer and navigate to folder by executing the following command:
$ git clone https://github.com/Dentrax/Netlyser.git && cd ./Netlyser/
- Build the all project using this command
$ cargo build --release
- Run the Netlyser with following command
$ ./target/release/netlyser
Known Issues
-
dbus
won't send notifications to current user session in privileged mode -
In
unprivileged
mode, it will not work as you expect (see here) in every situation -
nmap
runs several rounds to get better and more accurate results -
Not works in Windows (hard-coded binding stuffs)
TO-DO
-
[ ] Add unit tests
-
[ ] Support for Windows
-
[ ] Customizable notification structure
Requirements
-
nmap
: is used to discover hosts and services on a computer network by sending packets and analyzing the responses. Learn More -
You will need a computer on which you have the rights to compile files
Dependencies
- Please see the Cargo.toml file for dependency informations
About
Netlyser was created to serve three purposes:
Netlyser is your painless and lovely network presence observer tool
-
To act as a painless Presence Detection Tool
-
To provide a simplest and easiest way to observing the home network
-
There is a source for you to develop your own
nmap
based tools
Collaborators
Project Manager - Furkan Türkal (GitHub: Dentrax)
Branches
We publish source for the [Netlyser] in single rolling branch:
The master branch is extensively tested and makes a great starting point. Also tracks live changes by commits.
Copyright & Licensing
The base project code is copyrighted by Furkan 'Dentrax' Türkal and is covered by single licence.
All program code (i.e. .rs) is licensed under MIT License unless otherwise specified. Please see the LICENSE.md file for more information.
References
While this repository is being prepared, it may have been quoted from some sources that already mentioned on specific files.
If there is an unspecified source or if you think that I made a copyright infringement, please contact with me.
Contributing
Please check the CONTRIBUTING.MD file for contribution instructions and naming guidelines.
Contact
Netlyser was created by Furkan 'Dentrax' Türkal
You can contact by URL: CONTACT
Best Regards