Nmap is an open-source network scanner released under a custom GPLv2-based license that lets end users run it free, with a separate commercial license for vendors who want to redistribute it. It runs as a command-line tool — a basic scan is as simple as nmap scanme.nmap.org — though a graphical front-end, Zenmap, is included for those who want one. It discovers hosts, open ports, running services, and operating system details across a network, which makes it a fit for network administrators, penetration testers, and anyone doing reconnaissance before deeper security work. It sits in the recon and network-scanning space alongside general port scanners, extensible through its NSE scripting engine for tasks like vulnerability checks. First committed in 2005, it remains actively maintained, with 63 contributors and 310 commits in the past year.
Network scanner that discovers hosts, open ports, services, and OS details across networks.
Which hosts on this network are actually reachable right now?
sends probes to every address in the target range and reports back only the ones that respond, so a /29 sweep, for example, comes back with the live subset instead of all 8 addresses
What is listening on this server, and which version?
probes each open port and matches the response against its service/version signatures, naming the running software and version, such as identifying port 80 as HTTP
Which ports on this host are open, closed, or filtered?
sweeps the full port range and classifies each one by how it responds to probes, so a host showing 999 closed ports and one open port tells you exactly where its attack surface is
Can I get a deeper read on a host's exposure in one pass?
combines OS fingerprinting, version detection, default script checks, and traceroute into a single scan against the target
Does this target have any known vulnerabilities worth flagging?
runs the vulnerability-focused script category against the target and reports what those scripts detect, without exploiting anything itself
Am I scanning the target I think I am?
parses whatever expression is given as a target and reports what it resolved to before scanning; feeding it something it cannot parse, like a URL, results in zero addresses scanned rather than a guess
50 capabilities
across 6 capability groups
· 5 backed by code, an API document or a real run
Built from Nmap's releases, docs, README and our own runs.
“Seen” marks the month we first spotted a release the vendor didn't date.
Group names and tags are our labels.
Nmap covers 6 of the 13 network discovery and scanning capabilities we track.
What Nmap offers you
Command-line interface9
Agentless deployment1
Scripting API1
Scripting language support1
Show
No capabilities match.
+Attack surface inventory5 featuresNetwork discovery and scanningsince 1999▸
+Host and port scanningverifiedScans a host or subnet to reveal which TCP ports are open, closed, or filtered and whether each host is reachable.66 releases · 32 other sources · first seen Nov 1999▸
Shared capability: Attack surface inventory
release
66 total
Extends packet.Frame:build_ether_frame() with an optional VLAN list parameter to construct 802.1Q / 802.1ad tagged Ethernet headers from NSE scripts.
commits-2026-09-06 · Sep 2026
· source
· release history
Adds frame.vlans list to packet.Frame:new(), populated with per-tag tables containing tpid, pcp, dei, and vid fields when 802.1Q (0x8100) or 802.1ad (0x88a8) tags are present.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
commits-2026-09-06 · Sep 2026
· source
· release history
Added new option --discovery-ignore-rst to ignore TCP RST responses during host discovery
7.90 · Oct 2020
· source
· release history
Allowed multiple UDP payloads to be specified for a port in nmap-payloads with round-robin fallback
7.90 · Oct 2020
· source
· release history
Added UDP payload for STUN (Session Traversal Utilities for NAT)
7.90 · Oct 2020
· source
· release history
Allowed resuming IPv6 scans with --resume flag
7.90 · Oct 2020
· source
· release history
docs
Network scanner that discovers hosts, open ports, services, and OS details across networks.
we ran it
The scan found dvwa reachable with 0.000038 s latency; 999 TCP ports were closed and port 80/tcp was open running HTTP. The run completed in 0.03 seconds and exited with status 0, indicating success.
Aug 2026
· the full run
example
30 total
Scan an industrial control network segment for PROFINET devices using multicast discovery.$ nmap --script multicast-profinet-discovery <target_subnet>
7.95 · Apr 2024
· source
Scan hosts that may be spoofing RST packets to avoid false negatives during host discovery.$ nmap --discovery-ignore-rst -sn <target>
7.90 · Oct 2020
· source
Resume a scan from a previous XML output file to avoid scanning already-completed hosts.$ nmap --resume nmap-output.xml
7.40 · Dec 2016
· source
Reduce UDP scan duration on rate-limited networks by sacrificing some port state accuracy for speed.$ nmap --defeat-icmp-ratelimit -sU <target>
7.40 · Dec 2016
· source
Query Shodan's database for open ports on a target using the new NSE script.$ nmap --script shodan-api <target>
7.10 · Mar 2016
· source
Explicitly force IPv4 scanning mode, making the address family choice clear in scripts.$ nmap -4 <target>
7.10 · Mar 2016
· source
+List scan (target enumeration without probing)verifiedResolves and lists every address in a target range without sending any probes to the targets themselves.3 releases · 5 other sources · first seen Aug 2000▸
Shared capability: Attack surface inventory
release
Adds ICMP Timestamp (-PP) and Netmask (-PM) ping types to bypass hosts that ignore standard ICMP echo.
2.54beta31 · Mar 2002
· source
· release history
Extends --data_length support to all ICMP ping types (echo request, netmask, and timestamp).
2.54beta31 · Mar 2002
· source
· release history
Adds -sL (List scan) flag to resolve hosts without scanning them
2.54beta2 · Aug 2000
· source
· release history
we ran it
The tool enumerated 8 IP addresses in the subnet but found 0 hosts up, consistent with a list scan that performs no actual probing. The run completed in 0.01 seconds and exited cleanly with status 0.
Aug 2026
· the full run
The timing report shows Nmap's default scan parameters, followed by a simple enumeration of all 8 addresses in the subnet (192.0.2.0–192.0.2.7).
Aug 2026
· the full run
The tool resolved the /29 subnet to 8 addresses (192.0.2.0 through 192.0.2.7) and listed each one. No hosts were probed, so 0 hosts are reported as up.
Aug 2026
· the full run
The tool enumerated all 8 addresses in the subnet (192.0.2.0–192.0.2.7) but reported 0 hosts up, as a list scan sends no probes.
Aug 2026
· the full run
example
Resolve a CIDR block to its IP list without scanning for open ports or vulnerabilities.$ nmap -sL 192.168.1.0/24
2.54beta2 · Aug 2000
· source
+Protocol scan supportshippedScans for supported IP protocols (including protocol 255) to identify network layer capabilities on remote hosts.1 release · first seen May 2025▸
+OSPF discoveryshippedDiscovers OSPFv2 routers on a local subnet to map the routing infrastructure.1 other source · first seen Jun 2017▸
Shared capability: Attack surface inventory
example
Discover OSPFv2 routers on the local subnet to map routing infrastructure.$ nmap --script broadcast-ospf2-discover
7.50 · Jun 2017
· source
+IPv6 protocol scanshippedScans for supported IPv6 protocols to identify network layer capabilities on remote hosts.1 other source · first seen Jun 2011▸
Shared capability: Attack surface inventory
example
Perform an IPv6 protocol scan to identify supported protocols.$ nmap -sO 2001:db8::1
5.59beta1 · Jun 2011
· source
+Service and version detection3 featuresNetwork discovery and scanningsince 1999▸
+Service and version detectionshippedQueries open ports to determine the service name and version of the software running behind each one.43 releases · 9 other sources · first seen Apr 1999▸
Shared capability: Service and version detection
release
43 total
Adds a SAP HANA database service probe for fingerprinting SAP HANA instances.
v7.992 · Oct 2026
· source
· release history
Adds a SAP HANA database service probe, expanding Nmap's service/version detection coverage.
commits-2026-08-27 · Aug 2026
· source
· release history
Adds support for detecting the following protocols via service version detection: grpc, mysqlx, essnet, remotemouse, and tuya
7.95 · Apr 2024
· source
· release history
UDP version scan (-sV) now probes services behind DTLS tunnels, same as TCP SSL/TLS probing
7.94 · May 2023
· source
· release history
Integrated over 800 service/version detection fingerprints increasing total to 11,878 signatures
7.90 · Oct 2020
· source
· release history
Adds Application Layer Protocol Negotiation (ALPN) support via Ncat's --ssl-alpn option
7.60 · Jul 2017
· source
· release history
example
9 total
Fingerprint all DICOM services on a PACS subnet and surface weak TLS certificates and unauthenticated access in one pass.$ nmap -p 104,11112 --script dicom-info,dicom-cfind-ls,dicom-store-inject <target>
commits-2026-09-11 · Oct 2026
· source
Identify the software running on a TFTP server without downloading files.$ nmap --script tftp-version <target>
7.94 · May 2023
· source
Run version detection and NSE scripts through a chain of proxies (HTTP then SOCKS4).$ nmap --proxies http://localhost:8080,socks4://someproxy.example.com -sV target
6.40 · Jul 2013
· source
Scan for DHCPv6 servers in a LAN by sending broadcast solicitations and parsing responses.$ nmap --script=broadcast-dhcp6-discover <target>
Nmap 5.61TEST5 [2012-03-09]§ · Mar 2012
· source
Identify PHP version on a web server without banner disclosure.$ nmap --script=http-php-version -p 80 <target>
Nmap 5.35DC1 [2010-07-16]§ · Jul 2010
· source
Retrieve detailed version and status info for a MySQL server.$ nmap -p 3306 --script MySQLinfo <target>
4.51beta · Dec 2007
· source
project
If Nmap was compiled with OpenSSL support, it will connect to SSL servers to deduce the service listening behind that encryption layer.
project docs, unconfirmed · seen Oct 2026
· source
-sV (Version detection) Enables version detection, as discussed above.
project docs, unconfirmed · seen Oct 2026
· source
The intensity must be between 0 and 9. The default is 7.
project docs, unconfirmed · seen Oct 2026
· source
careful
By default, Nmap version detection skips TCP port 9100 because some printers simply print anything sent to that port,
project docs, unconfirmed · seen Oct 2026
· source
+HTTP and RTSP probe discoveryshippedExtends service detection capabilities with probes for HTTP OPTIONS and RTSP request methods.4 releases · first seen Sep 2003▸
Shared capability: Service and version detection
release
Adds DHX2 (Diffie-Hellman Exchange 2) authentication method support to afp.lua
commits-2026-09-02 · Sep 2026
· source
· release history
New UDP payloads: TS3INIT1 for port 3389 and DTLS for port 3391 (RD Gateway)
7.92 · Aug 2021
· source
· release history
memcached-info can now gather information from the UDP memcached service in addition to TCP
7.70 · Mar 2018
· source
· release history
Adds HTTPOptions and RTSPRequest probes for HTTP OPTIONS and RTSP request discovery.
3.45 · Sep 2003
· source
· release history
+VNC banner extraction and feature detectionshippedNegotiates TLS for VNC connections to reveal banners and extracts detailed information including support for VeNCrypt and Tight authentication types.1 release · 1 other source · first seen Mar 2016▸
Shared capability: Service and version detection
release
Enhances VNC info extraction to support VeNCrypt and Tight authentication types
7.25beta1 · Jul 2016
· source
· release history
example
Negotiate TLS for a VNC server to see the real banner or detect hidden features.$ nmap -p 5900 --script vnc-starttls <target>
7.12 · Mar 2016
· source
+Network host discovery2 featuresNetwork discovery and scanningsince 2003▸
+UDP host discoveryshippedAllows the user to perform host discovery (ping scanning) using UDP probes via the -PU option.4 releases · 2 other sources · first seen Apr 2003▸
Shared capability: Network host discovery
release
Removes the artificial limit on the number of ports or protocols that can be used for host discovery.
4.23rc1 · Nov 2007
· source
· release history
Adds IPProto Ping functionality accessible via the new -PO flag, allowing transmission of IP headers with different protocols to elicit responses from targets.
Nmap 4.22SOC8 [2007-10-28]§ · Oct 2007
· source
· release history
Adds ARP scanning (-PR) to determine whether hosts on a LAN are up using raw ethernet ARP requests
3.90 · Apr 2005
· source
· release history
Adds -PU option for UDP-based host discovery (ping scanning)
3.25 · Apr 2003
· source
· release history
example
Elicit responses from targets using specific IP protocols like ICMP or IGMP.$ nmap -PO 1,2,4 <target>
Nmap 4.22SOC8 [2007-10-28]§ · Oct 2007
· source
Scan a local subnet for live hosts using ARP instead of ICMP/TCP probes to bypass IP firewalls.$ nmap -PR 192.168.0.0/16
3.90 · Apr 2005
· source
+IPv6 Idle scan supportshippedEnables host discovery via Zombie hosts using idle scan techniques on IPv6 targets, handling the absence of fragment identifiers. The tool also improves Nsock performance by handling timers and timeouts via a priority queue.3 releases · first seen Apr 2014▸
Shared capability: Network host discovery
release
Adds support for decoys in IPv6 (previously supported only in IPv4)
7.25beta2 · Sep 2016
· source
· release history
Idle scan (via -sI) now supports IPv6 targets, using a new technique to handle the absence of fragment identifiers in IPv6 packets
6.45 · Apr 2014
· source
· release history
Nsock improved performance by handling timers and timeouts via a priority queue (heap)
6.45 · Apr 2014
· source
· release history
+Operating-system fingerprinting2 featuresNetwork discovery and scanningsince 1999▸
+OS detectionshippedAnalyses network responses to infer the operating system of a remote host.31 releases · 3 other sources · first seen Feb 1999▸
Updates included OS and service fingerprints with many new IPv4/IPv6 entries
7.99 · Mar 2026
· source
· release history
Adds Zenmap dark mode, accessed via Profile->Toggle Dark Mode or the window::dark_mode config key in zenmap.conf.
7.96 · May 2025
· source
· release history
Increases OS fingerprint database to 6,036 signatures (including iOS 15/16, macOS Ventura/Monterey, Linux 6.1, OpenBSD 7.1, lwIP 2.2) and service detection signatures to 12,089
7.95 · Apr 2024
· source
· release history
Integrated all 67 IPv6 OS fingerprint submissions from August 2017 to September 2020
7.90 · Oct 2020
· source
· release history
Added 26 IPv4 OS fingerprints for iOS 12 & 13, macOS Catalina & Mojave, Linux 5.4, and FreeBSD 13
7.90 · Oct 2020
· source
· release history
Reduced CPU usage of OS scan by 50% avoiding string copy operations
7.90 · Oct 2020
· source
· release history
example
Perform OS detection on an IPv6 target to identify its operating system using the new machine learning engine.$ nmap -6 -O scanme.nmap.org
Nmap 5.61TEST2 [2011-09-30]§ · Sep 2011
· source
Run OS detection with limited privileges when raw sockets are unavailable.$ nmap --unprivileged -O <target>
4.20alpha9 · Oct 2006
· source
Aggressive scan: OS, versions, traceroute$ nmap -A -T4 scanme.nmap.org
+Target OUI fingerprintingshippedIncludes the target Organizationally Unique Identifier (OUI) in SInfo fingerprint lines when available.1 release · first seen Jul 2004▸
Adds the target OUI to fingerprint SInfo lines when available, for example M=00A0CC.
3.55 · Jul 2004
· source
· release history
+UDP port scanning1 featureNetwork discovery and scanningsince 2004▸
+UDP scan accuracy refinementshippedCorrects UDP scan result reporting for unresponsive ports to 'open|filtered' and limits adaptive delay to maintain speed without sacrificing accuracy.1 release · 1 other source · first seen Aug 2004▸
Shared capability: UDP port scanning
release
UDP scan results for unresponsive ports now report as open|filtered instead of open, which may change how downstream tools interpret scan data
3.70 · Aug 2004
· source
· release history
example
Limit Nmap's adaptive delay during a UDP scan to prevent slowing down while maintaining accuracy.$ nmap --max_scan_delay 50 -sU -T4 target.com
3.75 · Oct 2004
· source
+DNS record enumeration1 featureNetwork discovery and scanningsince 2018▸
+Expanded hostname resolutionshippedResolves all IP addresses associated with a given hostname rather than just the primary record.1 other source · first seen Mar 2018▸
Shared capability: DNS record enumeration
example
Scan all IP addresses associated with a hostname instead of just the primary A record.$ nmap --resolve-all target.com
7.70 · Mar 2018
· source
+Other / not yet classified36 featuresFeatures we have not matched to a capability yet. A suggested match is marked.▸
+NSE scriptingshippedRuns NSE scripts against targets to perform deeper checks such as vulnerability detection and HTTP-level inspection across plain and SSL-protected services.206 releases · 29 other sources · first seen Jul 2002▸
Shared capability: Active network scanning
release
206 total
Implements XML output for the rsync-list-modules and http-config-backup NSE scripts.
v7.992 · Oct 2026
· source
· release history
Replaces the cryptographically broken DHCAST128 UAM in afp.lua with DHX2, preventing credential decryption from network traffic.
v7.992 · Oct 2026
· source
· release history
Enforces --script-timeout and --host-timeout for previously uninterruptible NSE script loops in rdp.lua, tn3270.lua, and ospf.lua, and limits the NSE Lua interpreter to 400 MB memory while killing script threads that exceed 5 seconds of execution without yielding.
v7.992 · Oct 2026
· source
· release history
Adds dicom-cfind-ls NSE script to perform C-FIND queries enumerating studies, series, and patient-level metadata, flagging unauthenticated query access.
commits-2026-09-11 · Oct 2026
· source
· release history
Adds dns.query() support for passing a host table (not just a plain IP address) via the host option in NSE scripts.
commits-2026-09-11 · Oct 2026
· source
· release history
Adds dicom-info NSE script to fingerprint a DICOM SCP via A-ASSOCIATE, reporting Implementation Class UID, Version Name, accepted SOP classes and transfer syntaxes, max PDU, protocol version, and — over TLS — server certificate details (key type/size, signature algorithm, weak-crypto and self-signed flags) and…
commits-2026-09-11 · Oct 2026
· source
· release history
example
29 total
Fingerprint a DICOM service and detect weak TLS configuration on a PACS host in one scan.$ nmap -p 104,11112 --script dicom-info <target>
commits-2026-09-11 · Oct 2026
· source
Identify the device information of a Highway Addressable Remote Transducer (HART) device.$ nmap -p 5672 --script hartip-info <target_ip>
7.95 · Apr 2024
· source
Brute force DICOM servers to find valid Application Entity Titles using the new script.$ nmap --script dicom-brute -p 104 <target>
7.90 · Oct 2020
· source
Query the Vulners database for CVEs related to detected services in a scan$ nmap --script vulners -sV target.example.com
7.80 · Aug 2019
· source
Identify subdomains exposed through Certificate Transparency logs.$ nmap --script hostmap-crtsh target.com
7.70 · Mar 2018
· source
I've developed an NSE script to extract device information
mailing list, proposed · Aug 2026
· source
Please use this to reclassify the fingerprint from "Netgear switch" to "Huawei Home Gateway/AP".
mailing list, proposed · Aug 2026
· source
Some of the scripts in this category are considered intrusive
project docs · seen Oct 2026
· source
Scripts are not run in a sandbox
project docs · seen Oct 2026
· source
project
Simply specify -sC
project docs · seen Oct 2026
· source
+Ncat connection brokering and keep-open modeshippedAccepts multiple successive inbound connections in sequence and ensures child processes are terminated cleanly when the listener shuts down.21 releases · 2 other sources · first seen Feb 1999▸
release
21 total
Ncat in listen mode now forwards termination signals (SIGINT, SIGTERM, SIGHUP, SIGQUIT) only to child processes started for connections when -k and cmdexec are both in effect, instead of the entire process group.
commits-2026-09-11 · Oct 2026
· source
· release history
Adds -k signal propagation: termination signals (INT/TERM/HUP) are now caught and forwarded to the entire process group, then Ncat exits with 128 + signum, ensuring child processes are not orphaned.
commits-2026-07-11 · Aug 2026
· source
· release history
Ncat now propagates termination signals (SIGINT, SIGTERM, SIGHUP) to child processes when using -k keep-open mode, preventing orphaned children on shutdown.
commits-2026-07-09 · Aug 2026
· source
· release history
New --proxy-dns option in Ncat controls whether proxy destination resolution happens locally or at the remote proxy
7.80 · Aug 2019
· source
· release history
Adds --lua-exec flag to Ncat for running Lua scripts with stdin/stdout redirected to the socket connection
6.40 · Jul 2013
· source
· release history
Adds -k/--keep-open option in Ncat to maintain multiple connections
4.85beta10 · Jun 2009
· source
· release history
example
Execute a Lua script on Ncat that processes data from a socket connection in real-time.$ ncat --lua-exec <scriptname> host port
6.40 · Jul 2013
· source
Keep Ncat open to handle multiple sequential connections in listen mode.$ ncat -l --keep-open 12345
4.85beta10 · Jun 2009
· source
+XML output generationshippedGenerates structured XML output for scan results to facilitate parsing by front-end tools or other scripts.19 releases · 4 other sources · first seen Oct 2000▸
release
19 total
The rsync-list-modules NSE script now emits structured XML output, making its results parseable in -oX / -oA Nmap XML reports.
commits-2026-08-18 · Aug 2026
· source
· release history
Nmap output DTD updated to include the <hosthint> element for structured host hint data
7.93 · Sep 2022
· source
· release history
Adds new <target> element to XML output to indicate when a target specification was skipped due to syntax or DNS errors
6.00 · May 2012
· source
· release history
Adds Common Platform Enumeration (CPE) output for OS and service versions in normal and XML outputs.
Nmap 5.61TEST1 [2011-09-19]§ · Sep 2011
· source
· release history
Increases XML output version (xmloutputversion) to 1.03 with new optional elements for scan profile name, host comments, and interactive text.
4.85beta1 · Jan 2009
· source
· release history
Adds elapsed attribute in seconds to the XML finished tag.
4.85beta1 · Jan 2009
· source
· release history
example
Restore legacy XML format for compatibility with older Nmap XML parsers that cannot handle nested OS classes.$ nmap -sV --script ssl-enum-ciphers <target> --deprecated-xml-osclass
6.00 · May 2012
· source
Generate XML output files with timestamped filenames using new format codes.$ nmap -oX 'scan-%T-%D.xml' <target>
4.51beta · Dec 2007
· source
Capture scan data in human-readable, machine-grepable, and XML formats simultaneously for downstream processing.$ nmap -oA my_scan 192.168.1.0/24
2.54beta30 · Oct 2001
· source
Generate XML output for a target network to facilitate parsing by front-end tools or other scripts$ nmap -oX results.xml 192.168.1.0/24
2.54beta6 · Oct 2000
· source
+Version and build information reportingverifiedDisplays the installed version, platform, and compiled-in library support so users can verify what the build is capable of.12 releases · 3 other sources · first seen Jan 2000▸
Also counts toward: Command-line interface, Scripting language support
release
12 total
New /S silent-install flag for the Nmap Windows installer to automate deployment alongside Npcap
7.94 · May 2023
· source
· release history
Ncat adds socks5 protocol support for proxying connections through SOCKS5 servers
6.45 · Apr 2014
· source
· release history
Adds /S silent installation flag for both Nmap and WinPcap Windows installers
4.65 · Jun 2008
· source
· release history
Adds macOS universal installer (.dmg/mpkg) supporting Intel and PPC with OpenSSL and Authorization Services
4.65 · Jun 2008
· source
· release history
Improves Windows installer uninstallation logic to correctly handle non-default install paths and delete shortcuts on Vista
4.53 · Jan 2008
· source
· release history
Identd scan support has been removed from NmapFE.
3.94alpha1 · Nov 2005
· source
· release history
we ran it
Nmap reports version 7.99SVN built for the aarch64-unknown-linux-gnu platform.
Aug 2026
· the full run
example
Proxy Ncat traffic through a SOCKS5 server$ ncat --socks5 127.0.0.1:9050 <destination_host> <port>
6.45 · Apr 2014
· source
List common options and usage$ nmap
+Target expression parsingverifiedParses hostnames, IP addresses, and CIDR ranges as scan targets and reports a clear error for unsupported formats such as URLs.9 releases · 4 other sources · first seen Jul 2002▸
release
9 total
Nmap now allows specifying targets on both the command line and in an input file (-iL) simultaneously without ignoring command-line targets.
7.96 · May 2025
· source
· release history
Removed deprecated and undocumented aliases for several long options that used underscores instead of hyphens, such as --max_retries
7.70 · Mar 2018
· source
· release history
Adds -4 option to explicitly indicate IPv4 address family
7.10 · Mar 2016
· source
· release history
Adds \%2f style RFC 4007 IPv6 Zone ID syntax support (e.g. fe80::...%eth0 on Linux)
4.65 · Jun 2008
· source
· release history
Ncat --allow, --deny, --allowfile, and --denyfile options now accept Nmap target specification syntax with early error reporting
4.85beta4 · Aug 2007
· source
· release history
Supports wildcard - in target IP specification to mean 0-255 (e.g., 192.168.-.-)
4.85beta4 · Aug 2007
· source
· release history
we ran it
Nmap could not parse the target because it does not accept URLs — it reported 'Unable to split netmask from target expression: http://dvwa' and scanned 0 IP addresses.
Aug 2026
· the full run
example
Prevent duplicate scans when scanning a domain that resolves to multiple IPv4/IPv6 addresses.$ nmap --unique example.com
7.92 · Aug 2021
· source
Scan all IP addresses associated with a hostname instead of just the primary A record.$ nmap --resolve-all target.com
7.70 · Mar 2018
· source
Resolve all addresses (IPv4/IPv6) for hostnames in Nmap's target list instead of just the first record.$ nmap --script=resolveall <hostname>
5.50 · Jan 2011
· source
+Bundled library updatesshippedShips updated versions of bundled libraries including libpcap, pcre2, Lua, and libdnet.8 releases · 1 other source · first seen Jun 2001▸
Also counts toward: Scripting API
release
8 total
Upgrades bundled libraries: libpcap 1.10.7, pcre2 10.49, lua 5.4.9, libdnet 1.18.2 (source); OpenSSL 3.5.9, Python 3.14.8 (binary installers); and Npcap on Windows from 1.88 to 1.89.
v7.992 · Oct 2026
· source
· release history
Upgrades bundled libraries to libpcap 1.10.7, pcre2 10.48, Lua 5.4.9, and libdnet 1.18.2.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
commits-2026-09-11 · Oct 2026
· source
· release history
Improves Lua's random number generator to produce more random output.
commits-2026-08-09 · Aug 2026
· source
· release history
Distributes Zenmap as a universal wheel (zenmap-7.99-py3-none-any.whl) for Python 3 installation
7.99 · Mar 2026
· source
· release history
-sO protocol scan now works over IPv6 with realistic header generation
5.59beta1 · Jun 2011
· source
· release history
example
Perform an IPv6 protocol scan to identify supported protocols.$ nmap -sO 2001:db8::1
5.59beta1 · Jun 2011
· source
+TLS/SSL scanningshippedsuggestedCorrectly handles TLS and SSL-wrapped services during scanning, including targets that do not send a proper close notification.4 releases · 5 other sources · first seen Aug 2003▸
Suggested capability: Attack surface inventory. This is our guess, not confirmed.
Also counts toward: Command-line interface
release
Nmap now tolerates TLS peers that do not send close_notify, preventing spurious scan failures against non-compliant TLS targets.
commits-2026-07-11 · Aug 2026
· source
· release history
Ncat allows overriding TLS SNI value via --ssl-servername flag
7.90 · Oct 2020
· source
· release history
-ssl option in Ncat now works with --exec/--sh-exec to wrap subprocess I/O in encrypted transport.
5.20 · Jan 2010
· source
· release history
Adds SSL probe (session startup request) to identify services listening on SSL/TLS ports.
Nmap 3.40PVT12 [2003-8-24]§ · Aug 2003
· source
· release history
example
Override the TLS Server Name Indication in Ncat for testing or specific server routing.$ ncat --ssl --ssl-servername custom.example.com <host> 443
7.90 · Oct 2020
· source
Check if a TLS server supports modern protocol negotiation and which protocols are available.$ nmap -p 443 --script tls-alpn target.com
7.70 · Mar 2018
· source
Securely tunnel UDP traffic over DTLS for protocols like CoAP or DNS.$ ncat --udp --ssl dtls://<host>:443
7.60 · Jul 2017
· source
Connect via Ncat using specific TLS ciphers to test cipher support.$ ncat --ssl-ciphers HIGH:MEDIUM:!aNULL <host> 443
7.50 · Jun 2017
· source
Encrypt network traffic for a spawned executable using Ncat's new SSL exec capability.$ ncat -l --ssl --exec 'sh'
5.20 · Jan 2010
· source
+Raw-socket packet manipulationverifiedSupports deliberate packet manipulation such as injecting invalid checksums when the user has raw socket privileges.6 releases · 3 other sources · first seen Feb 2005▸
Also counts toward: Command-line interface
release
Enables --scanflags options ECE, CWR, ALL and NONE for TCP packet crafting
4.21alpha2 · Mar 2007
· source
· release history
Adds --unprivileged flag to treat the user as lacking raw socket privileges
4.20alpha9 · Oct 2006
· source
· release history
Adds --badsum option to send packets with invalid TCP/UDP checksums for firewall/IDS detection
3.98beta1 · Jan 2006
· source
· release history
Adds --send_eth and --send_ip options to override the automatic choice of packet sending method
3.90 · Apr 2005
· source
· release history
Adds --spoof_mac option to specify or randomize the source MAC address for all raw ethernet frames
3.90 · Apr 2005
· source
· release history
Adds --mtu <size> to specify custom fragmentation offset in multiples of 8 bytes for raw IP packet construction
3.81 · Feb 2005
· source
· release history
we ran it
The scan found port 80/tcp open (http) and 999 closed ports on dvwa, completing in 0.03 seconds.
Aug 2026
· the full run
The tool enumerated all 8 addresses in the subnet (192.0.2.0–192.0.2.7) but reported 0 hosts up, as a list scan sends no probes.
Aug 2026
· the full run
example
Scan hosts while spoofing the source MAC address to impersonate a specific device or vendor.$ nmap --spoof_mac Cisco 192.168.0.1
3.90 · Apr 2005
· source
+DICOM protocol scanningshippedProvides a DIMSE toolkit for probing DICOM services, supporting operations such as C-STORE, C-FIND, C-GET, and C-MOVE, role negotiation, DICOM-over-TLS, unauthenticated retrieval checks, and fuzz testing of medical imaging endpoints.1 release · 4 other sources · first seen Oct 2026▸
release
Expands dicom.lua into a full DIMSE toolkit supporting C-STORE, C-FIND, C-GET, C-MOVE, role negotiation, and DICOM-over-TLS.
commits-2026-09-11 · Oct 2026
· source
· release history
example
Fuzz the C-STORE service of a DICOM SCP to detect crashes or unexpected response classifications during a security assessment.$ nmap -p 104 --script dicom-store-fuzzer <target>
commits-2026-09-11 · Oct 2026
· source
Check whether a DICOM archive allows unauthenticated C-FIND study enumeration and unauthenticated C-STORE injection across a network segment.$ nmap -p 104 --script dicom-cfind-ls,dicom-store-inject <target>
commits-2026-09-11 · Oct 2026
· source
Test whether a DICOM archive allows unauthenticated C-MOVE retrieval to an arbitrary destination AE.$ nmap -p 104 --script dicom-cmove,dicom-get <target>
commits-2026-09-11 · Oct 2026
· source
Fuzz a DICOM C-STORE endpoint to detect crashes or protocol errors in medical imaging devices during a pen test.$ nmap -p 104 --script dicom-store-fuzzer <target>
commits-2026-09-11 · Oct 2026
· source
+Scan comparison utilityshippedProvides a separate utility to compare two scan results and report differences in hosts, ports, or OS detection.3 releases · 2 other sources · first seen Jan 2009▸
release
Adds --resume option to restore a canceled scan from -oN, -oG, or -oX output formats
7.40 · Dec 2016
· source
· release history
Adds ndiff utility to compare two Nmap scans and report changed hosts/ports/OSs, outputting XML or text reports.
4.85beta1 · Jan 2009
· source
· release history
example
Extract STUN server version and external mapped address to understand NAT topology.$ nmap -sU -p 3478 --script stun-version,stun-info <target>
6.00 · May 2012
· source
Trace how packets are modified or dropped between the source and a target host.$ nping --echo-client "public" echo.nmap.org
5.50 · Jan 2011
· source
+DNS library TCP supportshippedAllows the DNS library to resolve hosts using TCP transport in addition to UDP, enabling queries for large responses or when UDP is blocked.3 releases · 1 other source · first seen Apr 2014▸
release
Improves DNS resolver correctness: timeout now starts only after the write completes, late replies are accepted without clobbering existing results, and request ID lookup is tracked per-server.
commits-2026-08-09 · Aug 2026
· source
· release history
Switches DNS transaction IDs (TXID) from sequential to random to reduce predictability in DNS requests.
commits-2026-08-09 · Aug 2026
· source
· release history
Resolve proxy hostnames at the remote proxy rather than locally$ ncat --proxy host.example.com:8080 --proxy-dns target.example.com 443
7.80 · Aug 2019
· source
+Verbose scan timing logsshippedsuggestedIncludes ISO 8601 timestamps in verbose output for scan start and host port scan events.3 releases · 1 other source · first seen Mar 2003▸
Suggested capability: Port scanning. This is our guess, not confirmed.
release
--stats-every can now be used in conjunction with --noninteractive to print periodic stats without a TTY
7.991 · Aug 2026
· source
· release history
Adds --log-errors to also write most interactive-output warnings and errors to a specified normal-format output file; some errors are not supported.
4.02alpha1 · Mar 2006
· source
· release history
Adds ISO 8601 timestamps to the Starting nmap line and each host port scan when using the -v flag
3.15beta3 · Mar 2003
· source
· release history
example
Print stats every 10 seconds during an automated headless scan$ nmap --noninteractive --stats-every 10s -sV target.com
7.991 · Aug 2026
· source
+Packet trace displayshippedDisplays sent and received packets in a tcpdump-like format for traffic analysis.4 releases · first seen Sep 2002▸
Also counts toward: Command-line interface
release
Extends --packet-trace output to report TCP and IP options.
4.20alpha5 · Aug 2006
· source
· release history
Adds runtime interaction on UNIX: v, d, and p increase verbosity, debugging, and packet tracing; uppercase variants reverse them.
3.98beta1 · Jan 2006
· source
· release history
Adds --packet_trace to display sent and received packets in a tcpdump-like format; Windows support is not yet included.
3.10alpha3 · Sep 2002
· source
· release history
+Network interface and source address bindingshippedLets the user choose which network interface scan traffic leaves from on hosts with multiple network connections.1 release · 2 other sources · first seen Jan 2011▸
Also counts toward: Command-line interface
release
Adds --vpn-adapter support for scanning over VPN virtual adapters like OpenVPN TAP
7.99 · Mar 2026
· source
· release history
example
Specify an interface with -e to bind both the outgoing interface and the source address, useful when a host has multiple NICs and you need traffic to leave a specific one.$ nmap -e eth1 -S 192.168.1.50 <target>
commits-2026-07-11 · Aug 2026
· source
Discover hosts using DNS Service Discovery via multicast queries in Nmap scans.$ nmap -sV --script=broadcast-dns-service-discovery <target>
5.50 · Jan 2011
· source
+Nsock IO engine selectionshippedAllows enforcing a specific Nsock I/O engine such as epoll for Nmap, Nping, and Ncat.3 releases · first seen Mar 2012▸
release
Allows setting Nsock engines (e.g., iocp, poll) via the new CLI argument --nsock-engine=<engine>.
7.96 · May 2025
· source
· release history
Nsock iocp engine is now default on Windows replacing poll for improved performance
7.90 · Oct 2020
· source
· release history
Adds --nsock-engine option to Nmap, Nping, and Ncat to enforce a specific Nsock IO engine (e.g., epoll).
Nmap 5.61TEST5 [2012-03-09]§ · Mar 2012
· source
· release history
+Ncat persistent connection modeshippedKeeps Ncat sessions open after the remote side closes, mimicking traditional netcat behavior and preventing shutdown on EOF input.1 release · 2 other sources · first seen Nov 2015▸
release
Adds --no-shutdown option to Ncat to prevent shutdown on EOF input
7.00 · Nov 2015
· source
· release history
example
Discover IPv6 multicast listeners on a network segment using MLD probes.$ nmap -6 --script ipv6-multicast-mld-list <target>
7.10 · Mar 2016
· source
Keep an Ncat session open after the remote side closes its connection, mimicking traditional netcat behavior.$ ncat --no-shutdown example.com 80
7.00 · Nov 2015
· source
+DNS spoofing resistance via random transaction IDsshippedRandomizes DNS transaction identifiers to reduce predictability and mitigate spoofing risks during host resolution.2 releases · first seen Aug 2026▸
release
Uses random (non-sequential) transaction IDs for DNS requests to reduce predictability.
v7.992 · Oct 2026
· source
· release history
Switches DNS transaction IDs (TXID) from sequential to random to reduce predictability in DNS requests.
commits-2026-08-09 · Aug 2026
· source
· release history
+Debugging and diagnostics optionsshippedOffers CLI flags to assist with debugging, such as releasing memory buffers to help identify leaks.2 releases · first seen Jul 2006▸
release
Adds a libfuzzer-based fuzzing framework for Nmap internals, with fuzzers for Ncat HTTP functions, decode_reply() in traceroute, gettcpopt_ts, validatepkt(), and several libnetutil functions.
commits-2026-08-09 · Aug 2026
· source
· release history
Adds --release-memory CLI option to release memory buffers before quitting for debugging leaks
4.20alpha4 · Jul 2006
· source
· release history
+Unix domain socket support in NcatshippedEnables Ncat to connect to local Unix domain sockets for interacting with filesystem-listened services.1 release · 1 other source · first seen Nov 2012▸
Also counts toward: Command-line interface
release
Adds -U and --unixsock options to Ncat to enable Unix domain socket mode, compatible with Hobbit's original Netcat
6.20beta1 · Nov 2012
· source
· release history
example
Connect Ncat to a local Unix domain socket to interact with a service listening on the filesystem.$ ncat -U /var/run/service.sock
6.20beta1 · Nov 2012
· source
+Standalone packet generatorshippedProvides a separate application for crafting and sending raw network packets, distinct from the scanning engine.1 release · 1 other source · first seen Mar 2010▸
release
Adds Alpha version of nping, a standalone packet generator application.
5.30beta1 · Mar 2010
· source
· release history
example
Check SSL certificates of a target host against Google's Certificate Catalog to verify trust and issuance details.$ nmap -p 443 --script ssl-google-cert-catalog <target>
Nmap 5.61TEST2 [2011-09-30]§ · Sep 2011
· source
+Ncat SSL subprocess encryptionshippedWraps the I/O of spawned subprocesses in encrypted SSL/TLS transport, allowing secure communication for external commands.1 release · 1 other source · first seen Jan 2010▸
Also counts toward: Command-line interface
release
-ssl option in Ncat now works with --exec/--sh-exec to wrap subprocess I/O in encrypted transport.
5.20 · Jan 2010
· source
· release history
example
Encrypt network traffic for a spawned executable using Ncat's new SSL exec capability.$ ncat -l --ssl --exec 'sh'
5.20 · Jan 2010
· source
+MAC address outputshippedsuggestedOutputs the target MAC address for directly connected Ethernet targets in normal and XML scan results.2 releases · first seen Jul 2004▸
Suggested capability: Attack surface inventory. This is our guess, not confirmed.
release
The NSE script showSSHVersion.nse is removed as it no longer provides a stealth advantage.
4.85beta1 · Jan 2009
· source
· release history
Adds target MAC-address output for directly connected Ethernet targets in normal and XML results; Windows support is not yet available.
3.55 · Jul 2004
· source
· release history
+Custom library build configurationshippedProvides configure flags to specify custom paths for external libraries like PCRE and OpenSSL during the build process.2 releases · first seen Jul 2003▸
release
Adds --with-openssl=DIR configure option to specify OpenSSL path during build
Nmap 3.40PVT13 [2003-9-1]§ · Sep 2003
· source
· release history
Introduces the --with-libpcre=DIR configure flag to specify a nonstandard location for the Perl Compatible Regular Expressions library
Nmap 3.40PVT1 [2003-7-17]§ · Jul 2003
· source
· release history
+Internal fuzzing frameworkshippedProvides a libfuzzer-based framework to fuzz internal functions of Nmap, Ncat, and Nping.1 release · first seen Oct 2026▸
release
Adds a libfuzzer-based fuzzing framework covering internal functions of Nmap, Ncat, and Nping, with 10 functions instrumented so far.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
v7.992 · Oct 2026
· source
· release history
+VSOCK address supportshippedEnables VM-to-hypervisor communication by supporting the AF_VSOCK address family in Nsock and Ncat.1 release · first seen Aug 2019▸
release
AF_VSOCK address family added to Nsock and Ncat for VM-to-hypervisor communication
7.80 · Aug 2019
· source
· release history
+Puppet CA vulnerability detectionshippedChecks for naive signing misconfigurations in Puppet Certificate Authority servers using a dedicated NSE script.1 other source · first seen Jul 2017▸
example
Check for naive signing misconfigurations in Puppet CA using the new dedicated script.$ nmap --script puppet-naivesigning <target>
7.60 · Jul 2017
· source
+IP Geolocation visualizationshippedProvides an option to visualize scan results' IP geolocation data on Bing Maps.1 other source · first seen Dec 2016▸
example
Visualize scan results' IP geolocation on Bing Maps for a quick operational overview.$ nmap --script ip-geolocation-map-bing <target>
7.40 · Dec 2016
· source
+Custom payload injectionshippedAllows sending custom hex strings or text strings within the data portion of scan packets.1 release · first seen Jun 2015▸
release
Added --data <hex string> and --data-string <string> flags to send custom payloads in scan packet data
6.49beta1 · Jun 2015
· source
· release history
+IPv6 traceroute capabilityshippedEnables IPv6 path discovery by supporting UDP, SCTP, and IPProto (Next Header) probes for non-TCP/ICMP traceroute.1 release · first seen Nov 2012▸
release
Adds UDP, SCTP, and IPProto (Next Header) probe support for IPv6 traceroute, enabling non-TCP/ICMP path discovery on IPv6 targets
6.20beta1 · Nov 2012
· source
· release history
+Certificate trust verificationshippedValidates SSL/TLS certificates of target hosts against external certificate catalogs to verify issuance and trust details.1 other source · first seen Sep 2011▸
example
Check SSL certificates of a target host against Google's Certificate Catalog to verify trust and issuance details.$ nmap -p 443 --script ssl-google-cert-catalog <target>
Nmap 5.61TEST2 [2011-09-30]§ · Sep 2011
· source
+Custom IP header manipulationshippedAllows the specification of IP header options, such as route information, for crafted scan packets.1 release · first seen Aug 2006▸
release
Adds --ip-options flag to specify IP header options in hex or shorthand (R, T, U, S/L routes)
4.20alpha5 · Aug 2006
· source
· release history
+Runtime interaction commandsshippedProvides an interactive command interface during scans, allowing users to query help or control execution via specific commands.1 release · first seen Jan 2006▸
release
Adds the ? command to the runtime interaction system to print a list of accepted commands.
4.00 · Jan 2006
· source
· release history
+Exclusion file supportshippedAllows users to specify a file containing a newline-delimited list of targets to exclude from the scan.1 release · first seen Aug 2004▸
Also counts toward: Command-line interface
release
Adds --excludefile option to read the exclusion list from a newline-delimited file
3.70 · Aug 2004
· source
· release history
+SSL session cachingshippedCaches SSL sessions during probing to optimize reconnection speed for service scanning.1 release · first seen Sep 2003▸
release
Adds caching of SSL sessions for faster reconnection during probing
Nmap 3.40PVT17 [2003-9-12]§ · Sep 2003
· source
· release history
+ECN packet trace supportshippedAdds Explicit Congestion Notification (RFC 2481/3168) flags to the packet trace display output.1 release · first seen Jun 2003▸
release
--packet_trace support for Explicit Congestion Notification (RFC 2481/3168) flags
3.28 · Jun 2003
· source
· release history
+Custom data directory configurationshippedAllows overriding the default search order for nmap data files via a command-line option.1 release · first seen Feb 2003▸
Also counts toward: Command-line interface
release
--datadir <path> command-line option overrides priority search order for nmap data files.
3.15beta2 · Feb 2003
· source
· release history
Lines in monospace are the tool's own words: help text
parsed from its source, or an endpoint from its API document. Under
release, a line is our summary of a dated release. Under
docs, it is quoted from the tool's own documentation or
website. Each links back to the source it came from.
Command line
View
Source
No command matches.
load a captured run
composed command
No matchesTry a different search, or clear a filter to see more.
option surface across analysed releases
options at that releaseadded, per releaseremoved, per release
option
found in
since
description
No matchesTry a different search, or clear a filter to see more.
option changes per release — drag across the rail to set a range
→
Values are placeholders taken from each option’s declared default.
Nothing is executed here — the output shown is a recording of a run
that already happened.
Conversation
nmap-dev · since 2025 · active · nmap-announce · active
What the Nmap community has worked out wherever it talks: mailing lists,
forums, Q&A sites, issue trackers and discussion threads. These are the
conversations that explain a behaviour, settle a use, or flag a change you must
handle, summarised, with a link to the original.
The discussion centered on the absence of a built-in Nmap service probe for detecting HTTP/2 cleartext (h2c) connections. A custom probe was proposed to identify servers by sending a specific client magic string and matching the server's initial SETTINGS frame response. Readers should expect that standard Nmap scans may miss h2c services unless they manually add this configuration, as no existing tool handles this protocol variant out of the box.
Proposed, not merged
A new Nmap service-probe rule (TCP probe HTTP2ClientMagic with an http2 match regex) is proposed to detect HTTP/2 cleartext (h2c) services that send the HTTP/2 client preface and initial SETTINGS frame, for inclusion in nmap-service-probes.
Applies to
Nmap service detection (nmap-service-probes), HTTP2 cleartext (h2c, prior knowledge) services, TCP, version unknown
What to do
Treat this as a suggested probe definition, not yet part of any released Nmap. Do not rely on it for scans until it is merged and a release version is confirmed.
From the thread · checked Sep 2026
nmap does not appear to have a service probe
The following is something really simple based on RFC7540, which covers the initial client message and the server's initial SETTINGS frame.
The thread discusses an Nmap ssl-enum-ciphers script failure on CloudFront targets using ECDSA certificates and Post-Quantum hybrid key exchange, where the server drops connections during TLS 1.2 handshakes. No specific commands were validated by maintainers or confirmed working in this report, as it is a bug submission without subsequent resolution details. Readers should expect potential false negatives for TLS 1.2 on similar infrastructure and consider using alternative cyber tools like sslscan or openssl for verification.
Unconfirmed
ssl-enum-ciphers can report a false negative for TLS 1.2 support on certain CloudFront targets that use an ECDSA certificate and a post-quantum hybrid key exchange, because the server drops the connection during Nmap's TLS 1.2 handshake attempt.
Applies to
Nmap NSE script ssl-enum-ciphers, Nmap version 7.99, tested on FreeBSD 15.0-RELEASE-p5 and macOS 26.3.1 with OpenSSL 3.2.1, against a CloudFront target using an ECDSA certificate and X25519MLKEM768 hybrid key exchange
What to do
Treat a TLS 1.3-only result from ssl-enum-ciphers on CloudFront/ECDSA targets as unverified; cross-check with another tool such as sslscan or openssl before concluding TLS 1.2 is unsupported.
From the thread · checked Sep 2026
ssl-enum-ciphers fails to detect TLS 1.2 on a CloudFront target (itwisegroup.com:443) that uses an ECDSA certificate and Post-Quantum hybrid key exchange (X25519MLKEM768)
While sslscan and openssl confirm TLS 1.2 is active, Nmap reports only TLS 1.3
My debug logs show the server is dropping the connection (EOF) during the Nmap TLS 1.2 handshake attempt
The thread discusses a new Nmap script for discovering Matter smart-home devices via mDNS queries. The author provided sample output demonstrating the script's ability to identify commissioned nodes, commissioning devices, and Thread border routers. Readers should expect this cyber tools functionality when scanning local networks for these specific service types.
Proposed, not merged
A submitted NSE script, matter-identify.nse, sends mDNS PTR queries on 5353/udp to identify Matter (Project CHIP) smart-home devices, decoding TXT records for vendor, product, device type and other fields, and also flags open port 5540.
Applies to
Nmap NSE script matter-identify.nse (discovery, safe categories), tested against a Matter device behind a Thread Border Router
What to do
Try the attached matter-identify.nse script for discovery scans of Matter devices, but treat it as an unreviewed submission until it appears in an official Nmap release.
From the thread · checked Sep 2026
Attached is matter-identify.nse, a new discovery script for identifying Matter (formerly Project CHIP) smart-home devices.
It sends DNS PTR queries to 5353/udp for the three Matter service types defined in the Matter Core Spec section 4
The portrule also fires on 5540 (Matter operational) and flags the open port.
The thread discusses adding address classification helpers to the nselib/bitcoin library for Nmap. It was worked out that these functions validate and classify Bitcoin addresses without making network calls or using external APIs. Readers should expect these new Lua functions to be available in future Nmap versions for script development.
Proposed, not merged
PR #3371 proposes adding looks_like_address, validate_address, and classify_address functions to nselib/bitcoin.lua for Base58Check, Bech32, and Bech32m address classification across mainnet, testnet, and regtest.
Applies to
Nmap nselib/bitcoin.lua
What to do
Track PR #3371 and issue #2857 for merge status before relying on these helper functions in NSE scripts.
From the thread · checked Sep 2026
PR #3371 adds three functions to nselib/bitcoin.lua
Supports mainnet, testnet, and regtest with full unittest (38/38 pass)
No network calls, no external APIs, no real keys, no changes to existing scripts
The discussion focused on binding to a specific network interface for IPv4 packet transmission in nping. It was determined that the socket_bindtodevice call was moved to ProbeMode::start() to ensure it applies to all scan modes, not just TCP. Readers should expect this change to be included in version r39078 of the cyber tools.
Merged, release not named
Nping on Linux did not bind raw IPv4 sockets to the interface given with --interface or --source-ip, so packets could go out the default route instead of an L3 tunnel interface like an OpenVPN TUN device. A patch calls socket_bindtodevice() in ProbeMode::start() so IPv4 probes bind to the chosen device on Linux.
Applies to
Nmap nping, IPv4 raw socket send path (ProbeMode.cc), Linux only
What to do
If nping traffic over a Linux L3 tunnel interface (e.g. OpenVPN TUN) ignores --interface or --source-ip, check for a build newer than SVN r39078 that includes socket_bindtodevice() binding in ProbeMode::start().
From the thread · checked Sep 2026
Linux RAW sockets need to be bound to interface, if the interface is L3 tunnel (OpenVPN TUN for example).
Otherwise the packet goes via default route, regardless of `--interface` or `--source-ip` options.
I reviewed the code and moved the call to socket_bindtodevice() to ProbeMode::start() so that it will affect all modes, not just TCP.
npinglinuxnetwork-interface
Threads are ranked by how much they teach, not by date, from whichever source
carried them. Commands are shown as
posted, unrun, with the year they were written; a flag may have changed since.
Posters appear by role only.
Score card
Shipping velocityreleases a month, last 12 months
Documentation qualityrelease-notes rubric, 0–100
Breaking-change disciplinehow rarely a release breaks users, and notice given
Maintenance riskquiet time against its own cadence, maintainers
Innovation & surfacenew capabilities, API and MCP surface
Community health
Contributor trenddistinct committers, this year against last
Maintainer concentrationbus factor now against a year ago
Issue backlog trendissues closed per issue opened, 12 months
Responsivenessmedian time to a maintainer’s first reply
Nine scores for Nmap, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Each score is 0–100 on a published rubric, derived from data this site already shows.
A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
Documentation quality — the release-notes rubric published on the analytics page, unchanged.
Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail Nmap puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
Nothing first seen in this window. That doesn't mean Nmap shipped nothing, only that we found no record of it.
Changes per month New Updated Retired
2026-10
3
How we count
Read from 2 of 132 release notes and docs updates we hold for Nmap. "First seen" is the earliest note that names something; "last" is the latest. Our history may start partway through Nmap's life, so an old integration can show a recent first-seen date.
Each change counts once: "added 40 checks" is one line, so the numbers measure how often coverage moves, not how big the catalogue is or how well it detects.
Releases
Show
Coverage in all entries
132 entries
No entries match these filters.
Planned1
October 20264
September 20263
August 20266
March 20261
May 20251
April 20241
May 20231
September 20221
August 20211
October 20201
August 20191
March 20181
July 20171
June 20171
December 20161
September 20162
July 20161
March 20163
November 20152
June 20151
April 20141
July 20131
November 20121
May 20121
March 20121
January 20121
September 20112
June 20111
January 20111
July 20101
March 20101
January 20101
December 20091
November 20091
June 20091
May 20091
April 20091
March 20091
January 20091
September 20082
June 20082
March 20081
January 20082
December 20073
November 20073
October 20072
August 20073
July 20071
March 20071
December 20062
October 20061
September 20061
August 20061
July 20061
June 20061
May 20061
April 20061
March 20061
January 20062
December 20051
November 20051
April 20051
February 20051
October 20041
August 20041
July 20041
January 20041
October 20031
September 20034
August 20034
July 20032
June 20031
April 20031
March 20032
February 20031
December 20021
November 20021
September 20021
August 20021
July 20022
March 20021
October 20011
August 20011
July 20011
June 20011
March 20011
January 20011
October 20001
August 20001
April 20001
March 20001
January 20002
November 19991
April 19991
February 19991
Project health
Issue, contributor and maintainer activity in nmap/nmap, 2023-10 – 2026-09,
as of 2026-09-25. Twelve-month figures first; the trend lines run
the whole window.
Contributors3±0 vs prior 12 months
Maintainers1+1 joined · −1 left, last 12 months
Bus factor1committers behind half the commits
Community-filed95%of issues opened, last 12 months
Median time to close7.1 yearsfirst maintainer reply 15 hours
Open backlog362of 2,049 issues ever filed
Issues opened / month19 · 1communitymaintainers
Open backlog362
Contributors / month2
Commits / month63
Stars13,628
Issue themes, last 12 months
bugs 34%
features 1%
questions 1%
docs 1%
other 63%
Counts from the project's public repository and git history; no individuals
are identified. Maintainers are the committers covering 80% of the last year's
commits. how we measure this
Articles
29 articles
· updated Nov 4, 2026
Where Nmap turns up in what others publish: how-tos, attack reports that
name it, and incident write-ups. A row says why it is here and quotes where the
article names it; the link goes to the publisher.
Telnet is missing from almost every modern Linux install, but you can still test TCP or UDP ports with nc , nmap , ss , curl , or even a single line of built-in Bash.
2 more quotes
Modern Linux systems provide better tools such as nc (Netcat), nmap , curl , and Bash’s built-in TCP support.
Scan a Range of Ports With nmap nc is great when you want to check one port at a time.
Command Description nmap 192.168.1.10 Scan the 1000 most common TCP ports on one host sudo nmap 192.168.1.10 Same scan as root, which enables the faster SYN scan nmap -v 192.168.1.10 Increase verbosity, repeat as -vv…
Command Description nmap 192.168.1.10 10.0.0.5 Scan several hosts in one run nmap 192.168.1.0/24 Scan a whole subnet in CIDR notation nmap 192.168.1.1-50 Scan an address range nmap -iL targets.txt Read targets from a…
Overview This article examines how pairing ShellGPT — an AI-powered command-line assistant driven by the OpenAI API — with Nmap fundamentally changes the pace and precision of network reconnaissance.
2 more quotes
Traditional reconnaissance demands that the operator memorise a large vocabulary of Nmap flags, NSE script names, output-processing pipelines, and service-specific enumeration tools.
Nmap has been the industry-standard tool for this task for over two decades, and its depth is unmatched: it supports dozens of scan types, hundreds of NSE scripts covering every major protocol, OS fingerprinting, timing…
This walkthrough confirms an uncomfortable truth for defenders: flag-based firewall rules age poorly because Nmap supplies enough scan variants to circumvent any single combination.
2 more quotes
The attacker runs Kali Linux at 192.168.1.17 with Nmap 7.99, while the target runs Ubuntu at 192.168.1.5 and exposes an SSH service on port 22 (and HTTP on port 80 in later sections).
Wireshark captures every probe from the attacker side using the display filter “ip.addr == 192.168.1.5”, which isolates the relevant traffic and exposes the precise packet structure produced by each Nmap scan mode.
To obtain basic information such as database names, usernames, names of tables, etc from the SQL servers on the Windows operating system, we will execute penetration testing using Nmap scripts.
2 more quotes
nmap -p 1433 --script ms-sql-info 192.168.1.146 Credential Brute Force Performs brute-force password auditing against Ms-SQL servers and connection timeout (default: “5s”).
nmap -p1433 --script ms-sql-ntlm-info 192.168.1.146 MS-SQL Password Hash Dump The following command will dump the password hashes from an MS-SQL server in a format suitable for cracking by tools such as John-the-ripper.
Nmap Scripting Engine (NSE) has been one of the most efficient features of Nmap, which lets users prepare and share their scripts to automate the numerous tasks that are involved in networking.
2 more quotes
As we know about Nmap’s speed.
cd /usr/share/nmap/scripts/ ls -al *vulns* ms17-010 Vulnerability This script detects whether an SMBv1 server in Microsoft systems is vulnerable to the remote code execution which is commonly known as the EternalBlue…
Overview This article examines Nmap host discovery end-to-end and shows how a packet-filtering firewall answers it at every step.
2 more quotes
It walks through each discovery probe Nmap offers — the default combination, the TCP SYN and ACK pings, the ICMP echo and timestamp pings, the UDP ping, and the IP-protocol ping — and demonstrates, with live terminal…
Nmap performs this step automatically, yet a defender can shape its outcome.
Pentesters widely use Nmap , also known as Network Mapper , as one of the best open-source and handiest tools for security auditing and network scanning.
2 more quotes
Table of Contents Introduction- Scan Output Formats Nmap Scan Report in Normal Format Nmap Scan Report in XML Format Nmap scan Report in a Grepable Format Nmap Scan Report in Alias Format Introduction- Scan Output…
The Nmap tool has the capability to prepare scan results in various formats.
Overview Nmap timing templates (the -T0 through -T5 options) give an operator direct control over how aggressively the scanner probes a target.
2 more quotes
Nmap resolves this tension with six built-in timing templates that bundle dozens of low-level timing parameters into a single, convenient flag.
Understanding the Various Timing Scans Nmap’s timing templates — the -T flag that controls how fast and how aggressively the network scanner probes a target.
In this article we are going to scan the target machine with different Nmap ping scans and the response packets of different scans can be confirmed by analysis of Nmap traffic through Wireshark.
2 more quotes
Ping scan in nmap is done to check if the target host is alive or not.
Nmap scans changes their behavior according to the network they are scanning.
Overview This article demonstrates how to take direct control of the TCP control-bit field with Nmap’s –scanflags option, and how to prove the result on the wire with Wireshark.
2 more quotes
Standard Nmap scan types send fixed flag patterns, but –scanflags removes that constraint and lets the analyst place any combination of bits into a probe.
Nmap 7.99 crafts and sends every probe, while Wireshark captures the exchange and decodes the flag field of each segment.
Today we are discussing how to read hexadecimal bytes from an IP Packet that helps a network admin to identify various types of NMAP scanning.
2 more quotes
But before moving ahead please read our previous both articles “ Network packet forensic ” and “ NMAP scanning with Wireshark ” it will help you in a better understanding of this article.
Requirement Attacking Tool : Nmap Analysis Tool : Wireshark We are going to calculate hexadecimal bytes of Wireshark using given below table and as we know Wireshark capture network packet mainly of 4 layers which are…
Basically, in this article, we are testing Snort against NMAP various scan which will help network security analyst to setup snort rule in such a way so that they become aware of any kind of NMAP scanning.
2 more quotes
Requirement Attacker: Kali Linux (NMAP Scan) Target: Ubuntu (Snort as IDS) Optional: Wireshark (we have added it in our tutorial so that we can clearly confirm all incoming and outgoing packets of a network) Let’s…
Identify NMAP Ping Scan As we know any attacker will start the attack by identifying host status by sending ICMP packet using ping scan.
In our previous article we had demonstrated “Nmap firewall scan (part 1)” by making use of Iptable rules and then try to bypass firewall filter to perform NMAP Advance scanning, today we are going to discuss the second…
2 more quotes
nmap 192.168.1.117 In order to bypass above applied filter attacker may run netdiscover command or nmap Host Scan in Kali Linux terminal to identify the active host in the network.
Now either use one by one all MAC address in nmap command or save all MAC address in a text file and give its path in nmap command but to perform this attacker first need to enable “Promiscuous mode” of his network.
Several times you might have used NMAP to performing Network scanning for enumerating active Port services of target machine but in some scenario.
2 more quotes
Today we are going to demonstrate “Nmap firewall scan” by making use of Iptable rules and try to bypass the firewall filter to perform NMAP Advance scanning.
nmap -sT -p22 192.168.1.101 From given below image you can observe we had scanned port 22 as result it has shown Port 22 is Open for SSH service.
In this article, we are discussing MYSQL penetration testing using Nmap where you will learn how to retrieve database information such as database name, table’s records, username, password and etc.
2 more quotes
nmap -sT 192.168.1.216 From the given image you can observe port 3306 is open for MySQL service, now let’s enumerate it.
nmap -p3306 --script=mysql-brute --script-args userdb=/root/Desktop/user.txt,passdb=/root/Desktop/pass.txt 192.168.1.216 From the given image you can observe that it found the valid credential root: toor .
This article dissects five fundamental Nmap scan types — TCP Connect (-sT), SYN/Stealth (-sS), FIN (-sF), NULL (-sN), and Xmas (-sX) — by pairing each command with its corresponding Wireshark capture.
2 more quotes
Understanding what happens on the wire — not just what Nmap prints to the screen — separates a button-pusher from a true network analyst.
Lab Environment The attacker runs Kali Linux 2026 with Nmap 7.99 at 192.168.1.17.
This article is about how to scan any target for SQL injection using NMAP and then exploit the target with sqlmap if NMAP finds the target is vulnerable to SQL injection.
2 more quotes
Introduction: Scanning for SQL Injection Using Nmap Firstly Type www.vulnweb.com in URL to browse acunetix web application.
Here the required web page will get opened; testphp.vulnweb.com is our targeted host and now scans this target using nmap to identifying the possibilities of SQL injection.
Nmap (“Network Mapper”) is a free and open source (license) utility for network discovery and security auditing.
2 more quotes
Nmap uses raw IP packets in novel ways to determine what hosts are available on the network, what services (application name and version) those hosts are offering, what operating systems (and OS versions) they are…
Nmap runs on all major computer operating systems, and official binary packages are available for Linux, Windows, and Mac OS X.
…and NinjaRMM Discovery and lateral movement tools, including NetScan, Nmap, PsExec, Impacket, NetExec, and Remote Desktop Protocol (RDP) batch scripts Data collection and exfiltration tools, including s5cmd and…
1 more quote
…Post-compromise, Storm-2570 routinely conducts internal network discovery using tools such as NetScan, SoftPerfect Network Scanner Portable, and Nmap, alongside native discovery commands and file-searching activity.
The actor then repeatedly installs and configures reconnaissance tools such as nmap and masscan, along with BloodHound, NetExec, Responder, and Impacket for targeting AD environments, all within the same command history.
1 more quote
They appear to have used Masscan and Nmap to assess publicly exposed hosts, VPN-related ports, web services, SMB, and other active services in order to understand the external and internal network structure.
They aggressively scanned the internal network subnets with Nmap to identify connected hosts, and then used Nmap on the identified hosts to detect open services.
…T1043 Commonly Used Port Threat actor performed network scanning using Nmap, used ls and find commands to discover files on the Linux hosts T1083 File and Directory Discovery Collection T1005 Data from Local System…
Threat coverage
Content for the last year of exploited CVEs and attack reports.
Nmap has content for 1 of the 982 threats tracked in the last year, 1 of them exact.
exact1names the CVE
related0names the technique or product
tracked982threats in the last year
See the threats, and how similar tools compare threat by threat, with Researcher and Business.