Kali Linux

xmap : Performing Internet-wide IPv6 & IPv4 Network Research Scanning

xmap a tool for Performing Internet-wide IPv6 & IPv4 Network Research Scanning

Installing and Building XMap

Installing via Package Manager

XMap operates on GNU/Linux, macOS, and BSD.

Installing with the most OS package managers is not integrated yet.

OS
Fedora 19+ or EPEL 6+-
Debian 8+ or Ubuntu 14.04+-
Gentoo-
macOS (using Homebrew)-
Arch Linux-

Building from Source

Installing XMap Dependencies

XMap has the following dependencies:

  • CMake – Cross-platform, open-source build system
  • GMP – Free library for arbitrary precision arithmetic
  • gengetopt – Command line option parsing for C programs
  • libpcap – Famous user-level packet capture library
  • flex and byacc – Output filter lexer and parser generator
  • json-c – JSON implementation in C
  • libunistring – Unicode string library for C
  • libdnet – (macOS Only) Gateway and route detection

In addition, the following optional packages enable optional XMap functionality:

  • hiredis – RedisDB support in C

Install the required dependencies with the following commands.

  • On Debian-based systems (including Ubuntu):
  • sudo apt-get install build-essential cmake libgmp3-dev gengetopt libpcap-dev flex byacc libjson-c-dev pkg-config libunistring-dev

On RHEL- and Fedora-based systems (including CentOS):

sudo yum install cmake gmp-devel gengetopt libpcap-devel flex byacc json-c-devel libunistring-devel

Development Notes

  • Enabling development turns on debug symbols, and turns off optimizations. Release builds should be built with -DENABLE_DEVELOPMENT=OFF.
  • Enabling log_trace can have a major performance impact and should not be used except during early development. Release builds should be built with -DENABLE_LOG_TRACE=OFF.
  • Redis support is not enabled by default. If you want to use XMap with Redis, you will first need to install hiredis. Then run cmake with -DWITH_REDIS=ON. Debian/Ubuntu has packaged hiredis as libhiredis-dev; Fedora and RHEL/CentOS have packaged it as hiredis-devel.
  • Building packages for some systems like Fedora and RHEL requires a user-definable directory (buildroot) to put files. The way to respect this prefix is to run cmake with -DRESPECT_INSTALL_PREFIX_CONFIG=ON.
  • Manpages (and their HTML representations) are generated from the .ronn source files in the repository, using the ronn tool. This does not happen automatically as part of the build process; to regenerate the man pages you’ll need to run make manpages. This target assumes that ronn is in your PATH.
  • Building with some versions of CMake may fail with unable to find parser.h. If this happens, try updating CMake. If it still fails, don’t clone XMap into a path that contains the string .com, and try again.
  • XMap may be installed to an alternative directory, with the CMAKE_INSTALL_PREFIX option. For example, to install it in $HOME/opt run

cmake -DCMAKE_INSTALL_PREFIX=$HOME/opt .
make -j4
make install

R K

Recent Posts

How AI Puts Data Security at Risk

Artificial Intelligence (AI) is changing how industries operate, automating processes, and driving new innovations. However,…

22 hours ago

The Evolution of Cloud Technology: Where We Started and Where We’re Headed

Image credit:pexels.com If you think back to the early days of personal computing, you probably…

5 days ago

The Evolution of Online Finance Tools In a Tech-Driven World

In an era defined by technological innovation, the way people handle and understand money has…

5 days ago

A Complete Guide to Lenso.ai and Its Reverse Image Search Capabilities

The online world becomes more visually driven with every passing year. Images spread across websites,…

6 days ago

How Web Application Firewalls (WAFs) Work

General Working of a Web Application Firewall (WAF) A Web Application Firewall (WAF) acts as…

1 month ago

How to Send POST Requests Using curl in Linux

How to Send POST Requests Using curl in Linux If you work with APIs, servers,…

1 month ago