[2024-04-16 16:44] "James J. Lippard" <lippard-opensm...@discord.org>
> I run dual-stack IPv6/IPv4 networks, including mail servers. On occasion
> I may not have IPv6 connectivity, but have IPv4 connectivity. When that
> happens, I find that my mail queue accumulates mail that arrives over
> IPv6, but cannot be sent out on an IPv6 interface.

Which IP version was used to enqueue a mail is indipendent from the
IP version used to relay a mail. Also for most cases dual stack just
works(tm) when using hostnames with A and AAAA records and use "listen on"
with interface name.

> (1) How to relay both IPv4/IPv6 outbound mail, regardless of whether it
> came to the mail server via IPv4 or IPv6?
> Is it possible to set up a relay action that works with either IPv6 or
> IPv4, perhaps with a preference for one or the other?  I've tried
> using "src <IPv4-addr>|<IPv6-addr>" on my relay action, but this
> results in "No valid route to destination" errors (apparently due to
> the name resolution on the smtp+tls:// URL returning the address from
> the family opposite the selected src interface?).
> I'd like inbound mail to come in via IPv4 or IPv6 and go out with a
> preference for IPv6 but still work with IPv4 if IPv6 is unavailable.

I don't understand what what exactly is the problem. Can you share your
config and a short explanation what you want to achive? Some logs
showing the problem could also help.

> (2) How to set up a secondary relay to use if a destination relay is
> unavailable?
> Is it possible to define multiple relay hosts in one action, or to
> specify that a second relay action is to occur in the event of failure
> of the first using match rules?

The host option of action relay takes a table. So you can simply specify
multible relay-urls with something like:

> { smtp+tls://hosta.example.com , smtp+tls://hostb.example.com }


Reply via email to