Marc Perkel wrote: > > > Bret Miller wrote: >> >> >> . >> >> OK... but the rules you supplied for SpamAssassin did exactly that-- >> they looked back at all the received headers and X-Original-IP and >> tested them against the lists. Add a -lastexternal to the set name to >> get only the last IP outside your network. >> >> Bret >> > > Not familiar with -lastexternal - can you give an example? > grep lastexternal 20_dnsbl_tests.cf
header RCVD_IN_SORBS_DUL eval:check_rbl('sorbs-lastexternal', 'dnsbl.sorbs.net.', '127.0.0.10') header RCVD_IN_XBL eval:check_rbl('zen-lastexternal', 'zen.spamhaus.org.', '127.0.0.[45678]') header RCVD_IN_PBL eval:check_rbl('zen-lastexternal', 'zen.spamhaus.org.', '127.0.0.1[01]') header RCVD_IN_WHOIS_INVALID eval:check_rbl('whois-lastexternal', 'combined-HIB.dnsiplists.completewhois.com.', '127.0.0.4') header RCVD_IN_DSBL eval:check_rbl_txt('dsbl-lastexternal', 'list.dsbl.org.', '(?i:dsbl)') header RCVD_IN_MAPS_DUL eval:check_rbl('dialup-lastexternal', 'dialups.mail-abuse.org.') #header RCVD_IN_MAPS_DUL eval:check_rbl('rblplus-lastexternal', 'rbl-plus.mail-abuse.org.', '2') Basically, SA takes a cue from the suffix appended to the "set name" of the RBL. There's a couple different suffixes you can use with different effects, but only lastexternal is documented in the man Mail::SpamAssassin::Conf page, so I'd not rely on the others sticking around. (SA also uses -firsttrusted, and -untrusted, and you can see them implemented in DNSEval.pm)