When RBL is configured in Exchange Server and any message gets blocked, sender gets the bounce back response. This response can be customize to provide some vital information to sender like which IP blocked, why and where so it makes easier for them to go for further digging.
Exchange 2003:
It is explained in below couple of articles that how to configure RBL with custom error message to return.
- Exchange Server 2003 Real-Time Block Lists
- How to configure connection filtering to use Realtime Block Lists (RBLs) and how to configure recipient filtering in Exchange 2003
Default error RBL message is following in Exchange 2003:
<IP address> has been blocked by <Connection Filter Rule Name>
And we can set custom error message with below variables.
%0: IP address of the sending mail server
%1: Rule name of the connection filter
%2: The RBL provider
For example, if you want custom message to read:
The IP address <IP address> has been blocked by the following RBL provider <RBL provider name>
You would enter the following in the custom error message:
The IP address %0 has been blocked by the following RBL provider %2.
Exchange 2007:
It is explained in below article that how to configure IP block list provider with rejection response.
How to Configure IP Allow List and IP Block List Providers
But how to set custom inputs based on RBL response to the rejection response? Looks like it is not documented on TechNet. Well, here is the trick…
To configure custom rejection response we can use below variables.
{0}: IP address of the sending mail server
{1}: Rule name of the connection filter
{2}: The RBL provider
An Example:
Add-IPBlockListProvider -Name:SpamCom -LookupDomain:bl.spamcop.net -AnyMatch $True -RejectionResponse "IP address {0} has been blocked by the RBL provider {2} due to rule ({1}). Please check http://www.spamcop.net/w3m?action=checkblock&ip={0} for further detail."
Why I wrote this blog article?
Thanks to my friend Mike Crowley for raising hand on this



