Smap
Fast port scanner similar to Nmap written in Go with service detection and output in Nmap format
Recon & OSINT8 commands
#port#scanner#nmap#golang#network
Installation
1Install using Go
2Download from releases
3Verify installation
# Using Go
go install github.com/s0md3v/smap@latest
# Verify
smap --versionBasic Usage
Fast port scanning with Nmap-compatible service detection and output
# Scan all ports
smap -p- 192.168.0.1
# Scan common ports
smap 192.168.0.1
# Scan with service detection
smap -sV 192.168.0.1
# Scan multiple hosts from file
smap -iL hosts.txt
# Scan port range
smap -p 1-1000 192.168.0.1
# XML output (Nmap format)
smap -oX results.xml 192.168.0.1
# Grepable output
smap -oG results.gnmap 192.168.0.1Command Reference
8 commands
1Ports to scan (use -p- for all ports)
-p2Scan all 65535 ports
-p-3Service version detection
-sV4File with host list
-iL5XML output (Nmap format)
-oX6Grepable output
-oG7Normal output
-oN8Scan top N ports
-top-portsWhen to Use
1
Quick port scanning when Nmap is unavailable2
Automated pipelines requiring Nmap-compatible output3
Fast service discovery on multiple hosts4
Port scanning in Go-based automation workflows5
Compatibility with tools expecting Nmap output formatNotes & Tips
1
Written in Go for faster performance than Nmap2
Output is fully compatible with Nmap format3
Supports both TCP and SYN scan modes4
Lightweight alternative to Nmap for simple scansCommon Errors & Solutions
No results returned
Try -p- for all ports or check host connectivity
Permission denied
SYN scan requires root; use without -sS for TCP connect scan