Forum Discussion
F5 iRule Geolocation restriction
- Apr 28, 2022
when FLOW_INIT { # # Drop everything except US # if { ! ([whereis [IP::client_addr] country] equals "US") } { log -noname local0. "Dropping connection from [IP::client_addr]/[whereis [IP::client_addr] state country continent ]" drop } }
AFM not required.
when FLOW_INIT {
#
# Drop everything except US
#
if { ! ([whereis [IP::client_addr] country] equals "US") } {
log -noname local0. "Dropping connection from [IP::client_addr]/[whereis [IP::client_addr] state country continent ]"
drop
}
}
AFM not required.
Hello David_Gill,
I tested the iRule which I mentioned early and it worked fine.
Is there any difference with the one which you mentioned?
- David_GillApr 29, 2022Cirrus
Functionally they do the same thing however ACL::action drop requires AFM whereas drop on its own does not which means the snippet works for a larger audience. Switch is generally used when making more than one comparison (as shown at https://clouddocs.f5.com/api/irules/ACL__action.html) which is why I used a single if statement. There is no need to define any variables either. That said, in both cases the end result is the same.
Recent Discussions
Related Content
* 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