Discover & Monitor Your Network with This Self-Hosted Open Source Tool [YouTube Release]

Additional Resources:

In this video, I walk through how to self-host NetAlertX, an open-source network discovery and monitoring tool that discovers devices on your network, even some your firewall might miss. Many plugins available to enrich data and you can get alerts when something changes.

NetAlertX

Connect With Us

Lawrence Systems Shirts and Swag

►👕 Lawrence Systems

AFFILIATES & REFERRAL LINKS

Amazon Affiliate Store
:shopping_cart: Lawrence Systems's Amazon Page

UniFi Affiliate Link
:shopping_cart: Ubiquiti Store

All Of Our Affiliates help us out and can get you discounts!
:shopping_cart: Partners We Love – Lawrence Systems

Gear we use on Kit
:shopping_cart: Kit

Use OfferCode LTSERVICES to get 10% off your order at
:shopping_cart: Tech Supply Direct - Premium Refurbished Servers & Workstations at Unbeatable Prices

Digital Ocean Offer Code
:shopping_cart: DigitalOcean | Cloud Infrastructure for Developers

HostiFi UniFi Cloud Hosting Service
:shopping_cart: HostiFi - Launch UniFi and UISP in the Cloud

Protect your privacy with a VPN from Private Internet Access
:shopping_cart: https://www.privateinternetaccess.com/pages/buy-vpn/LRNSYS

Patreon
:money_bag: https://www.patreon.com/lawrencesystems

Chapters
00:00 Do you know what’s on your network?
01:17 What Is and why use NetalertX
03:18 NetalertX Docker Compose Setup
03:42 Configuring NetalertX Networking
05:58 Running and Scheduling Network Discovery Scans
09:00 NetalertX Plugins
09:38 UniFi Plugin
10:33 Discovered Devices and Monitoring
13:00 Manual and Auto NMAP Scans
14:50 Import Export and Maintenance

Here is the docker compose I use for my Netalertx setup:

services:
  netalertx:
    container_name: netalertx
    image: "jokobsk/netalertx:latest"
    network_mode: "host"
    restart: unless-stopped
    volumes:
      - ./config:/app/config
      - ./db:/app/db
      - ./logs:/app/log
      - type: tmpfs
        target: /app/api
    environment:
      - TZ=America/Detroit
      - PORT=20211

Here is a stupid question from a Docker luddite:

Could I install this on the same VM that is running Kasm? I would guess the answer is yes, but just a guess.

In general you can run as many containers as you want with enough resources available. :grinning_face:

Do note that running a tool like this and allow it to access multiple networks/vlans it could require additional network configuration which could conflict with your Kasm installation.

1 Like

Thanks, I didn’t think about the networking. I’ll have to explore this in greater detail before I start combining containers.

Yes. kasm does not listen on port 20211.

Great video and tool!

I have it deployed via Docker and it’s scanning everything on the current VLAN. I’m trying to get it to scan my other VLANs. I have pfSense and on the VLAN that I wanted scanned, I have this rule:
Screenshot 2025-06-09 at 08-42-42 TheWall.jrfam.net - Firewall Rules LAN

It’s not discovering. I’m not sure if the port is right, that’s the web interface port.

Tom, thanks for the video. How does netalert compare to runzero? I am a homelabber and really want a self-hosted tool.

Runzero is going to be much more extensive because they have put a lot of engineering into how they do both discovery and identity of the devices.

I have the question, trying to discover systems on different VLANs. I checked and found I could ping other systems on different vlans from the nextalertx container but those systems are not discovered by nextalertx.

NetalertX is primarily using ARP for network discovery and you need OSI layer 2 level access for that to work.

From what I’m reading and learning, I would need to tag that port that the docker host for NetAlertX is on for the other VLANs?

Would using macvlans solve the problem? If not, any other suggestions to try?