DNSBL Status Summary
{{ listedCount }}
Listings found across {{ totalChecks }} checks
Listed {{ listedCount }} Clear {{ clearCount }} Errors {{ errorCount }} Skipped {{ skippedCount }} {{ resolvedIpCount }} IPs {{ selectedListCount }} lists
Targets: {{ summaryTargets }}
Last run: {{ lastRunLocal }}
{{ selectedListCount }} / {{ catalogSize }} selected
Lists without IPv6 support are skipped when only IPv6 addresses are available.
Adds a second DNS query per listing to pull descriptive strings; disable when rate limits are tight.
Leave disabled when the hostname is IPv4-only to keep the run lean.
# Target DNSBL Status Return Evidence TTL Time (ms) Copy
{{ index + 1 }} {{ row.ip }} {{ row.listName }} {{ statusLabel(row.status) }} {{ row.response || '—' }} {{ row.evidence }} {{ row.ttl === null || typeof row.ttl === 'undefined' ? '—' : row.ttl }} {{ row.ms === null || typeof row.ms === 'undefined' ? '—' : row.ms }}
{{ resolvedIpCount }} IPs {{ selectedListCount }} DNSBLs {{ runMeta.resolution.errors.length }} resolution issue(s)

      
:

Introduction:

Email blocklists are shared lists of sending hosts and addresses that help mail systems filter unwanted traffic, and checking your own infrastructure can explain delivery issues and guide remediation. Results indicate whether a host or address appears on selected lists and show short reason text when available, so you can decide what to fix first.

You provide a mail host or an address and choose the lists to query, then the checker resolves the target and tests each list, returning a simple table and two charts that summarize outcomes and response times. A quick scan supports day to day monitoring and incident review without extra tooling or long setup.

A practical example is an operations review after bounce spikes from a new outbound server where a short run confirms a single listing and retrieves the reason text, so you can file a removal request and verify the change later. Be aware that each list has its own policy and cadence, so a clear status today can change tomorrow and evidence text may vary by provider.

For consistent comparisons, test at similar times of day, keep inputs stable, include both address families if your mail servers publish newer records, and repeat checks after any configuration change.

Technical Details:

The checker measures presence on common mail blocklists for one or more IP addresses resolved from a host. Outcomes are grouped into listed, clear, error, or skipped, and each lookup records elapsed time in milliseconds to help spot slow or failing resolvers.

Computation follows the standard query pattern used by DNS based lists. For IPv4 the octets are reversed before querying a list zone. For IPv6 the address is expanded to eight hextets, converted to nibbles, then reversed and queried. An A record indicates a listing. When enabled, TXT records are fetched to capture human readable evidence.

Interpretation is direct. Any returned address marks a listing. An explicit negative response is treated as clear. Transport or resolver failures surface as error. Lists that do not support the target address family are skipped. Summaries aggregate counts across all addresses and lists selected.

Comparability depends on selections and address family support. Some lists support both families while others only IPv4, so the IPv6 resolution option changes totals. Hostnames are resolved first to addresses, then each address is checked against each chosen zone.

  1. Parse the input as IPv4, IPv6, or hostname.
  2. If hostname, resolve to A records and optionally AAAA records.
  3. For each address and each selected list, build the reversed lookup name.
  4. Query A; mark listed on any returned address, else clear or error by status.
  5. When listed and evidence is enabled, query TXT and collect strings.
  6. Record TTL, elapsed time in milliseconds, and the resolver used.
  7. Aggregate counts for the table, outcomes chart, and latency chart.
Symbols and units
Symbol Meaning Unit/Datatype Source
t_ms Elapsed time per lookup ms, integer Derived from performance timer
TTL Time to live from first answer integer Returned by resolver
code Resolver status code integer Returned by resolver
Worked example. Input 203.0.113.45 and select three lists. If list A returns an address and TXT text the status is listed with evidence. If list B reports no records the status is clear. If list C times out the status is error. The summary shows one listing across three checks and a simple timing average. Values here are illustrative.
Status meanings and action cues
Status Interpretation Action Cue
Listed Target appears on the provider list; TXT may describe why. Review evidence, remediate, then request removal.
Clear No listing returned by the provider at query time. Recheck after changes or if complaints persist.
Error Resolver or transport failure prevented a decision. Retry later or switch resolver; inspect timeouts.
Skipped List does not support the target address family. Use IPv4, or enable IPv6 resolution when available.

DNSBL catalog in this build

Included lists and address family support
Name Zone IPv4 IPv6
Spamhaus ZENzen.spamhaus.orgyesyes
SpamCopbl.spamcop.netyesno
SORBSdnsbl.sorbs.netyesno
UCEPROTECT Level 1dnsbl-1.uceprotect.netyesno
PSBLpsbl.surriel.comyesno
SPAMRATSall.spamrats.comyesno
DroneBLdnsbl.dronebl.orgyesno
SPFBLdnsbl.spfbl.netyesyes
HostKarmahostkarma.junkemailfilter.comyesno
Invaluement ivmSIPivmSIP.invaluement.comyesno

You can select all, clear, or restore defaults. Lists that lack IPv6 support are automatically skipped when only IPv6 addresses are available.

Validation & bounds from the code

Inputs, patterns, and limits
Field Type Min Max Step/Pattern Error Text Placeholder
Host or IP string IPv4: ^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$ with octets 0–255; IPv6: compressed or eight hextets. Enter a hostname or IP address to check. / No usable IP addresses found for the provided input. mail.example.com or 203.0.113.45
DNSBL catalog multi select 0 10 Defaults preselect seven lists. Select at least one DNSBL before running the check. List names shown above
Fetch TXT evidence boolean Off queries only A; On also queries TXT on listings.
Resolve IPv6 (AAAA) boolean Adds AAAA resolution for hostnames.

Units and rounding: elapsed time is measured in whole milliseconds; TTL and resolver status codes are reported as returned; the decimal separator is a dot where present.

I/O overview
Input Accepted Families Output Encoding/Precision Rounding
Hostname or IP Hostname, IPv4, IPv6 Table, charts, JSON, CSV, DOCX JSON pretty print; CSV RFC style rows Time rounded to integer ms

Networking and storage: lookups are performed from the browser against public DNS over HTTPS endpoints with fallback between Cloudflare and Google. A and AAAA resolution uses a 5 000 ms timeout and list A or TXT queries use 6 000 ms. No application server stores your inputs.

Performance and complexity: for N addresses and M lists the check count is N × M. Charts render from aggregated results. Controls include copy and download for CSV or JSON and a DOCX report export.

Diagnostics and determinism: identical inputs typically yield identical outputs at a given moment, though list content and resolver behavior can change between runs. The summary includes a local timestamp for context.

Security considerations: evidence strings are treated as text. No credentials are used. Avoid pasting sensitive internal hostnames into third party resolvers unless permitted by policy.

Assumptions & limitations

  • Coverage is limited to the included catalog; custom lists are not loaded.
  • Evidence text is requested only when the option is enabled.
  • Heads‑up Lists without IPv6 support are skipped, affecting totals.
  • Only the first answer TTL is recorded for display.
  • Resolver choice and timeouts can influence status and timing.
  • Hostnames must resolve to usable addresses to proceed.
  • Charts require results; empty states disable downloads.
  • List policies differ; a clear result is not a global guarantee.

Edge cases & error sources

  • Malformed IPv4 with out of range octets is rejected.
  • Unusual IPv6 forms that do not match heuristics may be missed.
  • Resolver NXDOMAIN versus empty answer handling differs across providers.
  • Network blocks, captive portals, or proxies can cause timeouts.
  • TXT fetch disabled suppresses evidence collection.
  • Large selections increase latency linearly with list count.
  • Rapid repeat queries may hit provider throttling.
  • Temporary resolver issues can surface as error.
  • Changes between A and TXT queries can race results.
  • Local clock skew only affects the displayed timestamp.

Privacy & compliance

Requests are issued from your browser to public resolvers; the app does not persist inputs to a server. Use in line with organizational acceptable use and email policies.

Step‑by‑Step Guide

Blocklist status checks for mail hosts and addresses with shareable evidence.

  1. Enter a Host or IP in the input.
  2. Open Advanced to choose lists; keep defaults for a quick scan.
  3. Optionally enable Fetch TXT evidence and IPv6 resolution.
  4. Run the check and review the table, then switch to charts for summaries.
  5. Copy or download CSV or JSON, or export a DOCX report for ticketing.

Example: mail.example.com with defaults runs seven lists and reports any evidence text found.

FAQ

Is my data stored?

No application server stores inputs. Lookups are issued from your browser to public resolvers configured in the code.

How accurate is a listing?

Accuracy depends on each provider policy. Treat evidence as guidance and verify operational causes like open relays or misconfiguration.

What does “Skipped” mean?

The selected list does not support the target address family, so it is not queried for that target.

Which units are used?

Lookup time is in whole milliseconds. TTL and status codes are shown as reported by the resolver.

Can I use it offline?

No. Network access to the configured public resolvers is required.

Does it cost anything?

There is no pricing logic in the package. Usage of third party lists may be subject to their terms.

How do I check IPv6?

Enable the IPv6 resolution option in Advanced to add AAAA lookups for hostnames and include IPv6 capable lists in the run.

What does a borderline result mean?

Near zero listings across many checks usually indicate healthy sending. One list with a reason text suggests a targeted remediation and follow up run.

Troubleshooting

  • “Enter a hostname or IP address to check.” Add a valid target.
  • “Select at least one DNSBL” Choose one or restore defaults.
  • No results Verify the hostname resolves to at least one address.
  • Skipped rows The list lacks IPv6 support for IPv6 only targets.
  • High latency Rerun later or reduce selected lists.
  • Missing TXT Enable evidence fetching in Advanced.

Advanced Tips

  • Tip Use the same list selection across runs to keep trends comparable.
  • Tip Capture DOCX exports after changes to build a mitigation trail.
  • Tip Enable IPv6 only when your MTAs publish AAAA records to reduce noise.
  • Tip Use JSON output for automation in incident tickets and dashboards.
  • Tip Inspect per list latency to prefer faster resolvers during investigations.
  • Tip Restore defaults to a balanced set when experiments drift.

Glossary

Blocklist
A list of senders reported for abusive or unwanted mail.
Evidence (TXT)
Optional text returned by a provider explaining a listing.
TTL
A record lifetime value included in DNS answers.
Resolver
A service that answers queries for names and records.
Reverse label
Address rewritten for list lookup using octet or nibble reversal.
Outcome
Final status per list shown as listed, clear, error, or skipped.