Forum Discussion
scott_sams_8256
Nimbostratus
Oct 22, 2007mixed irule?
i am new to irules so forgive my ignorance.
we use a simple irule as follows. i want to do a redirect to a url on the else (public inbound traffic) during maintenance).
when CLIENT_ACCEPTED {
checks to see if client_addr = any in the class
if { [matchclass [IP::client_addr] equals $::private_net]} {
snat automap
use pool g_pool
} else {
snat none
use pool g_pool
}
}
i had looked at using http_redirect but that isnt valid under the client_accepted. is there another way to do this?
thanks,
scott
- hoolio
Cirrostratus
You can only use an HTTP:: command once the HTTP has been parsed. The HTTP hasn't been parsed in the CLIENT_CONNECTED event, so the HTTP::redirect command is invalid. You can issue a redirect in the HTTP_REQUEST event though (when LTM parses the HTTP headers in a request). If you only want to redirect the client during a maintenance window, you could use a separate rule:when HTTP_REQUEST { checks to see if client_addr = any in the class if { not ([matchclass [IP::client_addr] equals $::private_net])} { HTTP::redirect http://maintenance.example.com } }
when HTTP_REQUEST { checks to see if client_addr = any in the class if { [matchclass [IP::client_addr] equals $::private_net]} { snat automap use pool g_pool } else { HTTP::redirect http://maintenance.example.com snat none use pool g_pool } }
- scott_sams_8256
Nimbostratus
Thanks Aaron. I guess I can create a second irul (your second example) and just switch which irule we use during the window. That is what I was looking for I think. I guess now it makes me question what the CLIENT_ACCEPTED is used for. It appears to me there is no reason other than picking an irule type? - hoolio
Cirrostratus
That should work fine.
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects