📡 Version 0.1.1 — security overhaul & terminal theme

> network recon, self-hosted 

A free suite of PHP network diagnostic tools you run on your own server — whois, DNS, ping, traceroute, MTR, subnet math and more — hardened against abuse and wrapped in a green-phosphor terminal UI.

Free & MIT licensed  ·  Runs on PHP 7.3+  ·  No build step
Why iptools

Hardened by default

Network tools that shell out are a classic foot-gun. This suite is built so a public deployment can't be turned against you or your network.

🛡

SSRF & internal-probe guard

ping, traceroute, and MTR refuse targets that resolve to private or reserved space, so the box can't be used to map your LAN.

🔑

Nonce-based CSP

A per-request Content-Security-Policy with no unsafe-inline anywhere, plus frame, sniff, and referrer headers.

🏹

CSRF tokens

Every form that runs a command is protected with a hashed, per-session token checked in constant time.

IP-based rate limiting

Server-side limits keyed by client IP — not the session cookie — so they can't be shrugged off by clearing state.

🧱

Strict input validation

Hostnames and IPs are whitelisted and every argument is escaped before it ever reaches the shell.

📝

Private query logs

Optional audit logging lands in a web-inaccessible directory with a deny-all rule — never as loose files in the web root.

🌐

IPv4 & IPv6 throughout

Dual-stack ping and DNS, full IPv6 subnet math with exact 128-bit counts, and an RFC 4193 ULA generator.

🛠

Drop-in, no build

Plain PHP with one shared include. Extract into a web root, point the docroot, done — no Composer, no Node.

The kit

Nine tools, one dashboard

Each tool is a standalone page linked from a shared nav bar and landing page.

whois
Registry recon for domains and IP allocations.
nslookup
DNS lookups — A, AAAA, MX, NS, TXT, PTR.
ping
ICMP echo over IPv4 and IPv6.
traceroute
Hop-by-hop path discovery with a hop cap.
mtr
Live My-Traceroute report, loss and latency per hop.
subnetcalc
IPv4 subnet math from CIDR or a dotted mask.
subnetcalc6
IPv6 subnet math — 128 bits of headroom.
ula-gen
Random RFC 4193 unique local address prefixes.
cheatsheet
IPv4 + IPv6 subnet reference tables, exact values.
The look

Green phosphor, all the way down

Every tool shares one terminal theme — scanlines, glow, and monospace output.

iptools :: whois
── whois example.com ─────
Domain Name: EXAMPLE.COM
Registrar: RESERVED-Internet Assigned Numbers Authority
Updated Date: 2024-08-14T07:01:34Z
Creation Date: 1995-08-14T04:00:00Z
Name Server: A.IANA-SERVERS.NET
Name Server: B.IANA-SERVERS.NET
DNSSEC: signedDelegation

── ping 1.1.1.1 ─────
64 bytes from 1.1.1.1: icmp_seq=1 ttl=57 time=9.84 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=57 time=9.71 ms
--- 1.1.1.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss
Getting started

Up and running in minutes

Drop it on any standard PHP host. The network tools call the usual system binaries.

📋 Requirements

  • Web serverApache or Nginx
  • PHP7.3 or higher, with GMP
  • Binarieswhois, nslookup, ping, traceroute
  • MTR (optional)mtr via passwordless sudo

🚀 Installation

  1. Download & extractUnpack the release into your web root — keep iptools_common.php alongside the tools.
  2. Point your web serverBrowse to index.php for the dashboard, or any tool directly.
  3. Tune the configEach tool has rate-limit, logging, and private-target toggles at the top of the file.
  4. MTR extrasFor the MTR tool, create a writable tmp/ and grant the web user passwordless sudo to mtr.
Download

Get iptools 0.1.1

The complete suite in one small tarball — free forever.

⬇ Download ip-tools-0.1.1.tar.gz
MIT licensed ~20 KB PHP 7.3+ Source on GitHub