Forum Discussion

Salvador_del_Re's avatar
Salvador_del_Re
Historic F5 Account
Feb 10, 2010

link controller balance url

I want to send traffic for each router depending of the url

 

for example if the url asked for client is www.f5.com go to router 1 if the url it's www.google.com go to router 2 and a long list of url for each router

 

 

I construct this iRule

 

 

when CLIENT_ACCEPTED {

 

TCP::collect 50

 

 

}

 

when CLIENT_DATA {

 

if {[matchclass [TCP::payload 50] contains $::servidores]}

 

{

 

pool router1_pool

 

 

 

}

 

else

 

{

 

log "not send"

 

}

 

TCP::release

 

 

The problem it's that the link controller not accept TCP::payload

 

 

Any ideas

2 Replies

  • Hi,

     

     

    I think LC is limited in iRule functionality and to layer 4 iRules. Do you get an error when trying to save that iRule? If so, what is the error?

     

     

    If you had layer 7 iRule functionality you could add an HTTP profile to the VIP and use HTTP::host to get the HTTP host header value.

     

     

    Can you use the destination IP address to make the load balancing selection instead? It's not ideal, but I think it's the closest option for your scenario.

     

     

     

    Aaron
  • Salvador_del_Re's avatar
    Salvador_del_Re
    Historic F5 Account
    Yes I have a error when write the irule [ltm_rule_L7 feature not licensed] [TCP::payload]

     

     

    I can't use the destination address because i don't know. If you want to go to www.google.com have many addresses and some dynamic url have in the customer.

     

    Ideas with NAME::lookup ?