Here is an easy solution which works perfectly to my expection.
Create 1 irules for each webserver
server1-rules
when DNS_REQUEST {
set pool4 "server1-pool-v4"
set pool6 "server1-pool-v6"
}
I already created generic-v6-irules
when DNS_REQUEST {
if {[DNS::rrtype] eq "A" and [active_members $pool4] > 0} {
pool $pool4
} elseif {[DNS::rrtype] eq "AAAA" and [active_members $pool6] > 0} {
pool $pool6
}
}
Then apply both server1-rules and generic-v6-irules to the wide IP.
(server1-rules needs to be in front of generic-v6-irules. so pool4 and pool6 are defined)