Hi Baptiste,

> when using "source x.x.x.x", haproxy will use the NIC which hosts the
> IP address x.x.x.x to try to reach the server.
> then your kernel will pick up the main IP address configured on the
> corresponding nic, that's why it works when you have one IP per NIC
> but it doesn't work when you have many aliases.


Are you sure about this? The documentation certainly suggests otherwise [1].
I think you are confusing it with the "interface" keyword.

The interface keyword sets SO_BINDTODEVICE, which does what you describe
above. The source keyword however calls bind() to set the local ip address,
according to the strace I did some time ago.

It don't see a reason why we need TPROXY support in the kernel, just to
set the outgoing ip address in Nerilaunt's scenario.



Regards,

Lukas


[1] 
http://cbonte.github.io/haproxy-dconv/configuration-1.5.html#source%20%28Alphabetically%20sorted%20keywords%20reference%29
                                    

Reply via email to