惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
C
Check Point Blog
J
Java Code Geeks
腾讯CDC
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
Engineering at Meta
Engineering at Meta
罗磊的独立博客
Last Week in AI
Last Week in AI
B
Blog
IT之家
IT之家
S
SegmentFault 最新的问题
D
DataBreaches.Net
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
GbyAI
GbyAI
博客园 - 聂微东
U
Unit 42
有赞技术团队
有赞技术团队
Y
Y Combinator Blog
MyScale Blog
MyScale Blog

Show HN

GitHub - astefanutti/shaderbang: Shebang for Shaders Show HN: Generate Claude Code Workflows using Spec Driven Development approach GitHub - nixys/nxs-universal-chart: The Helm chart you can use to install any of your applications into Kubernetes/OpenShift Show HN: AI agents for UK GDAD PCF roles and their skills The Two Pillars: Mixer Mode and Meta-Software in the Reorganization of Software Work After AI GitHub - JaiCode08/teleport-env What 1,000+ Harness Experiments Taught Me About Self-Improving Agents Show HN: Liiists, a Markdown-first, iOS and CLI list app SwiperTab – Get this Extension for 🦊 Firefox (en-US) GitHub - kouhxp/fftext: Summarize, explain, fact-check, or translate any text, URL, or file. No GPU. No cloud. One command GitHub - sweetpad-dev/sweetpad: Develop Swift/iOS projects using VSCode GitHub - dogmaticdev/IRON: IRON a.k.a. Intermediate Representation Object Notation is a Interpreter/Database that is used to create Programming Languages. GitHub - sjhalani7/vaen: Package your AI coding harness into a portable .agent file, and share it across repos, teams, & the community without ever having to copy-paste instructions, skills, MCP config, or secrets. Show HN: Gandalf the Grader Show HN: Citadeld – replay any CI failure locally from a single file GitHub - tdortman/cuSBF: High-Performance GPU Super Bloom Filter coral-ai/claude-code-token-xray at main · Coral-Bricks-AI/coral-ai GitHub - ulyssestenn/funes: Funes is a Git-based framework for LLM-managed knowledge work: an AI Librarian ingests raw sources, builds an interlinked Markdown knowledge base, and uses it to produce cited reports, analyses, and other outputs. GitHub - ThatXliner/gah: Git Add Hunk, built for agents to use GitHub - harmont-dev/harmont-cli: Command-line client for the Harmont CI platform GitHub - brooksmcmillin/mcp-authflow: OAuth 2.0 Authorization Server framework for MCP servers GitHub - javaid-codes/audit-supply-chain-agents GitHub - amorey/gochan: A small library of common channel architectures for Go, inspired by Rust GitHub - arifozgun/OpenGem: Free, Open-Source AI API Gateway with Gemini, OpenAI & Anthropic Compatibility in 1 file GitHub - Pranesh950/BioPetals: 🌸 Run BIOxAI models at home, BitTorrent-style. Fine-tuning and inference up to 10x faster than offloading GitHub - cnguyen14/bounty-doctor: Diagnose a GitHub bounty issue before you waste hours: detects honeypot scam repos, AI-bot attempt swarms, and stale contests. Show HN: CoreMCP – MCP Server for On-Prem DBs Show HN: KittyHTML – Render HTML/CSS as an inline image in your terminal GitHub - bingud/filemat: Web-based file manager Show HN: TruthLens – Free multi-signal deepfake image detector
GitHub - ostefani/subnetlens: A fast, concurrent network ...
2026-04-11 · via Show HN

Go Version CLI Interface License

Bubble Tea Cobra

A fast, concurrent network scanner with a TUI and plain-text CLI, built in Go.

Supports multiple discovery methods:

  • TCP connect scan (no elevated privileges required)
  • ICMP echo (requires root / administrator)
  • ARP scan (Linux/macOS; Windows requires Npcap)
  • mDNS (passive) — listen for local service announcements

Features

  • Host discovery (TCP, ICMP, ARP)
  • Port scanning (TCP connect)
  • OS & Device Fingerprinting: Heuristically detects operating systems and device types.
  • Vendor & MAC Resolution: Uses OUI databases to identify device vendors and detects randomized MAC addresses.
  • Streaming TUI: A visual interface built with Charm's Bubbletea.
  • Plain Text Mode: Script-friendly output.
  • Single binary

Preview

SubnetLens TUI

OUI database

The file scanner/oui.csv maps MAC address prefixes to device vendors. It is obtained from the IEEE Registration Authority and is included in this repository so that both local builds and the release binary ship with full vendor resolution.

If you need to refresh it, download the latest CSV from the link above and replace scanner/oui.csv.

Quick Start

If you want to download repo and build your binary, follow the instruction below. To run a downloaded precompiled binary, read further.

To clone the repository and build from source, follow the instructions below. To use a precompiled binary, see Install precompiled build.

Note: On macOS and Linux, run with sudo to enable ARP and ICMP. On Windows, run the terminal as Administrator. TCP scan requires no elevated privileges.

Development

git clone https://github.com/ostefani/subnetlens
cd subnetlens

# ---Install dependencies---
go mod tidy

# ---Build---
go build .
# or
go build -o subnetlens

# ---Run---
subnetlens scan <target>

Debug mode

# Into console
sudo SLENS_DEBUG=1 ./subnetlens scan <target> --plain
# Into file
sudo SLENS_DEBUG=1 ./subnetlens scan <target> --plain 2>debug.log
# Print from file
cat debug.log

Testing

go test ./...
go test -race ./...

The current test suite includes regression coverage for:

  • models.Host sanitization, concurrent mutation, snapshot safety, and scan option defaults
  • host registry merge behavior for late ARP updates and duplicate events
  • engine coordination, so pre-ready host updates do not emit premature callbacks, and preheating is skipped when target expansion fails
  • scanner resource planning, resolver socket accounting, and local discovery helpers
  • TUI viewport, batching, cached rendering, and local-machine presentation

Update dependencies

Install with Go

cd subnetlens
go install .

Install precompiled build

sudo mv subnetlens /usr/local/bin/

Usage

Scan Your Own Machine

Check interfaces and their assigned IPs. Scan only the subnet that matches your WiFi interface (en0) to stay on your home network.

ip addr                      # Linux
ifconfig  | grep "inet "     # macOS
subnetlens scan [subnet] [flags]

Flags:

  • -p, --ports string Comma-separated ports to scan (default: common 23 ports)
  • -t, --timeout int Per-connection timeout in ms (default: 500)
  • -c, --concurrency int Max concurrent port scan and banner probes (default: 100)
  • --discovery-concurrency int Max concurrent host discovery probes (0 reuses --concurrency)
  • -b, --banners Grab service banners
  • --plain Plain text output (no TUI)
  • --all-alive Show all discovered hosts, including those that respond with TCP connection errors.

Platform Support

Feature Linux macOS Windows
TCP scan
ICMP ✔ (root) ✔ (root) ✔ (admin)
ARP ✔ (Npcap required)
mDNS not tested

Windows prerequisite: Active ARP scanning requires Npcap — a kernel-level packet capture driver. If you have Wireshark installed, Npcap should be already present.

Examples:

  subnetlens scan <IP>
  subnetlens scan <IP start>-<IP end>
  subnetlens scan <IP> --ports 22,80,443,8080
  subnetlens scan <IP> --plain --banners
  subnetlens scan <IP> --concurrency 100 --discovery-concurrency 400 --timeout 300

Project Structure

subnetlens /
├── main.go               # Entrypoint
├── cmd/
│   └── root.go           # Cobra CLI commands
├── scanner/
│   ├── arp.go
│   ├── discovery.go
│   ├── engine.go
│   ├── helpers.go
│   ├── icmp.go
│   ├── osdetect.go
│   └── oui.csv           # bundled IEEE OUI data used for vendor resolution
├── models/
│   └── models.go
└── ui/
    └── tui/
        └── tui.go

Roadmap

  • ARP-based host discovery (requires raw sockets / root)
  • MAC address vendor lookup
  • mDNS listening
  • Add tests
  • Scan profiles: --all-alive
  • JSON / CSV export (--output result.json)
  • UDP port scanning (Pro)
  • GUI with interactive network node graph (Pro)
  • subnetlens watch — re-scan on interval, alert on changes (Pro)

Contributing

Please see CONTRIBUTING.md for contribution and PR guidelines

License

MIT © 2026 Olha Stefanishyna

Disclaimer: This tool is intended for authorized network testing and diagnostics only. Do not scan networks or systems without explicit permission. Use responsibly.

SubnetLens Pro

An upcoming proprietary extension of SubnetLens focused on advanced scanning capabilities. Designed for users who need deeper visibility, automation, and continuous monitoring.

Planned features

  • UDP port scanning and protocol-specific probing
  • Extended service fingerprinting
  • Interactive GUI with network visualization
  • subnetlens watch — continuous scanning with change detection and alerts
  • Advanced output formats and reporting

The core project will remain open source and fully usable. Pro features are designed for advanced analysis and extended workflows.