打开wireshark,会进入到Welcome页面。
那么我要抓哪个网卡呢?
-
localhost
/127.0.0.1
等本地服务
举个例子,如果我要请求http://localhost:12345/xxx
这个服务,对应的网卡就选择lo0
。127.0.0.1
的服务同理。 -
外网请求
比如,我要在浏览器访问 www.baidu.com/ 这个服务,对应的网卡一般选en0
。 -
如果还是不确定抓哪个?
可以用tcpdump
不设置网卡先抓一发,用关键词过滤出来请求后,再反向搜索对应的interface。sudo tcpdump -n -s1000 -A dst port 80 -i any |grep 'baidu.com' -C 10
tcpdump
-A表示以ASCII打印包数据,因为HTTP
是基于文本的协议,所以header
中的Host: www.baidu.com
可以被打印出来。我们用grep -C 10
打印出来了附近10行,就可以判断是IP 192.168.255.10
发出的请求,然后找到这个IP
对应的网卡就可以了。用
ifconfig
命令判断是utun2
网卡发出的请求:ifconfig |grep '192.168.255.10' -C 3
那在
wireshark
设置Capture Filter
就可以了。 选择页面上的utun2
网卡后,双击即可抓包啦。