Hi,

Willy Tarreau <[email protected]> wrote:
> Hi Maik,
> 
> On Tue, Jul 28, 2009 at 12:31:23AM +0200, Maik Broemme wrote:
> > Hi,
> > 
> > is it possible to set the listen address of HAProxy as an HTTP-Request
> > Header? For example if you have HAProxys running on multiple servers and
> > balance the requests to multiple backend servers, which have a NAT router
> > between HAProxys and backend servers, it would be very nice to have a
> > header like 'X-Forward-Via' or 'X-Forward-From'. Did someone know if
> > this is possible?
> 
> you have two possibilities :
> 
>   - you know each one of your haproxy servers, so you configure them
>     to simply add a Via header (using reqadd with their name). Eg:
> 
>          reqadd Via:\ haproxy1
> 

Well this isn't enough, because I need the ip address.

>   - you just want to forward the address the client connected to,
>     which should match the listen address when there's only one
>     listen address. Then you can enable "option originalto" which
>     you contributed, and get this IP address in the "x-original-to"
>     header.
> 

Well this would be enough, if I won't use HAProxy as transparent proxy.
On the system running HAProxy, I will redirect the connections to
HAProxy with iptables and HAProxy itself will forward them to a SQUID
farm. Between HAProxys and the SQUIDs are some NAT-Router. The SQUID
itself uses some proprietary extension which relies on the IP from which
the HTTP connection comes.

  - 'X-Forward-For' gives me the client address. (Client)
  - 'X-Original-To' gives me the original destination address. (Webserver)

If HAProxy is transparent between both, what gives me that address? :)

PS: I have contributed the 'X-Original-To' patch, but in that setup it
won't help me. It wouldn't be much work, so I can also contribute a
patch for it.

> Hoping this helps,
> Willy
> 

--Maik

Reply via email to