Splunk Search

How to exclude private ip address range from results?

damode
Motivator

How to modify the below query to exclude private ip address range from source IPs (src_ip) ?

index=cisco eventtype=cisco-firewall host="*" action="blocked" src_ip="*" dest_ip="*" src_port="*" dest_port="*" transport="*" service="*" | top src_ip
0 Karma
1 Solution

harsmarvania57
Ultra Champion

Hi @damode,

You can use CIDR block to exclude private IP ranges.

For IPv4 you can try below query, if your organization is using some other IP ranges in private network then you need to add those in your search as well.

index=cisco eventtype=cisco-firewall host="*" action="blocked" dest_ip="*" src_port="*" dest_port="*" transport="*" service="*" NOT (src_ip="10.0.0.0/8" OR src_ip="172.16.0.0/12" OR src_ip="192.168.0.0/16") 

View solution in original post

msquicc
Path Finder

Since Heff mentioned it, in order to validate private/public IPv4, I made myself an eval-based macro with the following:

case(
cidrmatch("10.0.0.0/8",$IP$),"False",
cidrmatch("172.16.0.0/12",$IP$),"False",
cidrmatch("192.168.0.0/16",$IP$),"False",
isnull($IP$) OR like($IP$,""), "False",
match($IP$,"^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$"),"True")



Then, I can use it in any query like:

| eval Remote_Address_isExternal = `isExternalIPv4(Remote_Address)`

 

The last line tests for a valid IPv4 address.  The best regex for validating IPV4 is an ever-evolving conversation on stack overflow.  So, I used the latest from there, but from this highest rated answer, not the accepted one: https://stackoverflow.com/a/36760050/6376311

 

0 Karma

harsmarvania57
Ultra Champion

Hi @damode,

You can use CIDR block to exclude private IP ranges.

For IPv4 you can try below query, if your organization is using some other IP ranges in private network then you need to add those in your search as well.

index=cisco eventtype=cisco-firewall host="*" action="blocked" dest_ip="*" src_port="*" dest_port="*" transport="*" service="*" NOT (src_ip="10.0.0.0/8" OR src_ip="172.16.0.0/12" OR src_ip="192.168.0.0/16") 

damode
Motivator

Thanks alot!

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

[Puzzles] Solve, Learn, Repeat: Character substitutions with Regular Expressions

This challenge was first posted on Slack #puzzles channelFor BORE at .conf23, we had a puzzle question which ...

Splunk Community Badges!

  Hey everyone! Ready to earn some serious bragging rights in the community? Along with our existing badges ...

[Puzzles] Solve, Learn, Repeat: Matching cron expressions

This puzzle (first published here) is based on matching timestamps to cron expressions.All the timestamps ...