On 11.5.3, I tried a somewhat simplified version, and it works as I expect:
when CLIENT_ACCEPTED {
if { [IP::addr [IP::client_addr] equals "192.168.0.0/16"] or [IP::addr [IP::client_addr] equals "10.11.201.0/24"] } {
snat automap
log local0. " -- YES -- "
}
else {
log local0. " -- NO -- "
}
}
when applied to a "Performance (L4)" Virtual Server with no other alterations. I also tried it with a "Forwarding (IP)" Virtual Server with a VIP of 0.0.0.0/0. It works in that case, too.
You may consider adding a logging statement at the head of the rule to ensure that it is firing, and if so, add additional logging to capture the relevant values (e.g., [IP::client_addr]).