Mac OS X上使用Wireshark抓包(http://blog.csdn.net/phunxm/article/details/38590561)

Mac下安装Wireshark

/Applications/Wireshark.app/Contents/MacOS/Wireshark

root# export DISPLAY=:0.0

系统:OS X 10.9 Mavericks

Wireshark安装包:Wireshark 1.10.2 Intel 64_0.dmg
 
首先安装X11 (即XQuartz);
安装Wireshark.dmg;
 
报错:

The domain/default pair of (kCFPreferencesAnyApplication, AppleAquaColorVariant) does not exist

2013-10-28 23:04:03.650 defaults[4205:507]

The domain/default pair of (kCFPreferencesAnyApplication, AppleHighlightColor) does not exist

(process:4187): Gtk-WARNING **: Locale not supported by C library.

Using the fallback 'C' locale.

(wireshark-bin:4187): Gtk-WARNING **: cannot open display:

 
(注意以上最后一个提示)
 
切换到root账户;
执行以下命令:

root# export DISPLAY=:0.0

root# xhost +

root# xhost +localhost

root# xhost + localhost

root# hostname

shuiyouren.local

root# xhost + shuiyouren.local

root# export XAUTHORITY=/Users/[shuiyouren(你的用户主目录)]/.Xauthority

启动X11程序,然后以root账户运行Wireshark:

root# /Applications/Wireshark.app/Contents/MacOS/Wireshark

 
到此将运行Wireshark,如果失败,退出重新运行。

本文相关错误信息:(wireshark-bin:1336): Gtk-WARNING **: cannot open display: :0.0
将以上操作添加到profile文件方便以后运行。
注意点:一定要先运行X11,然后再通过命令行运行Wireshark!
建议:chmod g+rw /dev/bpf* (这样可以以普通用户运行,至于是否需要相关参数的配置自己再琢磨)
网上其它的方法尝试未果,原因不详,主要还是理解不深O(∩_∩)O哈!
 

Wireshark设置interface 时提示“There are no interfaces on which a capture can be done ”

 (http://blog.163.com/likaifeng@126/blog/static/32097310201271451655190/)
     今天在电脑上安装了WIRESHARK软件,在设置interface 时提示"There are no interfaces on which a capture can be done"  提示没有任何一个网络接口准备好。此提示明显是不对的, 我的网卡明明可以正常上网,网络接口怎么会没有准备好呢?  想着应该是和linux下的普通用户权限有关系。上网google了一下,找到了解决问题的方法, 现在整理下来, 以备后用。

 
  思路;即然问题与权限有关系 , 那么解决方法无法有两点, 一个就是直接使用root登陆,这样就可以有足够的权限运行任意程序了, 但显然是不安全的,另外一种方法是通过suid guid等办法给予普通用户执行wireshark的权限。这样相对来说比安全。
 
  第一种方法:使用root用户登陆
       xiaoshancun@xiaoshancun-VM500:~$ sudo wireshark 
  第二种方法: 通过guid形式使当前普通用户可以运行此程序。

root@xiaoshancun-VM500:~# groupadd  -g 130  wireshark

       #  新建一个名为wireshark的用户组, 130 是GID,此数字不是固定不变的, 请先查看/etc/group 文件查看最大的GID是多少,然后加1即可。
      root@xiaoshancun-VM500:~# usermod  -a -G wireshark  xiaoshancun  
      #  将当前用户 xiaoshancun 添加到wireshark组中。 使之成为新的组员。
     root@xiaoshancun-VM500:~# chgrp  wireshark   /usr/bin/dumpcap
     #  将/usr/bin/dumpcap  程序的属组更改为wireshark  。
      root@xiaoshancun-VM500:~# chmod  4750 /usr/bin/dumpcap
     修改 /usr/bin/dumpcap  的权限 更改为  4750  添加suid 权限 。 
      root@xiaoshancun-VM500:~# setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap 
      
     修改完成还不能直接使用,需要重新登陆一下才可以。需你不想重新登陆可以使用如下命令。
     root@xiaoshancun-VM500:~#  newgrp wireshark
   完屔后就可以使用普通用户执行wireshark 程序了。 
   

Mac下安装Wireshark,双击闪退的更多相关文章

  1. 关于tomcat下startup.bat双击闪退的问题

    背景:之前做单点登录,复制了几个tomcat,改了各自端口,当做不同服务器用. 今天无意间随便点击了一个tomcat下的startup.bat批处理文件,结果出来控制台,没出几行信息就闪退了.点击其他 ...

  2. MAC下安装与配置MySQL

    MAC下安装与配置MySQL   MAC下安装与配置MySQL 一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL ...

  3. Mac下安装UPnP Inspector

    由于工作中需要用到UPnP Inspector这个工具,而这个工具在windows下安装非常简单,在Mac下安装却很麻烦,在此记录安装流程. 这个工具依赖于两个其他的库:Coherence(一个DLN ...

  4. 在mac下安装jdk1.7(转)

    转自:http://vela.diandian.com/post/2012-01-06/15379924 最近呢,想玩玩jdk1.7,不过mac平台下的jvm一直都是Apple自己改的,所有有些麻烦. ...

  5. 配置apache,及mac下安装mysql

    先打开apache,在浏览器上输入  localhost     回车后会如果屏幕上显示:It works! 如下图: 这说明你的apache已开启 在window下配置apache: 1.找到apa ...

  6. mac下安装git,并将本地的项目上传到github

    mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...

  7. Mac 下安装运行Rocket.chat

    最近花了一周的时间,复习了HTML.CSS.原生JS,并学习了Node.js.CoffeeScript.js.MongoDB,入了下门. 因为准备在Rocket.chat 上做二次开发,所以先下载和安 ...

  8. Mac 下安装安卓 apk 文件

    Mac 下安装安卓 apk 文件 在windows上有比较多的第三方软件可以使用,双击就可以将apk文件安装到手机上. 在Mac 上要实现这样还是挺难得,目前还没有像Windows那样的第三方软件可以 ...

  9. centos下安装wireshark 抓包

    centos下安装wireshark相当简单.两条命令就够了.这里.主要是记录写使用方面的东西 安装:1.yum install wireshark.注意这样并无法使用wireshark命令和图形界面 ...

随机推荐

  1. 从.NET和Java之争谈IT这个行业[转]

    一.有些事情难以回头 开篇我得表名自己的立场:.NET JAVA同时使用者,但更加偏爱.NET.原因很简单 1.NET语言更具开放性,从开源协议和规范可以看出; 2.语言更具优势严谨; 3.开发工具V ...

  2. 便捷从使用git开始

    每次浏览网站上传代码,实在过于不便,为此我们引入git来管理我们的代码. 查看帮助手册是了解其的最佳路径,coding.net也不例外.通过浏览https://coding.net/help/,你会发 ...

  3. Python requests模块学习笔记

    目录 Requests模块说明 Requests模块安装 Requests模块简单入门 Requests示例 参考文档   1.Requests模块说明 Requests 是使用 Apache2 Li ...

  4. C#中的延迟加载

    什么是延迟加载?   延迟加载顾名思义就是:推迟加载的时机,当真正使用的时候才加载. 通常在创建一个大对象时,有些属性我们可以在使用到的时候才去创建(设置属性的值),这个可以有效的提升系统性能. 示例 ...

  5. JAVA CAS原理

    转自: http://blog.csdn.net/hsuxu/article/details/9467651 CAS CAS: Compare and Swap java.util.concurren ...

  6. 测试与log

    1 加载logback private static void loadloack() { LoggerContext lc = (LoggerContext) LoggerFactory.getIL ...

  7. input/select/textarea标签的readonly效果实现

    首先说一下readonly属性的应用场景 表单中,不能编辑对应的文本,但是仍然可以聚焦焦点 在提交表单的时候,该输入项会作为form的一项提交(目的) 这里要说一下disabled和readonly的 ...

  8. ios - 自动布局框架编写(更多功能完善中)

    之前用的storyboard以及xib挺多的,最近看到朋友用第三方框架---自动布局约束框架在添加控件约束的时候老实报错.后来自己就试了试纯代码创建以及约束控件.但是纯代码约束一个控件还可以,如果约束 ...

  9. TCP中异常关闭链接的意义 异常关闭的情况

    终止一个连接的正常方式是发送FIN. 在发送缓冲区中 所有排队数据都已发送之后才发送FIN,正常情况下没有任何数据丢失. 但我们有时也有可能发送一个RST报文段而不是F IN来中途关闭一个连接.这称为 ...

  10. 欧几里得算法:从证明等式gcd(m, n) = gcd(n, m mod n)对每一对正整数m, n都成立说开去

    写诗或者写程序的时候,我们经常要跟欧几里得算法打交道.然而有没要考虑到为什么欧几里得算法是有效且高效的,一些偏激(好吧,请允许我用这个带有浓重个人情感色彩的词汇)的计算机科学家认为,除非程序的正确性在 ...