Masscan
github.com
What it is
Masscan is a free command-line TCP port scanner for scanning many machines across wide address ranges. The project says one machine can transmit 10 million packets per second. It supports asynchronous transmission, arbitrary port and address ranges, and scanning IPv4 and IPv6 together without a separate IPv6 mode. Banner checks cover protocols and services including FTP, HTTP, IMAP4, memcached, POP3, SMTP, SSH, SSL, SMBv1, SMBv2, Telnet, RDP and VNC. Results can be saved as XML, binary, grepable, JSON or list output. Its usage and output are intended to be familiar to Nmap users, with some Nmap-compatible options. Masscan runs on Linux, macOS and Windows and is available for self-hosting. The project describes PF_RING DNA support for high-speed transmission and says it can use PF_RING ZC when the adapter name indicates it. It is free software under the GNU Affero General Public License version 3, whose notice states there is no warranty. Users must specify ports and target IP addresses or simple ranges; DNS names are not accepted. The README warns that its custom TCP/IP stack can conflict with the local stack and describes using a separate source IP or firewalling its source port.
Spec sheet
- What it does
- Masscan is an Internet-scale TCP port scanner intended to discover open ports across very large address spaces.Read 15 Oct 2026 · github.com
- Purpose
- Masscan is an Internet-scale TCP port scanner designed for wide-range scanning of many machines.Read 5 Oct 2026 · github.com
- Intended users
- The README describes Masscan as tuned for scanning many machines across wide ranges, while Nmap is described as designed for intensive scanning of a single machine or small range.Read 5 Oct 2026 · github.com
- Platforms
- Linux is the primary target; the code also runs on Windows and macOS, and the README gives build instructions for FreeBSD.Read 5 Oct 2026 · github.com
- Integrations
- The project describes PF_RING DNA support for high-speed packet transmission and says Masscan can use PF_RING ZC when the adapter name indicates it.Read 5 Oct 2026 · github.com
- Security
- The project says it offers a vulnerability bounty and uses functions such as safe_strcpy() in place of strcpy().Read 5 Oct 2026 · github.com
- License
- Masscan is free software under the GNU Affero General Public License version 3, with no warranty stated in the license notice.Read 5 Oct 2026 · github.com
- Maker
- The repository credits Robert David Graham as the creator and gives his contact email and @ErrataRob account.Read 15 Oct 2026 · github.com
- Address and port ranges
- Masscan accepts arbitrary IP address ranges and port ranges, including IPv4 and IPv6 examples.Read 15 Oct 2026 · github.com
- Asynchronous scanning
- It sends SYN packets asynchronously and uses a design comparable to scanrand, Unicornscan and ZMap.Read 15 Oct 2026 · github.com
- Banner checks
- Banner checking is supported for FTP, HTTP, IMAP4, memcached, POP3, SMTP, SSH, SSL, SMBv1, SMBv2, Telnet, RDP, and VNC.Read 5 Oct 2026 · github.com
- Banner protocols
- Banner checking is documented for FTP, HTTP, IMAP4, memcached, POP3, SMTP, SSH, SSL, SMBv1, SMBv2, Telnet, RDP and VNC.Read 15 Oct 2026 · github.com
- Banner-grab hazard
- The host stack can send reset packets after SYN-ACK responses, terminating connections before Masscan captures banners.Read 15 Oct 2026 · github.com
- Build requirements
- The basic Linux build requires Git, Make and a C compiler such as GCC or Clang, with no other major dependencies described.Read 15 Oct 2026 · github.com
- Compatibility
- Masscan's usage and output are designed to be familiar to Nmap users, with some Nmap-compatible options.Read 5 Oct 2026 · github.com
- Configuration export
- The --echo option prints the current configuration so it can be saved and reused as an input configuration file.Read 15 Oct 2026 · github.com
- Copyright date
- The licence notice identifies copyright as 2013 Robert David Graham.Read 15 Oct 2026 · github.com
- Custom TCP/IP stack
- Masscan includes its own ad hoc TCP/IP stack, which can conflict with the host operating system stack.Read 15 Oct 2026 · github.com
- Distributed scans
- The Debian manual documents --shard for dividing a scan across machines and resume indexes for assigning chunks to workers such as Amazon EC2 instances.Read 15 Oct 2026 · manpages.debian.org
- High-speed integration
- PF_RING ZC can be used beyond about two million packets per second with a compatible Intel 10-gigabit adapter and drivers.Read 15 Oct 2026 · github.com
- IPv6
- IPv4 and IPv6 can be scanned together, without a separate IPv6 mode.Read 5 Oct 2026 · github.com
- Kali package
- Kali lists Masscan as a TCP port scanner installable with sudo apt install masscan, with an installed size of about 516 KB and libc6 and libpcap dependencies.Read 15 Oct 2026 · kali.org
- Licence
- Masscan is released under the GNU Affero General Public License version 3.Read 15 Oct 2026 · github.com
- Limit: command-line interface
- The same review lists the lack of a graphical interface and the need for command-line operation as disadvantages.Read 15 Oct 2026 · scanitex.com
- Limit: documentation depth
- A university evaluation found Masscan's documentation mainly consisted of its README and C source, with less documentation than ZMap.Read 15 Oct 2026 · net.in.tum.de
- Limit: host inspection
- The same evaluation records that Masscan does not provide operating-system detection and offers a smaller capability set than Nmap.Read 15 Oct 2026 · net.in.tum.de
- Limit: network overload
- A Masscan usage review warns that setting the transmission rate too high can overload networks or cause IP blocking.Read 15 Oct 2026 · scanitex.com
- Limit: shallow vulnerability coverage
- A 2025 IoT-security paper describes Masscan and similar scanners as broad discovery tools that do not detect deeper firmware or device-specific vulnerabilities.Read 15 Oct 2026 · preprints.org
- Limit: virtual networking
- A BSides security-crawler presentation reports that Masscan performed poorly with some virtual network configurations, leading the team to build a custom asynchronous TCP scanner.Read 15 Oct 2026 · markevich.org
- Limit: Windows throughput
- A Microsoft Q&A report measured about 25,000 packets per second on Windows compared with about 500,000 on Linux in that user's test.Read 15 Oct 2026 · learn.microsoft.com
- Notable limitation
- Masscan requires users to specify ports and accepts IP addresses or simple ranges rather than DNS names as targets.Read 5 Oct 2026 · github.com
- Operational consideration
- The README warns that Masscan's custom TCP/IP stack can conflict with the local stack and describes using a separate source IP or firewalling its source port.Read 5 Oct 2026 · github.com
- Output
- Supported output formats are XML, binary, grepable, JSON, and list.Read 5 Oct 2026 · github.com
- Praise: port-range speed
- A comparative thesis concluded that Masscan was faster than ZMap when scanning port ranges because ZMap initializes separately for each port.Read 15 Oct 2026 · mnm-team.org
- Praise: scanning efficiency
- SaaSHub summarizes public discussion as repeatedly praising Masscan's speed and efficiency on large-scale network scans.Read 15 Oct 2026 · saashub.com
- Result export
- Debian's manual documents XML output, binary scan files, reading saved scans and importing XML into databases or similar systems.Read 15 Oct 2026 · manpages.debian.org
- Scan speed
- The project says one machine can scan the entire Internet in under five minutes at up to 10 million packets per second.Read 15 Oct 2026 · github.com
- Scanning
- It supports arbitrary port and address ranges and asynchronous transmission.Read 5 Oct 2026 · github.com
- Scope limitation
- The maker positions it for broad scans of many machines rather than intensive analysis of individual hosts.Read 15 Oct 2026 · github.com
- Speed
- The project says Masscan can transmit 10 million packets per second from a single machine.Read 5 Oct 2026 · github.com
- Stack workaround
- The documentation recommends a separate source IP or configured source ports protected by firewall rules when avoiding stack conflicts.Read 15 Oct 2026 · github.com
- Supported operating systems
- The maker identifies Linux as the primary target and provides build guidance for Windows, macOS and FreeBSD.Read 15 Oct 2026 · github.com
- Testing
- The repository includes make test and a --selftest command, with the documented expected result of selftest success.Read 15 Oct 2026 · github.com
- Windows build limitation
- The maker states that the Cygwin build does not work, while Visual Studio and MinGW builds are supported.Read 15 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Free under the GNU Affero General Public License v3.
- Scans IPv4 and IPv6 together.
- Supports several banner checks.
- Offers five output formats.
- Supports asynchronous transmission.
Limits
- Targets must be IP addresses or simple ranges.
- Users must specify ports.
- Its custom TCP/IP stack can conflict with the local stack.
- The license notice states there is no warranty.
Who it suits
Masscan suits users scanning many machines across wide ranges who can work with IP addresses or simple ranges and specify ports. Its command-line interface and Nmap-compatible options may suit users familiar with Nmap.
Verdict
Masscan is aimed at wide-range scanning, with asynchronous transmission and multiple output formats. Its target requirements and potential TCP/IP stack conflict are important operational constraints.
Where Specifiction places it
- Port Scanner Software#2 of 268.7