Splunk Search

eval case/cidrmatch using two fields as a condition

whitefang1726
Path Finder

How can I use cidrmatch or case using 2 conditions?

Example: I only want to get list of IPs where row_A is 11.0.0.0/24 and row_B is 8.8.8.0/24

Current Table:
row_A row_B
10.0.0.1 11.0.0.1
10.0.0.2 12.0.0.1
11.0.0.1 8.8.8.8
11.0.0.2 8.8.8.9
12.0.0.1 8.8.8.8
12.0.0.2 8.8.8.9

Target Result:
row_A row_B
11.0.0.1 8.8.8.8
11.0.0.2 8.8.8.9

Thanks!

Tags (2)
0 Karma

manjunathmeti
Champion

hi @whitefang1726,

Use where command like this:

| where cidrmatch("11.0.0.0/24", row_A) and cidrmatch("8.8.8.0/24", row_B)

Smaple query:

| makeresults 
| eval _raw=" row_A row_B
10.0.0.1 11.0.0.1
10.0.0.2 12.0.0.1
11.0.0.1 8.8.8.8
11.0.0.2 8.8.8.9
12.0.0.1 8.8.8.8
12.0.0.2 8.8.8.9" 
| multikv forceheader=1 
| where cidrmatch("11.0.0.0/24", row_A) and cidrmatch("8.8.8.0/24", row_B)
| fields - _raw, _time, linecount
0 Karma
Get Updates on the Splunk Community!

Prove Your Splunk Prowess at .conf25—No Prereqs Required!

Your Next Big Security Credential: No Prerequisites Needed We know you’ve got the skills, and now, earning the ...

Splunk Observability Cloud's AI Assistant in Action Series: Observability as Code

This is the sixth post in the Splunk Observability Cloud’s AI Assistant in Action series that digs into how to ...

Splunk Answers Content Calendar, July Edition I

Hello Community! Welcome to another month of Community Content Calendar series! For the month of July, we will ...