tor/scripts/maint/geoip
David Goulet 5530af675b scripts: Quiet the IPFire location GeoIP command
We do this to avoid useless outputs but also, in the CI environement,
the Python logging package stacktraces with a problem on a socket.

The command still works but the logging fails. With the quiet switch, we
don't get such stacktrace.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-10-27 10:24:13 -04:00
..
geoip-db-tool geoip script: add options to output AS numbers. 2021-04-14 10:28:44 -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: Quiet the IPFire location GeoIP command 2021-10-27 10:24:13 -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.