PAGES
← all tools
◆ Reconnaissance & OSINT

ike-scan

1.1 open-source

ike-scan discovers IKE hosts (IPsecIPsecA suite of IETF protocols that authenticate and encrypt IP packets at the network layer, giving cyber tools a standards-based way to build VPNs or secure host-to-host tunnels without modifying applications. VPNVPNA virtual private network, an encrypted tunnel between devices or networks. It carries traffic across another network as though the endpoints had a private connection. servers) and can fingerprint them using retransmission backoff patterns and Vendor ID payloads.

Summary

ike-scan is an open-source command-line tool that discovers and fingerprints IKE hosts, the endpoints of IPsec VPN servers, and it is free to use. It works by sending IKE phase-1 requests to a target or a list of hosts read from a file, then analyzing the responses and retransmission backoff patterns to identify the VPN implementation behind them, with options for NAT-Traversal encapsulation and experimental IKEv2IKEv2The second version of the Internet Key Exchange protocol, standardized by the IETF, used to negotiate and authenticate IPsec tunnels. Cyber tools build on it for reliable, fast VPN session setup with built-in NAT traversal and EAP support. support. This fits penetration testers and network auditors doing reconnaissance against VPN gateways before deeper testing, sitting in the same recon space as port and service scanners but purpose-built for IKE. First committed in 2001 with 11 contributors, it has had no commits in the past year.

ike-scan discovers IKE hosts (IPsec VPN servers) and can fingerprint them using retransmission backoff patterns and Vendor ID payloads.

How ike-scan helps

Which hosts on this network are actually running an IPsec VPN gateway?

sends IKE phase-1 requests to a target or a list of hosts read from a file and reports which ones return a valid IKE response

Which VPN implementation is running behind a given gateway before I test it further?

compares the retransmission backoff pattern and response characteristics against known signatures to identify the underlying IKE implementation

Can a VPN gateway sitting behind a NAT device still be reached and identified?

encapsulates outgoing packets with the RFC 3947 non-ESP marker and switches to the NAT-Traversal ports so responses from a NAT-hidden gateway are still captured and decoded

Is a gateway responding to newer IKE protocol negotiation as well as the older one?

sends packets in IKEv2 format and decodes any returned payloads as IKEv2 or IKEv1 automatically, though this path is still experimental

Are any of my probes being dropped or ignored when scanning a large host list?

tags each received packet with the ordinal host number it corresponds to, so gaps in the sequence show which targets never answered

When did each response actually arrive during a scan?

timestamps every received packet so response timing can be checked against when the request was sent

all 20 features, with the evidence for each →

Languages

Not documented

Features

20 capabilities · 3 backed by code, an API document or a real run

Built from ike-scan'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.

Compare with peers →

  • ike-scan covers 1 of the 13 network discovery and scanning capabilities we track.

What ike-scan offers you

  • Command-line interface10
All capabilities 20 capabilities
Protocol header and field manipulation shipped Allows manual modification of ISAKMP/IKE protocol headers (version, length, flags, message ID, exchange type) and proposal fields (DOI, Transform ID, Situation ID, lifetime, nonce length) for testing edge cases or custom implementations. 12 releases · 3 other sources · first seen Feb 2005

Also counts toward: Command-line interface

release 12 total

  • --id payload strings are now interpreted differently if they lack a leading 0x prefix; previously all strings were treated as hex, but now only those starting with 0x are hex values, likely requiring updates to previous ID payload configurations 1.7 · Nov 2013 · source · release history
  • --lifetime and --lifesize options now accept hex numbers (e.g., 0xff) to set variable length values in addition to decimal integers or the none option 2005-07-21 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2005 · source · release history
  • Adds --exchange option to allow the exchange field in the ISAKMP header to be set to arbitrary values 2005-07-06 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2005 · source · release history
  • Adds --hdrflags option to specify the Flags field in the ISAKMP header 2005-06-21 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2005 · source · release history
  • Adds --hdrmsgid option to specify the MsgID field in the ISAKMP header 2005-06-21 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2005 · source · release history
  • Adds --protocol (-j) flag to set the proposal protocol for outbound IKE packets 2005-03-19 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2005 · source · release history

example

  • Use the new flexible transform syntax to specify attributes out of order with custom key-value pairs ike-scan --trans=(enc=AES_CBC,keylen=256,hash=SHA2_256) <target> 1.8 · Nov 2013 · source
  • Force the MBZ fields to non-zero values to test endpoint compliance with strict RFC validators. ike-scan --mbz 1 <target_ip> 2005-03-09 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2005 · source
  • Force a specific nonce length (e.g., 16 bytes) for aggressive mode probes ike-scan --noncelen=16 <target> 2005-02-15 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2005 · source
Target specification and scanning scope shipped suggested Supports scanning IP ranges, CIDR subnets, and contiguous address blocks directly in target arguments without manual expansion. 7 releases · 6 other sources · first seen Dec 2003

Suggested capability: Attack surface inventory. This is our guess, not confirmed.

Also counts toward: Command-line interface

release 7 total

  • Adds IPnet:netmask format support in host patterns for more flexible network targeting 1.9.3 · Apr 2011 · source · release history
  • Optimizes IPnet/bits, IPnet:mask and IPstart-IPend pattern parsing to use efficient inet_aton() instead of get_host_address() 1.9.3 · Apr 2011 · source · release history
  • Adds --readpktfromfile CLI flag to read an IKE packet from a specified file instead of the network 2007-01-02 Roy Hills <Roy.Hills@nta-monitor.com> · Jan 2007 · source · release history
  • Adds extra data structure to host entry to support attaching arbitrary extra data such as an id string or transform specification 2005-02-18 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2005 · source · release history
  • Adds the --random (shorthand -R) CLI option to shuffle the list of target hosts using the Knuth shuffle algorithm before scanning 2004-04-15 Roy Hills <Roy.Hills@nta-monitor.com> · Apr 2004 · source · release history
  • Adds support for IPstart-IPend range syntax in target arguments 2003-12-10 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history

docs

  • Discovers and fingerprints IKE/IPsec VPN hosts by sending IKE phase-1 requests and analyzing responses and retransmission backoff patterns.

example

  • Randomize the order in which targets are probed to avoid triggering linear pattern-based defenses or load balancers ike-scan --random <target_range> 2004-04-15 Roy Hills <Roy.Hills@nta-monitor.com> · Apr 2004 · source
  • Scan a CIDR subnet for IKE responses without expanding the list manually ike-scan 192.168.1.0/24 2003-12-10 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source
  • Scan a contiguous block of IP addresses by specifying start and end points ike-scan 192.168.1.1-192.168.1.50 2003-12-10 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source
  • Scan hosts from file ike-scan --file=hostlist.txt
  • Scan single host for IKE ike-scan 172.16.2.2
Received packet display options verified Annotates received packets with optional per-packet timestamps and ordinal host numbers to aid analysis of responses. 8 releases · 3 other sources · first seen Nov 2003

release 8 total

  • Adds --shownum flag to display the return packet number 2006-08-04 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2006 · source · release history
  • Adds experimental %H:%M:%S.%u format support to display received packet timestamps before packet details. 2006-05-12 Roy Hills <Roy.Hills@nta-monitor.com> · May 2006 · source · release history
  • ike-scan now displays details of an ISAKMP Notification payload if one is returned, rather than just generic payload information 2005-08-01 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2005 · source · release history
  • Displays the IKEv1 responder cookie value as a hex string in SA and Notify payloads. 2005-06-15 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2005 · source · release history
  • Prints the SA Proposal Security Parameter Index (SPI) as hex when the proposal header SPI size is non-zero. 2005-06-15 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2005 · source · release history
  • Adds the psk-crack program to crack Aggressive Mode Pre-Shared Keys using a dictionary file 2004-07-19 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2004 · source · release history

command line

  • --timestamp — Display timestamps for received packets. This option causes a timestamp to be displayed for each received packet. 1.9 · Nov 2013 · command-line history
  • --shownum — Display the host number for received packets. This displays the ordinal host number of the responding host before the IP address. It can be useful when sending many packets to the same target IP, to see if any probes are being ignored. 1.9 · Nov 2013 · command-line history

example

  • Inspect return packets to identify specific responses during DoS testing. ike-scan --shownum <target> 2006-08-04 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2006 · source
IKE payload customization shipped Enables the inclusion and specification of custom IKE payloads such as CertificateRequest, Transform attributes with arbitrary values, and static initiator cookies for specific probing scenarios. 5 releases · 4 other sources · first seen Mar 2005

Also counts toward: Command-line interface

release

  • Adds --gssid (-G) flag to inject custom GSS IDs for testing Kerberos-based IPsec authentication 1.6 · Nov 2013 · source · release history
  • Adds --lifesize (-z) option to specify ISAKMP lifetime size transform attribute in kilobytes 1.6 · Nov 2013 · source · release history
  • --dhgroup=n now supports ECP Diffie-Hellman groups 19, 20, and 21 in ike-scan. 2013-10-26 Roy Hills <Roy.Hills@nta-monitor.com> · Oct 2013 · source · release history
  • Adds --trans=(attr=value, ...) syntax to the --trans option for creating IKE transforms with arbitrary attributes 2005-08-02 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2005 · source · release history
  • Adds --certreq (-C) CLI flag to include a CertificateRequest payload in outgoing packets 2005-03-10 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2005 · source · release history

example

  • Probe a target using Elliptic Curve Diffie-Hellman group 21. ike-scan --dhgroup=21 <target> 2013-10-26 Roy Hills <Roy.Hills@nta-monitor.com> · Oct 2013 · source
  • Probe a target using Elliptic Curve Diffie-Hellman group 19. ike-scan --dhgroup=19 <target> 2013-10-26 Roy Hills <Roy.Hills@nta-monitor.com> · Oct 2013 · source
  • Generate a deterministic IKE SA query to compare payloads against known good examples in testing. ike-scan --randomseed 12345 <target> 2006-03-22 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2006 · source
  • Send an IKE_SA_INIT request containing a CertificateRequest payload to probe for specific certification authorities. ike-scan --certreq <target_ip> 2005-03-10 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2005 · source
Fuzzing patterns and backoff shipped Allows configuration of per-entry fuzz values, custom vendor ID fingerprint patterns, and specific IKE backoff patterns for testing device rekeying behavior. 7 releases · 2 other sources · first seen Jul 2003

release 7 total

  • --randomseed enables specifying the PRNG seed for repeatable packet data 2006-03-22 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2006 · source · release history
  • Uses POSIX regex to split backoff and vendor ID patterns for more flexible matching. 2005-05-12 Roy Hills <Roy.Hills@nta-monitor.com> · May 2005 · source · release history
  • --vidpatterns / -I flag to specify a custom Vendor ID patterns file location for fingerprinting. 2003-12-11 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history
  • Adds detection and printing of vendor ID payloads anywhere in the packet (previously restricted to immediately after the SA payload), supporting accurate aggressive mode analysis. 2003-11-18 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2003 · source · release history
  • Updates help output to clarify that per-pattern fuzz entries override global --fuzz settings. 2003-07-10 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2003 · source · release history
  • Enables per-entry fuzz values in backoff patterns using the / notation (e.g., base/interval/fuzz). 2003-07-10 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2003 · source · release history

docs

  • Discovers and fingerprints IKE/IPsec VPN hosts by sending IKE phase-1 requests and analyzing responses and retransmission backoff patterns.

example

  • Specify a custom backoff with per-entry fuzz using the new slash notation. ike-scan --backoff=10/5/2 <target_ip> 2003-07-10 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2003 · source
IKEv2 protocol support verified Sends outgoing packets using IKEv2 format (RFC 4306) as an experimental alternative to the default IKEv1 format. 5 releases · 3 other sources · first seen Jul 2004

Also counts toward: Command-line interface

release

  • Changes default packet rate calculation from interval to bandwidth (default: 56000 bits per second) 2005-07-06 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2005 · source · release history
  • Adds --cookie option to set the initiator cookie to a static value 2005-06-21 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2005 · source · release history
  • Adds --bandwidth (-B) flag to specify outgoing bandwidth directly, automatically calculating the appropriate interval based on packet size 2005-02-15 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2005 · source · release history
  • Allows --tcp flag to take an optional numeric argument (1 for raw IKE over TCP, default; 2 for Cisco encapsulation) to target specific implementations like Cisco VPN Concentrator. 1.6.2 · Jul 2004 · source · release history
  • Adds --tcp (-T) option to scan IKE over TCP instead of UDP only, supporting raw IKE and Cisco proprietary encapsulated IKE. 1.6.2 · Jul 2004 · source · release history

command line

  • --ikev2 — Use IKE version 2 This causes the outgoing packets to use IKEv2 format as defined in RFC 4306 instead of the default IKEv1 format. Any packets returned are automatically decoded as IKE or IKEv2 depending on their payloads irrespective of this option. The --ikev2 option is currently experimental. 1.9 · Nov 2013 · command-line history

example

  • Spoof a specific initiator cookie to test or interact with VPN gateways requiring static cookies ike-scan --cookie 0x1a2b3c4d5e6f7890 10.0.0.1 2005-06-21 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2005 · source
  • Throttle scan traffic to a specific bandwidth limit (e.g., 1 Mbps) to avoid detection or congestion ike-scan --bandwidth=1000000 <target> 2005-02-15 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2005 · source
Source code distribution and build structure shipped Provides access to the project's source code files, including shell scripts and C headers, for building or inspecting the underlying implementation. 2 releases · 5 other sources · first seen Nov 2013

release

  • Releases a Windows command-line binary. 1.1 · Nov 2013 · source · release history
  • Supports building and running on Windows/Cygwin, old libc5 Linux systems, and Solaris 2.8 / SPARC. 1.1 · Nov 2013 · source · release history

docs

  • #ifndef _GETOPT_H #ifndef __need_getopt # define _GETOPT_H #if !defined __GNU_LIBRARY__ # include <ctype.h> #ifdef __cplusplus extern C extern char * optarg ; extern int optind ; extern int opterr ; extern int optopt ; #ifndef __need_getopt struct option # if (defined __STDC__ && __STDC__ ) || defined __cplusplus… seen Aug 2026 · source
  • #!/bin/sh # The IKE Scanner (ike-scan) is Copyright (C) 2003-2007 Roy Hills, # NTA Monitor Ltd. # This file is part of ike-scan. seen Aug 2026 · source
  • #! /bin/sh The IKE Scanner (ike-scan) is Copyright (C) 2003-2007 Roy Hills, NTA Monitor Ltd. This file is part of ike-scan. seen Aug 2026 · source
  • #!/bin/sh # The IKE Scanner (ike-scan) is Copyright (C) 2003-2007 Roy Hills, # NTA Monitor Ltd. # This file is part of ike-scan. seen Aug 2026 · source
  • 63 #! /bin/sh The IKE Scanner (ike-scan) is Copyright (C) 2003-2007 Roy Hills, NTA Monitor Ltd. This file is part of ike-scan. seen Aug 2026 · source
Vendor ID handling and fingerprinting shipped Enables scanning for IKE vendors using a custom database, supporting arbitrary hex vendor IDs and improved decoding of vendor ID payloads in aggressive mode. 5 releases · 2 other sources · first seen Jul 2003

Shared capability: Attack surface inventory

Also counts toward: Command-line interface

release

  • Adds several new Vendor ID patterns bringing the total recognized to 68 2004-06-16 Roy Hills <Roy.Hills@nta-monitor.com> · Jun 2004 · source · release history
  • Existing hexadecimal values passed to --id must gain a leading 0x or be rewritten as text strings. 2004-05-25 Roy Hills <Roy.Hills@nta-monitor.com> · May 2004 · source · release history
  • The --id argument now supports both hex (e.g. 0xdeadbeef) and plain text (e.g. test) values, with the leading 0x indicating a hex format. 2004-05-25 Roy Hills <Roy.Hills@nta-monitor.com> · May 2004 · source · release history
  • Allows specifying arbitrary vendor IDs in --vendor as a hex string instead of an MD5 hash 2003-07-16 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2003 · source · release history
  • --vendor now expects a hex string; passing a plain text string (previously hashed to MD5) is no longer interpreted as a vendor ID. 2003-07-16 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2003 · source · release history

example

  • Send a custom Vendor ID to test how a target handles specific ISAKMP payloads ike-scan --vendor '0123456789abcdef' <target> 1.4 · Nov 2013 · source
  • Scan a target for IKE vendors using a custom database file instead of the default. ike-scan --vidpatterns /path/to/my-vendors.txt <target> 2003-12-11 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source
Output control and verbose display shipped Provides options to format packet decoding across multiple lines, suppress decode output, adjust timing precision for scans, and view vendor IDs with arbitrary hex strings. 6 releases · 1 other source · first seen Nov 2003

Also counts toward: Command-line interface

release

  • Improves protocol decode by showing SA transform attributes and ID payloads 2003-12-24 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history
  • Adds --multiline option to split decode over multiple lines (one line per payload) 2003-12-24 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history
  • Adds --quiet option to suppress packet decode output 2003-12-24 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history
  • Vendor ID fingerprinting capability using fingerprints loaded from the ike-vendor-ids database. 2003-12-11 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history
  • Adds support for IPstart-IPend range syntax in target arguments 2003-12-10 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2003 · source · release history
  • Re-writes display_packet() to parse ISAKMP packets using new isakmp.c routines, enabling display of multiple Vendor ID payloads instead of just the first one. 2003-11-18 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2003 · source · release history

example

  • Show usage information ike-scan -h
Transport and scanning mode configuration shipped suggested Provides options to switch between UDP and TCP transport for probing, handle TIME_WAIT states, and control bandwidth limits for scan traffic. 4 releases · 2 other sources · first seen Feb 2005

Suggested capability: Attack surface inventory. This is our guess, not confirmed.

release

  • The default packet-rate calculation changed from interval to bandwidth (defaulting to 56000 bits/sec), altering timing behavior for existing scans that relied on the old default 1.8 · Nov 2013 · source · release history
  • Adds --tcp (-T) option to support raw (-T1) and encapsulated (-T2) IKE over TCP scanning 1.7 · Nov 2013 · source · release history
  • Adds --tcp option with SO_REUSEADDR to allow TCP scanning even if the port is in TIME_WAIT state. 2005-05-12 Roy Hills <Roy.Hills@nta-monitor.com> · May 2005 · source · release history
  • Adds --bandwidth (-B) flag to specify outgoing bandwidth directly, automatically calculating the appropriate interval based on packet size 2005-02-15 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2005 · source · release history

example

  • Scan for IKE services on a specific IP using TCP to avoid TIME_WAIT conflicts. ike-scan --tcp <target> 2005-05-12 Roy Hills <Roy.Hills@nta-monitor.com> · May 2005 · source
  • Throttle scan traffic to a specific bandwidth limit (e.g., 1 Mbps) to avoid detection or congestion ike-scan --bandwidth=1000000 <target> 2005-02-15 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2005 · source
PSK extraction and cracking shipped Supports extracting Pre-Shared Key material from IKE exchanges for offline brute-forcing using a dictionary-based cracker. 4 releases · 2 other sources · first seen Jul 2004

Also counts toward: Command-line interface

release

  • New check-psk-crack-4 test script added to improve psk-crack.c and hash_functions.h coverage 2007-01-02 Roy Hills <Roy.Hills@nta-monitor.com> · Jan 2007 · source · release history
  • psk-crack now supports cracking multiple PSK hashes from a single parameters file containing multiple lines 2004-12-08 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2004 · source · release history
  • Adds optional filename argument to --pskcrack (-P) option to write PSK data to a file for later cracking with psk-crack 2004-11-29 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2004 · source · release history
  • Adds --pskcrack (-P) option to output PSK parameters as colon-separated hex values for external cracking. 2004-07-09 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2004 · source · release history

example

  • Capture Pre-Shared Key material from an ISAKMP exchange to a file for offline brute-forcing. ike-scan --pskcrack=keys.dat <target_ip> 2004-11-29 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2004 · source
  • Extract IKE SA parameters from a target in Aggressive Mode to prepare the hash for offline cracking. ike-scan --pskcrack <target_ip> 2004-07-09 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2004 · source
Source IP spoofing shipped suggested Allows overriding the source IP address of outgoing probes, including randomized values to avoid detection or NAT issues. 3 releases · 2 other sources · first seen Aug 2006

Suggested capability: Active network scanning. This is our guess, not confirmed.

Also counts toward: Command-line interface

release

  • --sourceip: New CLI flag accepting an IP address or the string random to set the source IP for IKE probes 2006-11-25 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2006 · source · release history
  • --randsrc option now works on Solaris 9 and FreeBSD 5.3. 2006-08-22 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2006 · source · release history
  • Adds --randsrc option for source IP spoofing in ike-scan 2006-08-04 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2006 · source · release history

example

  • Probe an IKE endpoint using a spoofed random source IP to avoid detection or NAT issues. ike-scan --sourceip random <target> 2006-11-25 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2006 · source
  • Scan IKE services while randomly spoofing your source IP address. ike-scan --randsrc <target> 2006-08-04 Roy Hills <Roy.Hills@nta-monitor.com> · Aug 2006 · source
NAT-Traversal encapsulation verified Wraps outgoing packets with the non-ESP marker and adjusts ports to 4500 to support RFC 3947 NAT-T IKE traversal. 2 releases · 1 other source · first seen Jul 2003

Also counts toward: Command-line interface

release

  • Adds --nat-t command-line option to enable RFC 3947 NAT Traversal, including Non-ESP marker handling and UDP port changes to 4500 2006-12-21 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2006 · source · release history
  • Adds watchguard-soho and sonicwall-pro to the list of supported ike-backoff-patterns for testing device rekeying behavior. 2003-07-10 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2003 · source · release history

command line

  • --nat-t — Use RFC 3947 NAT-Traversal encapsulation. This option adds the non-ESP marker to the beginning of outgoing packets and strips it from received packets, as described in RFC 3947. It also changes the default source port to 4500 and the default destination port to 4500, which are the ports for NAT-T IKE. 1.9 · Nov 2013 · command-line history
Output payload decoding shipped Enhances the display of received packet payloads, explicitly decoding details for Delete, Notification, SA Proposal SPI, and Certificate types. 1 release · 1 other source · first seen Mar 2005

release

  • Improves decoding of Certificate and CertificateRequest payloads to explicitly include the certificate type in output 2005-03-10 Roy Hills <Roy.Hills@nta-monitor.com> · Mar 2005 · source · release history

example

  • Debug IKE packet decoding by analyzing a captured pcap or raw file locally without network traffic. ike-scan --readpktfromfile <path> 2007-01-02 Roy Hills <Roy.Hills@nta-monitor.com> · Jan 2007 · source
Responder cookie manipulation shipped Enables the specification of a specific responder cookie value for IKE negotiations to test or force negotiation states. 1 release · 1 other source · first seen Dec 2006

release

  • Adds --rcookie option to set the responder cookie value 2006-12-27 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2006 · source · release history

example

  • Force a specific responder cookie during an IKE negotiation test. ike-scan --rcookie <value> <target_ip> 2006-12-27 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2006 · source
Microsecond timing precision shipped suggested Allows configuration of scan intervals and display timings with microsecond precision for high-resolution responder detection. 1 release · 1 other source · first seen Dec 2004

Suggested capability: Active network scanning. This is our guess, not confirmed.

release

  • Allows --interval flag to accept seconds via a trailing s (e.g., 10s) for finer granularity in timing packets. 2006-05-12 Roy Hills <Roy.Hills@nta-monitor.com> · May 2006 · source · release history

example

  • Use microsecond precision when scanning for low-latency or high-precision IKE responder detection ike-scan --interval=10u 192.168.1.1 2004-12-31 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2004 · source
DNS resolution control shipped suggested Provides the option to skip DNS lookups during scanning to improve speed and avoid dependency on name resolution services. 1 release · 1 other source · first seen Oct 2004

Suggested capability: Active network scanning. This is our guess, not confirmed.

release

  • Adds --nodns / -N flag to skip DNS resolution during scans 2004-10-05 Roy Hills <Roy.Hills@nta-monitor.com> · Oct 2004 · source · release history

example

  • Scan an IP range without waiting on DNS lookups to speed up CI or bulk scans. ike-scan --nodns 192.168.1.0/24 2004-10-05 Roy Hills <Roy.Hills@nta-monitor.com> · Oct 2004 · source
Cryptographic implementation testing documented Includes test suites for verifying the correctness and performance of hash functions (e.g., MD5, HMAC) used in the tool. 2 other sources

docs

  • #include ike-scan.h #include hash_functions.h #define NUM_HMAC_TESTS 1 #define HMAC_SPEED_ITERATIONS 100000 #define HASH_SPEED_ITERATIONS 500000 main(void) { static const char *md5_tests[] = { "", "a", "abc", "message digest", "abcdefghijklmnopqrstuvwxyz",… seen Sep 2026 · source
  • #include ike-scan.h #include hash_functions.h #define NUM_HMAC_TESTS #define HMAC_SPEED_ITERATIONS 100000 #define HASH_SPEED_ITERATIONS 500000 main ( void ) { static const char md5_tests [] = { "" , "a" , "abc" , "message digest" , "abcdefghijklmnopqrstuvwxyz" ,… seen Aug 2026 · source
IKE Challenge/Response recognition shipped Extends the authentication map to recognize and handle IKE Challenge/Response for Authenticated Cryptographic Keys. 1 release · first seen Dec 2006

release

  • Adds CRACK (code 128) to the ISAKMP authentication map in isakmp.c, allowing ike-scan to recognize and handle IKE Challenge/Response for Authenticated Cryptographic Keys as defined in draft-harkins-ipsra-crack-00. 2006-12-17 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2006 · source · release history
Packet output control shipped Allows writing outgoing packets to a file instead of sending them directly. 1 release · first seen Nov 2005

Also counts toward: Command-line interface

release

  • Adds --writepkttofile flag to write output packets to a local file instead of sending them 2005-11-25 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2005 · 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.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for ike-scan, 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.

Score cards are part of every paid plan.

See plans →

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 ike-scan 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.

Checking release-note history…

Explore the full chart →

Releases

Show

52 entries

  1. November 20137
  2. October 20131
  3. April 20111
  4. January 20071
  5. December 20063
  6. November 20061
  7. August 20063
  8. May 20061
  9. March 20061
  10. November 20052
  11. August 20052
  12. July 20052
  13. June 20053
  14. May 20051
  15. March 20053
  16. February 20052
  17. December 20042
  18. November 20041
  19. October 20041
  20. July 20043
  21. June 20041
  22. May 20041
  23. April 20041
  24. December 20033
  25. November 20031
  26. October 20031
  27. July 20033
    Show

    52 entries

    Project health

    Issue, contributor and maintainer activity in royhills/ike-scan, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 0 ±0 vs prior 12 months
    2. Maintainers 0 +0 joined · −0 left, last 12 months
    3. Bus factor 0 committers behind half the commits
    4. Community-filed not measured of issues opened, last 12 months
    5. Median time to close not measured issues closed, last 12 months
    6. Open backlog 19 of 27 issues ever filed
    1. Issues opened / month 0 · 0 communitymaintainers
    2. Open backlog 19
    3. Contributors / month 0
    4. Commits / month 0
    5. Stars 421
    Issue themes, last 12 months not measured

    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

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    None of its release's images build from a lockfile we can read.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →