I have a setup that is slowly migrating away from MS Exchange. I've setup Zimbra on the front end accepting SMTP for "domain.com" and all is well. However, some departments are slower to migrate away from Exchange to Zimbra so I'd like to forward emails from "user@domain.com" to "user@exchange.domain.local".

I've setup a local zone file which resolves the MX and A records necessary for delivery to "domain.local". However, I get an error upon delivery to the Exchange server:

postfix/smtp[4780]: 38920141184DD: to=<user@exchange.domain.local>, relay=exchange.domain.local[192.168.12.2], delay=0, status=bounced (mail for exchange.domain.local loops back to myself)
I've tested delivery via telnet to "user@exchange.domain.local" mimicking the actual delivery and it succeeded. But when I attempt a legitimate delivery through Zimbra I get the error above.

~# host domain.local
domain.local has address 192.168.12.2
domain.local mail is handled by 10 exchange.domain.local.

~# host domain.com
domain.com has address 192.168.12.99
domain.com mail is handled by 10 mail.domain.com.
A command line test from Zimbra to Exchange:

~# telnet exchange.domain.local 25
Trying 192.168.12.2...
Connected to exchange.domain.local (192.168.12.2).
Escape character is '^]'.
220 mail.domain.com Microsoft ESMTP MAIL Service, Version: 6.0.3790.3959 ready at Sun, 28 Oct 2007 23:41:41 -0700
HELO mail.domain.com
250 mail.domain.com Hello [192.168.12.99]
MAIL FROM:<test@domain.com>
250 2.1.0 test@domain.com....Sender OK
RCPT TO:<user@exchange.domain.local>
250 2.1.5 user@exchange.domain.local
DATA
354 Start mail input; end with <CRLF>.<CRLF>
from: test@domain.com
to: user@domain.com
subject: test

test
test
.
250 2.6.0 <SERVERpFVjCRGryWtII00000003@mail.domain.com> Queued mail for delivery
... and the email message arrives correctly in user@exchange.domain.local's inbox on the Exchange server. I don't see where the mail loop is happening.