If I send a message from
postfixA -> smartHost postfixB -> smartHost postfixC -> exchange
and only postfixC does MX lookup and it is unable to deliver the message no matter if it is a hard bounce or soft bounce, what does it exactly do ?
Does it look at the header return path and send a message there ? Or does it use envelopeFrom information for it ?
By default, it doesn't let postfixB know in any way, right ? So that if I want to search through logs for what went wrong, I can do it in postfixC only.
You're right that the logs on the error will only be on the host that tried the unsuccessful delivery. (You could, of course, have all server send log messages via syslog to a common syslog host, but as long as you're only logging locally, only the host that does the delivery will have the logs.)