Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


IPHeatmap is a tool for creating interactive IPv4 heatmaps. It allows zooming and panning to get a more detailed view of the IPv4 address space.

A live demo is available on the Gnutella2 Network IP Map.

This project was inspired by, and based on, the ipv4-heatmap tool.

It maps the IPv4 address space into a two dimensional image using a Hilbert curve.


Build IPHeatmap.

cd IPHeatmap
mvn package

Unpack the bundle.

mkdir /tmp/ipheatmap
tar jxCf /tmp/ipheatmap ipheatmap-assembly/target/ipheatmap-assembly-*-bundle.tar.bz2

Change to the ipheatmap directory.

cd /tmp/ipheatmap

Create a text file named sample.txt with 1 IP address per line. For example:

You will want to have a fairly large data set on the order of 100,000 IP addresses. Or if your data is packed into specific IP blocks then a smaller number of addresses would still produce interesting results.

Use the splitter tool to convert the input IP list into a format that can be used more efficiently by the tiling tool. The second argument is the directory where the data will be stored.

java -jar ipheatmap-splitter-0.0.1-SNAPSHOT-run.jar sample.txt data

Generate tiles using the tiler tool. tiles is the directory where the image files are stored. network-labels.txt is a file containing network blocks with annotations. They will show as overlays on the tile map. Lastly data is the directory of IP data that is used to create the tile images.

java -jar ipheatmap-tiler-0.0.1-SNAPSHOT-run.jar -o tiles -l network-labels.txt -i data

Open /tmp/ipheatmap/index.html in a web browser to see the result.


Interactive IP Address heatmap



No releases published
You can’t perform that action at this time.