Forum Discussion
VIP Client Logging "Not RFC1918"
- May 11, 2021
Thank you Alex for the response. I ended up going with this irule. Initially after applying the irule I was still logging the private networks. What I found is that I had to surround the private_net with quotes. After doing this I only saw public networks.
Now I need to send it to a remote syslog instead of logging local0. I just have to research how those lines of code will look like.
when HTTP_REQUEST { if { not ([class match [IP::client_addr] equals "private_net"])} { log local0. "clientIP:[IP::client_addr] accessed [HTTP::host][HTTP::uri]"} }
First of all, congrats on your first dip in the iRules pool! :)
A couple of suggestions;
- The bracket on line 4 should be a curly bracket } instead of a square bracket, this is the closing bracket for the one on line 1.
- The log statement should work the way you have it at the moment, and will log the client address, as well as the full URL.
- If you want to add the logic to only look for non-private IP's, you can add an "if" statement, similar to this one (the "private_net" is a data group that's already configured on the system with the private IP ranges in it);
when HTTP_REQUEST {
if { !([class match [IP::client_addr] equals private_net])} {
log local0. "clientIP:[IP::client_addr] accessed [HTTP::host][HTTP::uri]"
}
}
Hope this helps.
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