Re: Using multiple ip addresses to prevent ratelimits

... Unfortunately, you can t have instantaneous delivery to example.com when the receiver enforces rate limits. Of course my 60 second example is just an

Message 1 of 8
, Nov 26, 2008

0 Attachment

ram:

>
> On Tue, 2008-11-25 at 09:21 -0500, Wietse Venema wrote:
>
> > ram:
> > > Our clients set up their mail forwarding to blackberry servers
> > > The blackberry server is doing a ratelimit and mails get held up on our
> > > servers
> > >
> > > I can easily configure multiple IP addresses on the machine. Can I
> > > configure postfix to send using different bind addresses
> > >
> > > I know I can change the smtp_bind_address parameter through a script but
> > > that seems stupid having to restart postfix everytime
> > >
> > > Also we can never evenly spread out the mails thru different IPS
> >
> > There is an example in QSHAPE_README that implements delays with
> > a non-responding destination plus smtp_fallback_relay. This might
> > do the job for Postfix < 2.5.
> >
> > Postfix 2.5 has outbound rate limits per destination.
> >
> > http://www.postfix.org/postconf.5.html#default_destination_rate_delay
> >
> > You would use something like
> >
> > /etc/postfix/main.cf:
> > smtp_destination_rate_delay=60
> >
> > Or some other delay. This delay is enforced by the queue manager.
>
>
> Delay is not an option for me , because customers dont want their
> blackberry mails delayed :-(

Unfortunately, you can't have instantaneous delivery to example.com
when the receiver enforces rate limits. Of course my 60 second
example is just an example. You can reduce it to a number that is
more appropriate.

If you really believe that spreading out your source IP addresses
is a solution, consider implementing it with network address
translation.

On the MTA host, map the client IP address+port to an address-range
and port-range. Even if the NAT software uses sequential assignment
(which is a bad idea afer this year's DNS debacle) it would spread
your apparent source IP address over a range.

If you want to choose the transport name based on the content
or envelope attributes, use an access map or header/body_checks
map and FILTER actions.

/pattern1/ FILTER smtp1:
/pattern2/ FILTER smtp2:
..

Of course this delivers all mail via SMTP even if it should
be delivered locally.

Wietse

Your message has been successfully submitted and would be delivered to recipients shortly.