Forum Discussion
hooleylist
Aug 11, 2009Cirrostratus
You could either figure out which IP address ranges comcast uses, or you could depend on their reverse DNS records being valid for all client IP addresses. If you use the first option, you'd define a datagroup just like the stock AOL datagroup and check the IP::client_addr against that datagroup:
when HTTP_REQUEST {
if { [matchclass [IP::client_addr] equals $::DATA_GROUP_NAME] } {
pool pool1
} elseif { [matchclass [IP::client_addr] equals $::comcast_ips] } {
pool pool1
} else {
discard
}
}
Or you could try to do a reverse DNS lookup using the NAME:: commands:
NAME: These commands allow you to resolve names using the DNS subsystem configured on BIG-IP.
http://devcentral.f5.com/wiki/default.aspx/iRules/name
Try searching the iRules forum for NAME_RESOLVED for some examples. There is also an older Codeshare example which may still be relevant:
http://devcentral.f5.com/wiki/default.aspx/iRules/DestinationSnatUsingDNS.html
Aaron