Forum Discussion

rodrigo_Benzaqu's avatar
rodrigo_Benzaqu
Icon for Nimbostratus rankNimbostratus
Jun 06, 2005

Loosing IP from the client

Hi Guys, I have a rule that checks if the URL start with FD, and if it match, send the traffic to a specific pool.

 

 

rule FD_FETCH {

 

when HTTP_REQUEST {

 

if { [HTTP::uri] starts_with "/fd/" }

 

{

 

use pool FD_SERVERS

 

}

 

}

 

}

 

 

I´m doing that only to capture the IP of the client, but when I check it I see the Internal IP of the BigIP box.

 

 

Look my configuration from the virtual services:

 

 

virtual resto {

 

destination 172.16.0.77:http

 

ip protocol tcp

 

profile http oneconnect tcp

 

pool RESTO

 

rule FD_FETCH

 

}

 

 

What could cause to loose the IP of the client ?

 

 

Thanks

 

ROdrigo

4 Replies

  • That rule will not pass along the client IP. You can pass the client IP without a rule. If your servers don't mark the BigIP as the default router, then you'll need to destination nat the clients, and you will lose the client IP at layer 3, but you can pass it on in HTTP headers.
  • drteeth_127330's avatar
    drteeth_127330
    Historic F5 Account
    If you're trying to preserve the client IP in the connection to the back-end server, then be sure to set the oneconnect source mask to 255.255.255.255. This means that only connections originating from the same client IP will be reused. Of course, this greatly reduces the efficacy of OneConnect. If an HTTP header containing the original IP is sufficient, then you can enable the HTTP profile option for inserting an x-forwarded-for header instead. No iRule is required.
  • Thanks Guys for your help.

     

     

    I´ll create another virtual server don´t using oneconnect.