ONYPHE has made available a free API and free MMDB download of their new Geolocus database. It provided IP address metadata in the form of:
{
"abuse":
[
"amzn-noc-contact@amazon.com",
"aws-routing-poc@amazon.com",
"aws-rpki-routing-poc@amazon.com",
"trustandsafety@support.aws.com"
],
"asn": "AS14618",
"continent": "NA",
"continentname": "North America",
"country": "US",
"countryname": "United States",
"domain":
[
"amazon.com",
"amazonaws.com",
"aws.com"
],
"ip": "3.215.138.152",
"isineu": 0,
"latitude": "37.09024",
"location": "37.09024,-95.712891",
"longitude": "-95.712891",
"netname": "AMAZON-IAD",
"organization": "Amazon Data Services NoVa",
"physical_asn": "AS14618",
"physical_continent": "NA",
"physical_continentname": "North America",
"physical_country": "US",
"physical_countryname": "United States",
"physical_isineu": 0,
"physical_latitude": "37.09024",
"physical_location": "37.09024,-95.712891",
"physical_longitude": "-95.712891",
"physical_organization": "Amazon.com, Inc.",
"physical_subnet": "3.208.0.0/12",
"physical_timezone": "America/Chicago",
"subnet": "3.208.0.0/12",
"timezone": "America/Chicago"
}
Since it’s way more efficient to use the MMDB file than the API, I built a cross-platform CLI tool for it: https://codeberg.org/hrbrmstr/geolocus-cli.
also with binary releases: https://codeberg.org/hrbrmstr/geolocus-cli/releases
Code is also available via Tangled Knot: https://tangled.sh/@hrbrmstr.dev/geolocus-cli
Usage:
# Download the latest Geolocus database
geolocus-cli download
# Look up IPs from a file
geolocus-cli lookup -i ips.txt -o results.json
# Process IPs from stdin and output to stdout
cat ips.txt | geolocus-cli lookup
# Output in CSV format
geolocus-cli lookup -i ips.txt -f csv -o results.csv
# Output in JSONL format (one JSON object per line)
geolocus-cli lookup -i ips.txt -f jsonl -o results.jsonl
# Disable session caching
geolocus-cli lookup -i ips.txt --no-cache
CLI options:
Commands:
download Download a fresh copy of the geolocus.mmdb database
lookup Lookup and enrich IP addresses from a file or stdin
Options:
-h, --help Show help information
-i, --input <file> Input file containing IP addresses (one per line)
-o, --output <file> Output file for results (defaults to stdout)
-f, --format <format> Output format: json, csv, or jsonl (default: json)
--no-cache Disable IP caching for the current session
Maine 2025 Ballot Questions Redux
If you want to or do vote “yes” for question 1, you are not a real American, you are not a real Christian (if you profess to be one), you are not a decent human. You are at the very least a classist; you are also very likely a racist/bigot, and you have zero ability to think critically or with evidence. You hate Americans serving in the military or in any type of foreign service. You also very likely don’t look in the mirror since if you did you’d likely slap yourself for what you believe.
If you want to or do vote “no” for question 2, you are anti-life (never, ever use the words “pro-life” to describe yourself if in my presence…it will end very badly for you), have no ability to use evidence to make decisions, and should never work in any profession that requires any level of decent judgement. Given your lack of mental acuity, your own firearms should be removed from your possession and you should likely be forced to take an annual driver’s test to ensure your mental acuity is up to snuff.
Decent people are for honest, free access to exercising their right to vote as an American citizen, and decent people are for sane gun regulations.
Now, excuse me while I go early voting to help ensure you continue top indeed be losers in life and also these initiatives.