PowerShell

Monitoring BlackLists with PowerShell module

I've been Exchange Administrator for a longer part of my IT life. As any mail admin (not just Microsoft Exchange) will tell you having your SMTP server on one of the blacklists is not fun. While generally useful DNSBL blacklists for normally functioning SMTP servers are pain. That's why it's advised to proactively monitor your IP addresses and see if/when they are blacklisted so you can react (either by changing your SMTP IP Address or by trying to remove the IP address from the blacklists). While there are many options on out there (my favorite MxToolbox.com included) I needed something more configurable and free. So here it is…

💡 Basic examples for PSBlackListChecker

Basic functionality of this module is ability to quickly verify if given IP address is on any of over 80 defined DNSBL lists. Below code will return results only if IP is on any of the lists.

Import-Module PSBlackListChecker.psm1

Search-BlackList -IP '89.25.253.1' -ReturnAll -SortBy IsListed -SortDescending $true | Format-Table -AutoSize

The results are as below:

💡 Monitoring blacklists (daily, hourly, weekly, monthly)

As mentioned earlier PSBlackListChecker has reporting functionality. You can set it up to send you reports on demand hourly, daily, weekly (this is rather Task Scheduler functionality then the module itself).

For more information, usage examples and details visit dedicated PSBlackListChecker dedicated to this module. 

This post was last modified on June 7, 2025 12:20

Przemyslaw Klys

System Architect with over 14 years of experience in the IT field. Skilled, among others, in Active Directory, Microsoft Exchange and Office 365. Profoundly interested in PowerShell. Software geek.

Share
Published by
Przemyslaw Klys

Recent Posts

Supercharging Your Network Diagnostics with Globalping for NET

Ever wondered how to run network diagnostics like Ping, Traceroute, or DNS queries from probes…

4 days ago

Automating Network Diagnostics with Globalping PowerShell Module

Are you tired of manually running network diagnostics like Ping, Traceroute, or DNS queries? The…

4 days ago

Enhanced Dashboards with PSWriteHTML – Introducing InfoCards and Density Options

Discover new features in the PSWriteHTML PowerShell module – including New-HTMLInfoCard, improved layout controls with…

1 week ago

Mastering Active Directory Hygiene: Automating SIDHistory Cleanup with CleanupMonster

Security Identifier (SID) History is a useful mechanism in Active Directory (AD) migrations. It allows…

1 week ago

Upgrade Azure Active Directory Connect fails with unexpected error

Today, I made the decision to upgrade my test environment and update the version of…

1 week ago

Mastering Active Directory Hygiene: Automating Stale Computer Cleanup with CleanupMonster

Have you ever looked at your Active Directory and wondered, "Why do I still have…

1 week ago