Skip to content
ZMapv6: Internet Scanner with IPv6 capabilities
Branch: master
Clone or download
Pull request Compare This branch is 23 commits ahead, 23 commits behind zmap:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
conf
examples
lib
scripts
src
test
.clang-format
.gitignore
.travis.yml
10gigE.md
AUTHORS
CHANGELOG.md
CMakeLists.txt
CONTRIBUTING.md
INSTALL.md
LICENSE
README.md
format.sh

README.md

ZMap: The Internet Scanner

Build Status

ZMap is a fast single packet network scanner designed for Internet-wide network surveys. On a typical desktop computer with a gigabit Ethernet connection, ZMap is capable scanning the entire public IPv4 address space in under 45 minutes. With a 10gigE connection and PF_RING, ZMap can scan the IPv4 address space in under 5 minutes.

ZMap operates on GNU/Linux, macOS, and BSD. ZMap currently has full implemented probe modules for TCP SYN scans, ICMP, DNS queries, UPnP, BACNET, and can send a large number of UDP probes. If you are looking to do more involved scans, e.g., banner grab or TLS handshake, take a look at ZGrab, ZMap's sister project that performs application-layer handshakes.

Installation

The latest stable release of ZMap is version 2.1.1 and supports Linux, macOS, and BSD. It can be installed through the built-in package managers on the following operating systems:

OS
Debian or Ubuntu sudo apt install zmap
Fedora, CentOS, and RHEL sudo yum install zmap
Gentoo sudo emerge zmap
macOS (using Homebrew) brew install zmap
Arch Linux sudo pacman -S zmap

Instructions on building ZMap from source can be found in INSTALL.

Usage

A guide to using ZMap is found in our GitHub Wiki.

IPv6 support

We added IPv6 support to ZMap and include the following new probe modules:

  • ICMPv6 Echo Request: icmp6_echoscan
  • IPv6 TCP SYN (any port): ipv6_tcp_synscan or ipv6_tcp_synopt
  • IPV6 UDP (any port and payload): ipv6_udp

You can specify the respective IPv6 probe module using the -M or --probe-module command line flag.

In addition, you need to specify the source IPv6 address with the --ipv6-source-ip flag and a file containing IPv6 targets using the --ipv6-target-file flag. More information can be found using the --help flag.

As targets for your IPv6 measurements you can e.g. use addresses from our IPv6 Hitlist Service.

License and Copyright

ZMap Copyright 2017 Regents of the University of Michigan

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See LICENSE for the specific language governing permissions and limitations under the License.

You can’t perform that action at this time.