James Seymour:
> Good Day,
>
> I'm trying to bring up a new machine that serves several purposes and
> have run into a potentially Very Big Problem.
>
> The machine has two physical interfaces, one LAN-facing and one
> Internet-facing. So, naturally, I have something like:
>
> Let's say 10.1.1.0 is the Internet-facing network and 192.168.1.0 is
> inside.
>
> inet_interfaces = 10.1.1.4, 192.168.1.1
>
> The machine has its "real" interface and additional virtual (or alias)
> interfaces on the outside:
>
> 10.1.1.2 hostname.example.com
> 10.1.1.3 ns1.example.com # alias/virtual
> 10.1.1.4 mx1.example.com # alias/virtual
>
> and so-on.
>
> The problem is: On outgoing connections to The World, via the 10.1.1...
> interface, SMTP clients, instead of binding to 10.1.1.4, are binding to
> 10.1.1.2, rather than 10.1.1.4.
I suggest that you use different smtp_bind_address settings in
master.cf for the (default) smtp transport and for the (inbound)
relay transport.
I don't think it is practical for Postfix to grope kernel routing
tables in order to choose the client IP address. There is no standard
API for doing such things.
Wietse