Splunk中查询指定源/目的IP组合的防火墙日志语法咨询
正确的Splunk防火墙日志查询语法
嘿,你的问题出在逻辑运算符的优先级上!Splunk里AND的优先级比OR高,所以你原来的查询语句会被解析成:
index=firewall (src_ip=10.1.1.1) OR (src_ip=192.168.1.1 AND dest_ip=172.16.1.1)
这就意味着它会返回源IP是10.1.1.1(不管目的IP是什么),或者源IP是192.168.1.1且目的IP是172.16.1.1的日志,显然不符合你想要的结果。
要实现“源IP是10.1.1.1或192.168.1.1,且目的IP是172.16.1.1”的需求,你需要用括号明确分组OR条件,让Splunk先处理OR部分,再和AND条件结合。下面是两种实用的正确写法:
写法一:用括号分组OR条件
index=firewall (src_ip=10.1.1.1 OR src_ip=192.168.1.1) AND dest_ip=172.16.1.1
写法二:使用IN操作符简化源IP写法
如果后续还要添加更多源IP,用IN会更简洁,效果和上面的语句完全一致:
index=firewall src_ip IN ("10.1.1.1", "192.168.1.1") AND dest_ip=172.16.1.1
这两种写法都会准确筛选出符合你要求的防火墙日志,你可以试试其中任意一种~
内容的提问来源于stack exchange,提问作者user9013730
相关产品推荐
相关产品推荐

