IP Pool Management
IP pool provides multiple outbound IPs with automatic health checking and failover. When one IP is blocked or blacklisted, smtp-probe switches to the next healthy IP automatically.
Adding IPs to the Pool
# Add an IP with an optional reverse DNS domain
smtp-probe pool add 1.2.3.4 --domain mail-a.example.com
smtp-probe pool add 1.2.3.5 --domain mail-b.example.comListing Pool Status
smtp-probe pool listDisplays each IP with its status (healthy, blacklisted, timeout), last check time, and failure count.
Health Checks
Scan all IPs in the pool against RBL blacklists:
# Check all pool IPs
smtp-probe pool check
# Check a specific IP
smtp-probe pool check 1.2.3.4Automatic Failover
When using --pool with the verify command:
smtp-probe verify user@example.com --poolFailover behavior:
- Select the first healthy IP from the pool
- Attempt SMTP connection
- If the server returns
5xx(blocked/blacklisted), mark the IP asblacklisted - Retry with the next healthy IP
- Up to 3 retries before giving up
Removing an IP
smtp-probe pool remove 1.2.3.4Pool Persistence
The pool is stored at ~/.smtp-probe/pool.json and persists across restarts.
{
"ips": [
{"ip": "1.2.3.4", "domain": "mail-a.example.com", "status": "healthy"},
{"ip": "1.2.3.5", "domain": "mail-b.example.com", "status": "blacklisted"}
]
}