tor/scripts/maint/geoip
Nick Mathewson f1fced828b Clarify where geoip-db-tool is.
Somebody emailed me to ask where to find the tool that generated our
geoip file. I was about to suggest that they search for "geoip-db-tool",
when I found that you can't actually search for that and find our code.

Therefore, I'm adding a link.
2023-07-13 16:04:35 -04:00
..
geoip-db-tool Clarify where geoip-db-tool is. 2023-07-13 16:04:35 -04:00
README.geoip Rust tool to convert IPFire Location dump into CSV format. 2021-02-22 12:25:18 -05:00
update_and_commit_geoip.sh script to generate a commit for an updated geoip file 2021-02-22 12:41:03 -05:00
update_geoip.sh scripts: Use latest geoip database instead of using location 2023-06-01 09:32:11 -04:00

To generate new geoip files, you'll need to install the
libloc/"location" tool provided by https://location.ipfire.org/.
I personally build it with:

  ./configure CFLAGS='-g -O2' --disable-perl --without-systemd --prefix=/opt/libloc
  make
  make install

Then (after adjusting PATH and PYTHONPATH) you can get the latest
dump with:

  location update
  location dump geoip-dump.txt

And transform it into geoip files with

  cargo run --release -- -i geoip-dump.txt


==============================

Note that the current version "0.1.9" of rangemap has a performance
bug, making this tool quite slow.  Previous versions had a
correctness bug that made the output needlessly long.  With luck,
there will soon be a fast correct rangemap version.