On Fri, 7 Mar 2025 at 21:32, Lukas Tribus <lu...@ltri.eu> wrote:
>
> On Fri, 7 Mar 2025 at 18:42, Aurelien DARRAGON <adarra...@haproxy.com> wrote:
> >
> > Looking at the code, and testing it for TCP servers it does seem to be
> > supported. To confirm I tried to use a "bad" source address, and it
> > fails as expected:
> >
> > > [ALERT]    (104635) : Cannot bind to source address before connect() for 
> > > backend mybaddns. Aborting.
>
> In this case for me it does not actually abort and haproxy goes into a
> busy loop over this bind().

To reproduce this busy loop with a 5 line config:

lukas@dev:~/haproxy$ cat ../cert/dns-source-bind-short.cfg
resolvers default
 nameserver ns1 tcp4@8.8.8.8:53 source 192.168.99.99
listen listen
 mode http
 bind :8080
 server s1 www.google.com resolvers default init-addr none

lukas@dev:~/haproxy$ ./haproxy -f ../cert/dns-source-bind-short.cfg ^C
[ALERT]    (5227) : Cannot bind to source address before connect() for
backend default. Aborting.
[ALERT]    (5227) : Cannot bind to source address before connect() for
backend default. Aborting.
[ALERT]    (5227) : Cannot bind to source address before connect() for
backend default. Aborting.
[ALERT]    (5227) : Cannot bind to source address before connect() for
backend default. Aborting.
[ALERT]    (5227) : Cannot bind to source address before connect() for
backend default. Aborting.
[ALERT]    (5227) : Cannot bind to source address before connect() for
backend default. Aborting.
^C


Lukas


Reply via email to