Forum Discussion

Jason_19901's avatar
Jason_19901
Icon for Nimbostratus rankNimbostratus
Apr 05, 2011

iRule Help

I am trying to create an iRule to look at the URI and then based on IP address, either allow or deny. Any help would be great!

 

 

Thanks

 

5 Replies

  • Is this something like what you're looking to do?

     

     

    http://devcentral.f5.com/Community/GroupDetails/tabid/1082223/asg/52/aft/1178546/showtab/groupforums/Default.aspx
  • Sorry 'bout that. Teaches me to watch what window I'm in when cutting and pasting. Try this one:

     

     

    http://devcentral.f5.com/Community/GroupDetails/tabid/1082223/asg/50/aft/1178517/showtab/groupforums/Default.aspx

     

     

    The final iRule described here seems close. If this isn't it, let me know.
  • so that rule will be able to say...if coming from Remote IP, do not allow and if the IP is NOT REMOTE, allow...correct? what is the DEBUG for? what is the HTTP:PATH used for? sorry for the questions.....new to iRules
  • Yes, the example that Joel points you to is pretty close to what I understand that you need.

    It does implement Data Groups to allow for multiple IP Addresses, etc.

    Here is a static example. Perhaps you can combine pieces of the two to get exactly what you are needing.

    
    when HTTP_REQUEST {
       if { [[string tolower [HTTP::uri]] starts_with "/website/login.aspx" ] and [IP::addr [IP::client_addr] equals "192.168.1.10"] } {
           pool matching.pool.name
       }
       else {
           pool nonmatching.pool.name
       }
    }