MacOS下Wireshark没有权限对网卡抓包

MacOS下Wireshark没有权限对网卡抓包_第1张图片

写在前面

在google上搜关键字:don't have permission to capture on that device,可以很容易找到答案。这里简单记录一下解决办法:

wireshare在抓包时需要通过BPF(Berkeley Packet Filter)访问数据链路层的数据,BPF是通过设备的方式提供,设备在目录/dev/bpf下。wireshark在抓包时会打开该设置,如果对该设置没有访问权限就会提示上面的错误。

解决办法

1.打开终端,查看当前运行的用户名,也可以在终端执行whoami查看,比如当前我的账户名为test
2.为当前用户设置pbf设备的访问权限:sudo chown test:admin /dev/bpf*
3.查看pbf设备是否均成功设置:ls -al /dev | grep bpf
4.重新运行wireshark

参考文献

[1]. http://www.qnx.com/developers/docs/qnxcar2/index.jsp?topic=%2Fcom.qnx.doc.core_networking.user_guide%2Ftopic%2Ffiltering_BPF.html
[2]. https://osqa-ask.wireshark.org/questions/578/mac-os-cant-detect-any-interface
[3]. https://stackoverflow.com/questions/41126943/wireshark-you-dont-have-permission-to-capture-on-that-device-mac

你可能感兴趣的:(MacOS下Wireshark没有权限对网卡抓包)