mosnet / netprobe Public
main https://mosnet.ip-default-ttl.ru/mosnet/netprobe.git
netops ยท Update DNS probe interval and socket timeout defaults a4f9c2e ยท 3 days ago
๐Ÿ“ src Update DNS probe interval and socket timeout defaults 3 days ago
๐Ÿ“ systemd Harden systemd service unit capabilities 2 weeks ago
๐Ÿ“„ CHANGELOG.md Release v1.4.2 2 weeks ago
๐Ÿ“„ LICENSE Initial commit 7 months ago
๐Ÿ“„ README.md Document systemd socket activation flags 1 month ago
README.md

netprobe

Lightweight ICMP, TCP connect, and local DNS resolver probe daemon designed for Debian/Linux edge gateways. Emits Prometheus-compatible textfile metrics with minimal CPU and memory overhead.

Features

  • Non-blocking IPv4/IPv6 TCP connect latency probes
  • UDP DNS A/AAAA resolution timing against local dnsmasq / dnscrypt-proxy
  • Zero external runtime dependencies (pure C11 + POSIX sockets)
  • Hardened systemd unit with CAP_NET_RAW only when ICMP mode is enabled

Build & Install

cc -O2 -Wall -Wextra -std=c11 src/probe.c -o netprobe
install -m 0755 netprobe /usr/local/bin/netprobe
install -m 0644 systemd/netprobe.service /etc/systemd/system/
systemctl enable --now netprobe

Usage

netprobe --dns 127.0.0.1:53 --target 1.1.1.1:443 --interval 15