Skip to content
githubflyideasPublic

About

A lightweight SmokePing alternative in a single binary with VRF & source-address support. Plain JSON history, text-config target management, Perfect for VyOS, DANOS & MikroTik. deployed in 30 seconds.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vrf-ping

vrf-ping

A lightweight SmokePing alternative with optional per-target VRF and source-address binding. ICMP/TCP probes, latency distributions, packet loss and history. Single Go binary, plain JSONL storage.

vrf-ping

Actual UI from a native development build, measuring six TCP targets in an isolated loopback lab.

Install

Linux amd64; other builds are available in Releases.

set -e
curl -fLO https://github.com/githubflyideas/vrf-ping/releases/download/v3.3.1/vrf-ping-linux-amd64.tar.gz
curl -fLO https://github.com/githubflyideas/vrf-ping/releases/download/v3.3.1/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMS
tar -xzf vrf-ping-linux-amd64.tar.gz
./vrf-ping --listen 127.0.0.1:8517

Build from source: go build -o vrf-ping .. Run the binary directly on the host. Docker is not supported.

Targets

Paths are relative to the working directory. Changes reload automatically, normally within three seconds.

targets/ping.list

1.1.1.1 ens18
1.1.1.1 eth0-zone1 vrf=zone1
8.8.8.8 ens18-source source=192.168.10.2
8.8.8.8 ens18-base vrf=base_vrf0 source=192.168.10.2

targets/tcp.list

1.1.1.1:443 eth0-zone1-https vrf=zone1 source=192.168.10.2

Format: target[:port] name [vrf=NAME] [source=LOCAL_IP].

  • Names must be unique. ens18 and eth0-zone1 are labels, not interface bindings.
  • Both options are independent and optional. Omit them for the default routing domain and automatic source selection. Replace example source IPs with local addresses valid in the selected routing domain.
  • VRF requires Linux, an existing VRF and sufficient socket permissions. The program does not configure networking or silently fall back on binding failure. ICMP is currently IPv4-only.

Run and Web UI

./vrf-ping --listen 0.0.0.0:8517 user=admin passwd='YOUR_PASSWORD'

Use --localhost for loopback-only access; --help lists options. Restrict access to trusted management networks.

Authenticated users can edit an existing target under Probe routing. Web writes are disabled when login is not configured.

Web settings are stored in targets/routing-options.json and override list-file routing options, including empty values. Remove a target's JSON entry to restore list-file control. Lists use source=; JSON uses source_address. Failed reloads retain the active configuration and retry.

Data and upgrades

data/ contains daily JSONL files with a default retention of 300 days. Different VRF/source contexts have separate histories. Clearing both options returns to the target's default-context history.

Back up the complete targets/ and data/ directories, stop the old process, replace the binary and retain the working directory. Configuration and data remain compatible with json-ping v3.2.0; no format migration is required.

Testing · Apache-2.0. Linux VRF behavior is tested; native VyOS images are not certified.

About

A lightweight SmokePing alternative in a single binary with VRF & source-address support. Plain JSON history, text-config target management, Perfect for VyOS, DANOS & MikroTik. deployed in 30 seconds.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages