家里Wi-Fi突然变慢,想查查是不是有设备在偷偷传数据?用网络分析工具时,面对满屏乱跳的数据包,根本找不到重点?其实只要学会设置过滤器,就能像用筛子一样,把关心的流量单独拎出来看。
为啥要设过滤器?
不设过滤器的话,你看到的是所有设备、所有应用的通信记录。比如你只想看看手机有没有连某个广告服务器,结果屏幕上全是路由器广播、电视心跳、智能灯泡上报数据,看得头大。加上过滤器,立马清爽。
常见过滤语法,记这几个就够用
大多数工具比如Wireshark、tcpdump都支持类似的表达式。比如只看某台设备的流量,先知道它的IP,比如手机是192.168.1.103:
ip.addr == 192.168.1.103
如果只想看网页浏览(HTTP)流量,可以写:
tcp.port == 80
要看手机访问了哪些域名,可以用:
dns.qry.name contains "ads"
组合条件更精准
想看手机访问的HTTPS网站?可以这样组合:
ip.addr == 192.168.1.103 && tcp.port == 443
中间的 && 表示“并且”。要是想看非视频流量,排除常见的视频端口:
!udp.port in {1935, 8088, 554}
实际场景:揪出偷跑流量的App
昨晚发现宽带用了10GB,可没人看视频?打开分析工具,加个过滤器:
ip.addr == 192.168.1.103 && frame.time_delta > 300
意思是:只看这台设备每间隔5分钟以上才通信一次的连接,结果发现一个叫"weather-service"的后台进程在不断上传数据,果断进手机设置里禁掉。
小贴士
刚上手别背复杂语句,先从ip.addr和端口号试起。点一下数据包,右键常有“作为过滤器应用”的选项,系统自动帮你生成规则,特别省事。多试几次,慢慢就熟了。