Skip to content
frabsnetPublic

About

Check your IP addresses and ranges against the spam blocklists (SpamCop, UCEPROTECT, Spamhaus and more), with removal links. For hosting providers. By Frabs.net

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ListCheck

Check your IP addresses and ranges against the spam blocklists. Made by Frabs.net · Apache-2.0

ListCheck output: 127.0.0.2 listed on seven blocklists with removal links, three other addresses clean

ListCheck looks up every address you give it, including whole ranges, on the DNS blocklists mail servers use, and shows which addresses are listed, where, and where to ask for removal. It is made for hosting providers checking their own ranges, and works just as well for one mail server.

127.0.0.2 above is the test address every blocklist lists on purpose.

Install

A single static binary for Linux, macOS and Windows.

go install github.com/frabsnet/listcheck/cmd/listcheck@latest

or download a release from the releases page.

Usage

listcheck 203.0.113.25
listcheck 203.0.113.0/24 198.51.100.0/26
listcheck -f ranges.txt                  one address or range per line, # comments allowed
cat ranges.txt | listcheck -
listcheck -all -format csv -o report.csv 203.0.113.0/24
listcheck -format json 203.0.113.0/24
listcheck -lists                         show the blocklists

Exit status is 0 when nothing is listed, 1 when something is and 2 on an error, so it drops straight into cron or a monitoring check:

listcheck -f /etc/listcheck/ranges.txt || mail -s "IPs blocklisted" noc@example.com < /dev/null

Blocklists

Checked by default: SpamCop, UCEPROTECT levels 1, 2 and 3, PSBL, DroneBL, Mailspike and S5H.

Opt in to:

  • Spamhaus ZEN with -spamhaus. Spamhaus refuses queries that come through public resolvers such as 8.8.8.8 or 1.1.1.1, so use it with your own resolver (-resolver), or get a free Data Query Service key from Spamhaus and pass -dqs <key>, which works from anywhere.
  • Barracuda with -barracuda. It needs a resolver registered with Barracuda.

When a list refuses a query or does not answer, ListCheck says so instead of counting the address as clean.

Good to know

  • IPv4 only. Blocklists track IPv6 by other means.
  • Ranges above 4,096 addresses are refused unless you raise -max, so a typo cannot start a million lookups.
  • 32 lookups run at once by default (-workers). Be gentle with the free lists: they are run by volunteers.
  • A listing usually means mail or other traffic from that address hit the list's traps. Find and stop the cause first, or the address is listed again within hours.

ListCheck and Frabs

Most blocklistings on hosting networks start with one customer's VM sending spam or scanning. Frabs stops that traffic at the hypervisor before it gets your ranges listed.

Licence

Apache License 2.0. Copyright 2026 Frabs.

About

Check your IP addresses and ranges against the spam blocklists (SpamCop, UCEPROTECT, Spamhaus and more), with removal links. For hosting providers. By Frabs.net

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages