For more information regarding the security incident at F5, the actions we are taking to address it, and our ongoing efforts to protect our customers, click here.

Forum Discussion

mlick2's avatar
mlick2
Icon for Nimbostratus rankNimbostratus
Aug 07, 2007

Multiple iRules on virtual server

I have the following iRules applied to a virtual server. Both iRules work correctly when they are the only rule applied, there are also no problems if the monitor pool in iRule 1 is not up. However, when the monitor pool actually comes up and both iRules are applied, I get the following error message in my logs --

 

 

Aug 2 22:15:43 172.16.61.24 tmm[732]: 01220001:3: TCL error: Rule oracle_header_fixup_8000 - Operation not supported (line 2) invoked from within "HTTP::header replace Host "[HTTP::host]:8000""

 

 

~~~~~~~~~~~~~~~~~~~~~~~~~

 

1.

 

When the Monitor Pool is has >0 active members then

 

use that pool otherwise just fall through

 

 

when HTTP_REQUEST {

 

if {[active_members manual_disable] > 0}

 

{

 

if { not [matchclass [IP::remote_addr] equals $::internal_hosts_networks]}

 

{

 

HTTP::redirect "http://www.mysite.com/down/application_error.html"

 

}

 

}}

 

 

~~~~~~~~~~~~~~~~~~~~~~~~~~

 

2.

 

Fixup Host headers to report the "original" port

 

that they came in on.

 

 

when HTTP_REQUEST {

 

HTTP::header replace Host "[HTTP::host]:8000"

 

}

 

 

Any guidance will be greatly appreciated.

 

 

Thanks in advance,

 

Matt

1 Reply

  • Colin_Walker_12's avatar
    Colin_Walker_12
    Historic F5 Account
    Is there a reason that you don't want to combine these rules? Normally I recommend simplifying things as much as possible by putting like events together into a single rule. It makes the logic much easier to follow and helps prevent errors that stem from on rule processing before the other.

     

     

    Colin