Install proc-trace-net

Get up and running in seconds.

โฌ‡๏ธ
Pre-built Binary
Static binary, no dependencies. Download and run.
Linux amd64 ยท arm64
๐Ÿน
Build from Source
Requires Go 1.22+. Produces a native static binary.
Any Linux
๐Ÿณ
Docker Build
No local Go install needed. Uses build.sh + Docker.
Any Linux
Linux only. proc-trace-net uses the kernel's conntrack netlink interface โ€” a Linux-specific mechanism. It does not run on macOS or Windows.
RequirementNotes
CONFIG_NF_CONNTRACK=yStandard on any distro running Docker, iptables, or nftables
root or CAP_NET_ADMINRequired to bind the conntrack netlink socket
Linux kernel ≥ 3.6conntrack multicast groups stable since 3.x; any modern distro qualifies

Download & Run

Fully static binaries โ€” no libc, no runtime dependencies. Download, mark executable, run with sudo.

Linux  โ€”  amd64 (x86-64)
$ curl -Lo proc-trace-net https://github.com/binRick/proc-trace-net/releases/latest/download/proc-trace-net-linux-amd64
$ chmod +x proc-trace-net
$ sudo mv proc-trace-net /usr/local/bin/
Linux  โ€”  arm64 (Raspberry Pi, AWS Graviton, etc.)
$ curl -Lo proc-trace-net https://github.com/binRick/proc-trace-net/releases/latest/download/proc-trace-net-linux-arm64
$ chmod +x proc-trace-net
$ sudo mv proc-trace-net /usr/local/bin/
Tip: verify the binary works before moving it โ€” proc-trace-net -h does not require root and exits immediately.
verify install
$ proc-trace-net -h
๐ŸŒ proc-trace-net dev โ€” system-wide network connection tracer for Linux

Usage: proc-trace-net [-ctUurQ46] [-o FILE] [-p PID[,PID,...] | CMD...]

  -c    force-enable ANSI color output
  -t    show close timing on connection end
  -U    show TCP state updates
  -u    show owning user of each connection
  -r    reverse DNS lookup on remote addresses
  -Q    suppress error messages
  -4    IPv4 connections only
  -6    IPv6 connections only
  -o    append output to FILE
  -p    filter by PID(s), comma-separated
  ...

Go 1.22+ required

Produces a fully static native binary. CGO_ENABLED=0 ensures no libc dependency โ€” the binary runs on any Linux system of the same architecture.

build from source
$ git clone https://github.com/binRick/proc-trace-net
$ cd proc-trace-net
$ CGO_ENABLED=0 go build -ldflags="-s -w" -o proc-trace-net .
$ sudo mv proc-trace-net /usr/local/bin/
Static by default: the -ldflags="-s -w" flags strip debug info and symbol tables, producing a smaller binary. CGO_ENABLED=0 ensures no dynamic library dependencies. See Building โ†’ for full cross-compilation details.

No local Go required

Use build.sh to produce static binaries for both amd64 and arm64 inside a golang:1.22-alpine container โ€” no Go toolchain needed on the host.

docker build
$ git clone https://github.com/binRick/proc-trace-net
$ cd proc-trace-net
$ chmod +x build.sh && ./build.sh
Building proc-trace-net ...
  โ†’ linux/amd64
  โ†’ linux/arm64
Done. Binaries in ./dist/
$ sudo cp dist/proc-trace-net-linux-amd64 /usr/local/bin/proc-trace-net