Rodre Ghorashi-Zadeh wrote:


first remove (or hold) the old mail or requeue it. then make sure the message passes via the smtpd where you added the check_mx_access call. As Noel said, use postmap to test your map, and if needed use -v to get more logs.



postmap outputs the correct mapping:

postmap -q 208.65.144.3 cidr:/etc/postfix/smarthost.cidr
FILTER smtp:mail.shawcable.com

Usually an ISP mail gateway should be enclosed in brackets to suppress the MX lookup (desktop mail software doesn't do MX lookups). I doubt this is the cause of your problems, but it is probably wise to future-proof your setup in case your ISP adds an MX record at some point.

ip.ad.dre.ss/xx  FILTER smtp:[mail.shawcable.com]



and the message passes through the smtpd with the check_recipient_mx_access 
call:


Aug 21 11:20:34 czhqma01 postfix/smtpd[10312]:>>> START Sender address RESTRICTIONS 
<<<
Aug 21 11:20:34 czhqma01 postfix/smtpd[10312]: generic_checks: 
name=check_recipient_mx_access
Aug 21 11:20:34 czhqma01 postfix/smtpd[10312]: generic_checks: 
name=check_recipient_mx_access status=0
Aug 21 11:20:34 czhqma01 postfix/smtpd[10312]:>>> END Sender address RESTRICTIONS 
<<<

but it doesn't seem to be picking up on it. What else can I try?

~Rod

At this point I think the only explanation is that the recipient MX didn't match what is in your table. It does appear that the lookup occurred, and no match was found.

One possibility is that your DNS is borked and not properly looking up MX records. Test with:
# dig example.com MX
where example.com is the recipient domain. Make sure the MX is listed in the output.

Adding a second -v to smtpd will increase the logging another notch and I think will show the data passed to the table, along with hundreds of other irrelevant lines.

--
Noel Jones

Reply via email to