On Sat, Jun 18, 2022 at 06:44:55PM -0600, James Feeney wrote:

> Running postfix on Linux in a Network Namespace, and then running
> postfix sendmail from "outside" that Network Namespace, gives an
> error:
> 
> postfix/sendmail[606899]: fatal: parameter inet_interfaces: no local
> interface found for <network_namespace_interface_IP_address>

The common Postfix initialisation code that consumes main.cf and sets
the core parameter values also initialises "inet_interfaces".  Sure,
sendmail does not generally do much with this setting, but you could
then set "inet_interfaces = loopback-only" if nothing else suitable
is available.

> Obviously postfix sendmail is communicating with postfix running in
> the network namespace, but why is postfix sendmail then looking for an
> IP interface address "inside" the network namespace, instead of simply
> passing the message to postdrop, as shown in the diagram?

The sendmail(1) program runs into the issue while performing basic
common initialisation that, includes among other things, setting up
inet_interfaces.

> Is postfix sendmail actually running over network layer 3 IP?

No.  It is mostly just a wrapper around postdrop(1).  Though its
emulation of some other Sendmail features includes 

    - Starting postfix:  "sendmail -bd" or "sendmail -bl"
    - Receving SMTP messages: "sendmail -bs"

The first is implemented by executing "postfix start", so there's no
network use directly in sendmail(1) itself.

The second is implemented by executing "smtpd -S", so again there's
no network use directly in sendmail(1).

-- 
    Viktor.

Reply via email to