Forum Discussion
hooleylist
Dec 15, 2006Cirrostratus
Do you have rate shaping licensed? If so, check out this post for an example of how to set a rate class for specific requests (Click here)
Else, it should be fairly simple to send requests from one "class" of clients to a pool and send another set of clients to another pool.
The format for the rule would be:
check for first class of users
if { [HTTP::header some_header_name] contains "some string"]} {
log local0. "client [IP::client_addr] sent to best_pool"
pool best_pool
}
elseif { [HTTP::header some_header_name] contains "some other string"] }{
log local0. "client [IP::client_addr] sent to other_pool"
pool other_pool
}
else {
log local0. "client [IP::client_addr] sent to default_pool"
pool default_pool
}
The log statements will be written to /var/log/ltm.
This post has a good example for identifying spiders using a class (datagroup in the GUI): Click here
And this post has a good explanation of how to identify spiders by the User-agent header: (Click here)
Keep in mind though, that a malicious client can send any header name and value they want, so you may not want to trust the header names and values explicitly...
Aaron